diff --git a/pkg/BUILD.bazel b/pkg/BUILD.bazel index ea54e0ef43bc..58f3966ebb2b 100644 --- a/pkg/BUILD.bazel +++ b/pkg/BUILD.bazel @@ -61,6 +61,7 @@ ALL_TESTS = [ "//pkg/ccl/logictestccl/tests/fakedist:fakedist_test", "//pkg/ccl/logictestccl/tests/local-legacy-schema-changer:local-legacy-schema-changer_test", "//pkg/ccl/logictestccl/tests/local-mixed-24.2:local-mixed-24_2_test", + "//pkg/ccl/logictestccl/tests/local-mixed-24.3:local-mixed-24_3_test", "//pkg/ccl/logictestccl/tests/local-read-committed:local-read-committed_test", "//pkg/ccl/logictestccl/tests/local-repeatable-read:local-repeatable-read_test", "//pkg/ccl/logictestccl/tests/local-vec-off:local-vec-off_test", @@ -486,6 +487,7 @@ ALL_TESTS = [ "//pkg/sql/logictest/tests/fakedist:fakedist_test", "//pkg/sql/logictest/tests/local-legacy-schema-changer:local-legacy-schema-changer_test", "//pkg/sql/logictest/tests/local-mixed-24.2:local-mixed-24_2_test", + "//pkg/sql/logictest/tests/local-mixed-24.3:local-mixed-24_3_test", "//pkg/sql/logictest/tests/local-vec-off:local-vec-off_test", "//pkg/sql/logictest/tests/local:local_test", "//pkg/sql/logictest/tests/multiregion-9node-3region-3azs:multiregion-9node-3region-3azs_test", @@ -503,6 +505,7 @@ ALL_TESTS = [ "//pkg/sql/opt/exec/execbuilder/tests/fakedist:fakedist_test", "//pkg/sql/opt/exec/execbuilder/tests/local-legacy-schema-changer:local-legacy-schema-changer_test", "//pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.2:local-mixed-24_2_test", + "//pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.3:local-mixed-24_3_test", "//pkg/sql/opt/exec/execbuilder/tests/local-vec-off:local-vec-off_test", "//pkg/sql/opt/exec/execbuilder/tests/local:local_test", "//pkg/sql/opt/exec/execbuilder:execbuilder_test", @@ -605,6 +608,7 @@ ALL_TESTS = [ "//pkg/sql/sqlitelogictest/tests/fakedist:fakedist_test", "//pkg/sql/sqlitelogictest/tests/local-legacy-schema-changer:local-legacy-schema-changer_test", "//pkg/sql/sqlitelogictest/tests/local-mixed-24.2:local-mixed-24_2_test", + "//pkg/sql/sqlitelogictest/tests/local-mixed-24.3:local-mixed-24_3_test", "//pkg/sql/sqlitelogictest/tests/local-read-committed:local-read-committed_test", "//pkg/sql/sqlitelogictest/tests/local-repeatable-read:local-repeatable-read_test", "//pkg/sql/sqlitelogictest/tests/local-vec-off:local-vec-off_test", @@ -931,6 +935,7 @@ GO_TARGETS = [ "//pkg/ccl/logictestccl/tests/fakedist:fakedist_test", "//pkg/ccl/logictestccl/tests/local-legacy-schema-changer:local-legacy-schema-changer_test", "//pkg/ccl/logictestccl/tests/local-mixed-24.2:local-mixed-24_2_test", + "//pkg/ccl/logictestccl/tests/local-mixed-24.3:local-mixed-24_3_test", "//pkg/ccl/logictestccl/tests/local-read-committed:local-read-committed_test", "//pkg/ccl/logictestccl/tests/local-repeatable-read:local-repeatable-read_test", "//pkg/ccl/logictestccl/tests/local-vec-off:local-vec-off_test", @@ -1962,6 +1967,7 @@ GO_TARGETS = [ "//pkg/sql/logictest/tests/fakedist:fakedist_test", "//pkg/sql/logictest/tests/local-legacy-schema-changer:local-legacy-schema-changer_test", "//pkg/sql/logictest/tests/local-mixed-24.2:local-mixed-24_2_test", + "//pkg/sql/logictest/tests/local-mixed-24.3:local-mixed-24_3_test", "//pkg/sql/logictest/tests/local-vec-off:local-vec-off_test", "//pkg/sql/logictest/tests/local:local_test", "//pkg/sql/logictest/tests/multiregion-9node-3region-3azs:multiregion-9node-3region-3azs_test", @@ -1988,6 +1994,7 @@ GO_TARGETS = [ "//pkg/sql/opt/exec/execbuilder/tests/fakedist:fakedist_test", "//pkg/sql/opt/exec/execbuilder/tests/local-legacy-schema-changer:local-legacy-schema-changer_test", "//pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.2:local-mixed-24_2_test", + "//pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.3:local-mixed-24_3_test", "//pkg/sql/opt/exec/execbuilder/tests/local-vec-off:local-vec-off_test", "//pkg/sql/opt/exec/execbuilder/tests/local:local_test", "//pkg/sql/opt/exec/execbuilder:execbuilder", @@ -2237,6 +2244,7 @@ GO_TARGETS = [ "//pkg/sql/sqlitelogictest/tests/fakedist:fakedist_test", "//pkg/sql/sqlitelogictest/tests/local-legacy-schema-changer:local-legacy-schema-changer_test", "//pkg/sql/sqlitelogictest/tests/local-mixed-24.2:local-mixed-24_2_test", + "//pkg/sql/sqlitelogictest/tests/local-mixed-24.3:local-mixed-24_3_test", "//pkg/sql/sqlitelogictest/tests/local-read-committed:local-read-committed_test", "//pkg/sql/sqlitelogictest/tests/local-repeatable-read:local-repeatable-read_test", "//pkg/sql/sqlitelogictest/tests/local-vec-off:local-vec-off_test", diff --git a/pkg/ccl/backupccl/backup_processor.go b/pkg/ccl/backupccl/backup_processor.go index d55b454b41f5..97a3a8420817 100644 --- a/pkg/ccl/backupccl/backup_processor.go +++ b/pkg/ccl/backupccl/backup_processor.go @@ -682,7 +682,6 @@ func runBackupProcessor( // on-disk anywhere yet. metadata: backuppb.BackupManifest_File{ Span: file.Span, - Path: file.Path, EntryCounts: entryCounts, LocalityKV: destLocalityKV, ApproximatePhysicalSize: uint64(len(file.SST)), diff --git a/pkg/ccl/ldapccl/authorization_ldap_test.go b/pkg/ccl/ldapccl/authorization_ldap_test.go index 8bf97e92171e..df66d8d45c66 100644 --- a/pkg/ccl/ldapccl/authorization_ldap_test.go +++ b/pkg/ccl/ldapccl/authorization_ldap_test.go @@ -237,8 +237,8 @@ func TestLDAPRolesAreGranted(t *testing.T) { require.True(t, foundSession) // Add a group that does not have a corresponding CRDB role, and verify that - // the user cannot login. + // the user can still login via partial groups mapping. mockLDAP.SetGroups("cn=foo", []string{"cn=foo_parent_2", "cn=nonexistent_role"}) _, err = fooDB.Conn(ctx) - require.ErrorContains(t, err, "LDAP authorization: error assigning roles to user foo: EnsureUserOnlyBelongsToRoles-grant: role/user \"nonexistent_role\" does not exist") + require.NoError(t, err) } diff --git a/pkg/ccl/logictestccl/tests/local-mixed-24.3/BUILD.bazel b/pkg/ccl/logictestccl/tests/local-mixed-24.3/BUILD.bazel new file mode 100644 index 000000000000..1ffe8472c60a --- /dev/null +++ b/pkg/ccl/logictestccl/tests/local-mixed-24.3/BUILD.bazel @@ -0,0 +1,28 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_test") + +go_test( + name = "local-mixed-24_3_test", + size = "enormous", + srcs = ["generated_test.go"], + data = [ + "//c-deps:libgeos", # keep + "//pkg/ccl/logictestccl:testdata", # keep + ], + exec_properties = {"test.Pool": "large"}, + shard_count = 31, + tags = ["cpu:1"], + deps = [ + "//pkg/base", + "//pkg/build/bazel", + "//pkg/ccl", + "//pkg/security/securityassets", + "//pkg/security/securitytest", + "//pkg/server", + "//pkg/sql/logictest", + "//pkg/testutils/serverutils", + "//pkg/testutils/skip", + "//pkg/testutils/testcluster", + "//pkg/util/leaktest", + "//pkg/util/randutil", + ], +) diff --git a/pkg/ccl/logictestccl/tests/local-mixed-24.3/generated_test.go b/pkg/ccl/logictestccl/tests/local-mixed-24.3/generated_test.go new file mode 100644 index 000000000000..1cfb52269633 --- /dev/null +++ b/pkg/ccl/logictestccl/tests/local-mixed-24.3/generated_test.go @@ -0,0 +1,293 @@ +// Copyright 2022 The Cockroach Authors. +// +// Use of this software is governed by the CockroachDB Software License +// included in the /LICENSE file. + +// Code generated by generate-logictest, DO NOT EDIT. + +package testlocal_mixed_243 + +import ( + "os" + "path/filepath" + "testing" + + "github.com/cockroachdb/cockroach/pkg/base" + "github.com/cockroachdb/cockroach/pkg/build/bazel" + "github.com/cockroachdb/cockroach/pkg/ccl" + "github.com/cockroachdb/cockroach/pkg/security/securityassets" + "github.com/cockroachdb/cockroach/pkg/security/securitytest" + "github.com/cockroachdb/cockroach/pkg/server" + "github.com/cockroachdb/cockroach/pkg/sql/logictest" + "github.com/cockroachdb/cockroach/pkg/testutils/serverutils" + "github.com/cockroachdb/cockroach/pkg/testutils/skip" + "github.com/cockroachdb/cockroach/pkg/testutils/testcluster" + "github.com/cockroachdb/cockroach/pkg/util/leaktest" + "github.com/cockroachdb/cockroach/pkg/util/randutil" +) + +const configIdx = 21 + +var cclLogicTestDir string + +func init() { + if bazel.BuiltWithBazel() { + var err error + cclLogicTestDir, err = bazel.Runfile("pkg/ccl/logictestccl/testdata/logic_test") + if err != nil { + panic(err) + } + } else { + cclLogicTestDir = "../../../../ccl/logictestccl/testdata/logic_test" + } +} + +func TestMain(m *testing.M) { + defer ccl.TestingEnableEnterprise()() + securityassets.SetLoader(securitytest.EmbeddedAssets) + randutil.SeedForTests() + serverutils.InitTestServerFactory(server.TestServerFactory) + serverutils.InitTestClusterFactory(testcluster.TestClusterFactory) + + defer serverutils.TestingSetDefaultTenantSelectionOverride( + base.TestIsForStuffThatShouldWorkWithSecondaryTenantsButDoesntYet(76378), + )() + + os.Exit(m.Run()) +} + +func runCCLLogicTest(t *testing.T, file string) { + skip.UnderDeadlock(t, "times out and/or hangs") + logictest.RunLogicTest(t, logictest.TestServerArgs{}, configIdx, filepath.Join(cclLogicTestDir, file)) +} + +// TestLogic_tmp runs any tests that are prefixed with "_", in which a dedicated +// test is not generated for. This allows developers to create and run temporary +// test files that are not checked into the repository, without repeatedly +// regenerating and reverting changes to this file, generated_test.go. +// +// TODO(mgartner): Add file filtering so that individual files can be run, +// instead of all files with the "_" prefix. +func TestLogic_tmp(t *testing.T) { + defer leaktest.AfterTest(t)() + var glob string + glob = filepath.Join(cclLogicTestDir, "_*") + logictest.RunLogicTests(t, logictest.TestServerArgs{}, configIdx, glob) +} + +func TestCCLLogic_fips_ready( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "fips_ready") +} + +func TestCCLLogic_fk_read_committed( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "fk_read_committed") +} + +func TestCCLLogic_hash_sharded_index_read_committed( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "hash_sharded_index_read_committed") +} + +func TestCCLLogic_nested_routines( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "nested_routines") +} + +func TestCCLLogic_new_schema_changer( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "new_schema_changer") +} + +func TestCCLLogic_partitioning_enum( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "partitioning_enum") +} + +func TestCCLLogic_pgcrypto_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "pgcrypto_builtins") +} + +func TestCCLLogic_plpgsql_assign( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "plpgsql_assign") +} + +func TestCCLLogic_plpgsql_block( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "plpgsql_block") +} + +func TestCCLLogic_plpgsql_call( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "plpgsql_call") +} + +func TestCCLLogic_plpgsql_cursor( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "plpgsql_cursor") +} + +func TestCCLLogic_plpgsql_into( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "plpgsql_into") +} + +func TestCCLLogic_plpgsql_record( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "plpgsql_record") +} + +func TestCCLLogic_plpgsql_txn( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "plpgsql_txn") +} + +func TestCCLLogic_plpgsql_unsupported( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "plpgsql_unsupported") +} + +func TestCCLLogic_procedure_params( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "procedure_params") +} + +func TestCCLLogic_procedure_plpgsql( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "procedure_plpgsql") +} + +func TestCCLLogic_read_committed( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "read_committed") +} + +func TestCCLLogic_redact_descriptor( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "redact_descriptor") +} + +func TestCCLLogic_refcursor( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "refcursor") +} + +func TestCCLLogic_schema_change_in_txn( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "schema_change_in_txn") +} + +func TestCCLLogic_select_for_update_read_committed( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "select_for_update_read_committed") +} + +func TestCCLLogic_show_create( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "show_create") +} + +func TestCCLLogic_subject( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "subject") +} + +func TestCCLLogic_triggers( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "triggers") +} + +func TestCCLLogic_udf_params( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "udf_params") +} + +func TestCCLLogic_udf_plpgsql( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "udf_plpgsql") +} + +func TestCCLLogic_udf_rewrite( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "udf_rewrite") +} + +func TestCCLLogic_udf_volatility_check( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "udf_volatility_check") +} + +func TestCCLLogic_unique_read_committed( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "unique_read_committed") +} + +func TestCCLLogic_vector( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runCCLLogicTest(t, "vector") +} diff --git a/pkg/ccl/testccl/authccl/testdata/ldap b/pkg/ccl/testccl/authccl/testdata/ldap index 5d5c0a42ff77..8ed9d1df12cf 100644 --- a/pkg/ccl/testccl/authccl/testdata/ldap +++ b/pkg/ccl/testccl/authccl/testdata/ldap @@ -329,3 +329,54 @@ SELECT pg_has_role('ldap_user', 'ldap.user.parent.2', 'MEMBER') false subtest end + +subtest partial_ldap_groups_map + +set_hba +host all ldap_user 127.0.0.1/32 ldap ldapserver=localhost ldapport=636 ldapbasedn="O=security org,DC=localhost" ldapbinddn="CN=service_account,O=security org,DC=localhost" ldapbindpasswd=ldap_pwd ldapsearchattribute=sAMAccountName ldapsearchfilter="(memberOf=*)" "ldapgrouplistfilter=(cn=*)" +---- +# Active authentication configuration on this node: +# Original configuration: +# loopback all all all trust # built-in CockroachDB default +# host all root all cert-password # CockroachDB mandatory rule +# host all ldap_user 127.0.0.1/32 ldap ldapserver=localhost ldapport=636 ldapbasedn="O=security org,DC=localhost" ldapbinddn="CN=service_account,O=security org,DC=localhost" ldapbindpasswd=ldap_pwd ldapsearchattribute=sAMAccountName ldapsearchfilter="(memberOf=*)" "ldapgrouplistfilter=(cn=*)" +# +# Interpreted configuration: +# TYPE DATABASE USER ADDRESS METHOD OPTIONS +loopback all all all trust +host all root all cert-password +host all ldap_user 127.0.0.1/32 ldap ldapserver=localhost ldapport=636 "ldapbasedn=O=security org,DC=localhost" "ldapbinddn=CN=service_account,O=security org,DC=localhost" ldapbindpasswd=ldap_pwd ldapsearchattribute=sAMAccountName "ldapsearchfilter=(memberOf=*)" "ldapgrouplistfilter=(cn=*)" + +sql +CREATE ROLE "ldap-parent-synced"; +---- +ok + +ldap_mock set_groups=(ldap_user,cn=ldap-parent-synced,cn=ldap-parent-unsynced) +---- + +connect user=ldap_user password="ldap_pwd" +---- +ok defaultdb + +query_row +SELECT pg_has_role('ldap_user', 'ldap-parent-synced', 'MEMBER') +---- +true + +query_row +SELECT 1 FROM pg_roles WHERE rolname='ldap-parent-synced' +---- +1 + +query_row +SELECT 1 FROM pg_roles WHERE rolname='ldap-parent-unsynced' +---- +ERROR: no rows in result set + +query_row +SELECT pg_has_role('ldap_user', 'ldap-parent-unsynced', 'MEMBER') +---- +ERROR: pg_has_role(): role 'ldap-parent-unsynced' does not exist (SQLSTATE 42704) + +subtest end diff --git a/pkg/cli/zip_tenant_test.go b/pkg/cli/zip_tenant_test.go index 408561304aca..d15b1d32affd 100644 --- a/pkg/cli/zip_tenant_test.go +++ b/pkg/cli/zip_tenant_test.go @@ -26,6 +26,7 @@ func TestTenantZip(t *testing.T) { defer log.Scope(t).Close(t) skip.UnderRace(t, "test too slow under race") + skip.UnderDeadlock(t, "this test takes cpu profiles") tenants := []struct { testName string diff --git a/pkg/cloud/external_storage.go b/pkg/cloud/external_storage.go index f726d80fe063..bae20674f731 100644 --- a/pkg/cloud/external_storage.go +++ b/pkg/cloud/external_storage.go @@ -128,6 +128,10 @@ type SQLConnI interface { // ErrFileDoesNotExist is a sentinel error for indicating that a specified // bucket/object/key/file (depending on storage terminology) does not exist. // This error is raised by the ReadFile method. +// +// On GCS, a non-existent bucket returns a 403 forbidden, so a not found is +// only returned if the bucket exists and the user has the permissions needed +// to interact with the bucket. var ErrFileDoesNotExist = errors.New("external_storage: file doesn't exist") // ErrListingUnsupported is a marker for indicating listing is unsupported. diff --git a/pkg/cloud/gcp/gcs_storage_test.go b/pkg/cloud/gcp/gcs_storage_test.go index e1454f9ee816..0d0e9bc42d7a 100644 --- a/pkg/cloud/gcp/gcs_storage_test.go +++ b/pkg/cloud/gcp/gcs_storage_test.go @@ -25,7 +25,6 @@ import ( "github.com/cockroachdb/cockroach/pkg/testutils/skip" "github.com/cockroachdb/cockroach/pkg/util/ioctx" "github.com/cockroachdb/cockroach/pkg/util/leaktest" - "github.com/cockroachdb/errors" "github.com/stretchr/testify/require" "golang.org/x/oauth2/google" ) @@ -327,8 +326,8 @@ func TestAntagonisticGCSRead(t *testing.T) { cloudtestutils.CheckAntagonisticRead(t, conf, testSettings) } -// TestFileDoesNotExist ensures that the ReadFile method of google cloud storage -// returns a sentinel error when the `Bucket` or `Object` being read do not +// TestFileDoesNotExist ensures that the ReadFile method of google cloud +// storage returns a sentinel error when the `Object` being read does not // exist. func TestFileDoesNotExist(t *testing.T) { defer leaktest.AfterTest(t)() @@ -341,41 +340,20 @@ func TestFileDoesNotExist(t *testing.T) { testSettings := cluster.MakeTestingClusterSettings() - { - // Invalid gsFile. - gsFile := "gs://cockroach-fixtures-us-east1/tpch-csv/sf-1/invalid_region.tbl?AUTH=implicit" - conf, err := cloud.ExternalStorageConfFromURI(gsFile, user) - require.NoError(t, err) - - s, err := cloud.MakeExternalStorage(context.Background(), conf, base.ExternalIODirConfig{}, testSettings, - nil, /* blobClientFactory */ - nil, /* db */ - nil, /* limiters */ - cloud.NilMetrics, - ) - require.NoError(t, err) - _, _, err = s.ReadFile(context.Background(), "", cloud.ReadOptions{NoFileSize: true}) - require.Error(t, err, "") - require.True(t, errors.Is(err, cloud.ErrFileDoesNotExist)) - } - - { - // Invalid gsBucket. - gsFile := "gs://cockroach-fixtures-us-east1-invalid/tpch-csv/sf-1/region.tbl?AUTH=implicit" - conf, err := cloud.ExternalStorageConfFromURI(gsFile, user) - require.NoError(t, err) + // Invalid gsFile. + gsFile := "gs://cockroach-fixtures-us-east1/tpch-csv/sf-1/invalid_region.tbl?AUTH=implicit" + conf, err := cloud.ExternalStorageConfFromURI(gsFile, user) + require.NoError(t, err) - s, err := cloud.MakeExternalStorage(context.Background(), conf, base.ExternalIODirConfig{}, testSettings, - nil, /* blobClientFactory */ - nil, /* db */ - nil, /* limiters */ - cloud.NilMetrics, - ) - require.NoError(t, err) - _, _, err = s.ReadFile(context.Background(), "", cloud.ReadOptions{NoFileSize: true}) - require.Error(t, err, "") - require.True(t, errors.Is(err, cloud.ErrFileDoesNotExist)) - } + s, err := cloud.MakeExternalStorage(context.Background(), conf, base.ExternalIODirConfig{}, testSettings, + nil, /* blobClientFactory */ + nil, /* db */ + nil, /* limiters */ + cloud.NilMetrics, + ) + require.NoError(t, err) + _, _, err = s.ReadFile(context.Background(), "", cloud.ReadOptions{NoFileSize: true}) + require.ErrorIs(t, err, cloud.ErrFileDoesNotExist) } func TestCompressedGCS(t *testing.T) { diff --git a/pkg/kv/kvpb/api.proto b/pkg/kv/kvpb/api.proto index 7a8a773a61fd..33abc2c0b5fc 100644 --- a/pkg/kv/kvpb/api.proto +++ b/pkg/kv/kvpb/api.proto @@ -1954,7 +1954,7 @@ message ExportResponse { (gogoproto.nullable) = false, (gogoproto.customname) = "EndKeyTS" ]; - string path = 2; + reserved 2; BulkOpSummary exported = 6 [(gogoproto.nullable) = false]; diff --git a/pkg/kv/kvserver/batcheval/cmd_export_test.go b/pkg/kv/kvserver/batcheval/cmd_export_test.go index 358084bda7ad..59b4cb364d65 100644 --- a/pkg/kv/kvserver/batcheval/cmd_export_test.go +++ b/pkg/kv/kvserver/batcheval/cmd_export_test.go @@ -76,16 +76,16 @@ func TestExportCmd(t *testing.T) { exportAndSlurpOne := func( t *testing.T, start hlc.Timestamp, mvccFilter kvpb.MVCCFilter, maxResponseSSTBytes int64, - ) ([]string, []storage.MVCCKeyValue, kvpb.ResponseHeader) { + ) (int, []storage.MVCCKeyValue, kvpb.ResponseHeader) { res, pErr := export(t, start, mvccFilter, maxResponseSSTBytes) if pErr != nil { t.Fatalf("%+v", pErr) } - var paths []string + var files int var kvs []storage.MVCCKeyValue for _, file := range res.(*kvpb.ExportResponse).Files { - paths = append(paths, file.Path) + files++ iterOpts := storage.IterOptions{ KeyTypes: storage.IterKeyTypePointsOnly, LowerBound: keys.LocalMax, @@ -116,13 +116,13 @@ func TestExportCmd(t *testing.T) { } } - return paths, kvs, res.(*kvpb.ExportResponse).Header() + return files, kvs, res.(*kvpb.ExportResponse).Header() } type ExportAndSlurpResult struct { end hlc.Timestamp - mvccLatestFiles []string + mvccLatestFiles int mvccLatestKVs []storage.MVCCKeyValue - mvccAllFiles []string + mvccAllFiles int mvccAllKVs []storage.MVCCKeyValue mvccLatestResponseHeader kvpb.ResponseHeader mvccAllResponseHeader kvpb.ResponseHeader @@ -143,9 +143,9 @@ func TestExportCmd(t *testing.T) { mvccLatestFilesLen int, mvccLatestKVsLen int, mvccAllFilesLen int, mvccAllKVsLen int, ) { t.Helper() - require.Len(t, res.mvccLatestFiles, mvccLatestFilesLen, "unexpected files in latest export") + require.Equal(t, res.mvccLatestFiles, mvccLatestFilesLen, "unexpected files in latest export") require.Len(t, res.mvccLatestKVs, mvccLatestKVsLen, "unexpected kvs in latest export") - require.Len(t, res.mvccAllFiles, mvccAllFilesLen, "unexpected files in all export") + require.Equal(t, res.mvccAllFiles, mvccAllFilesLen, "unexpected files in all export") require.Len(t, res.mvccAllKVs, mvccAllKVsLen, "unexpected kvs in all export") } diff --git a/pkg/rpc/auth.go b/pkg/rpc/auth.go index 57013a180214..12835623b960 100644 --- a/pkg/rpc/auth.go +++ b/pkg/rpc/auth.go @@ -324,11 +324,7 @@ func (a kvAuth) authenticateNetworkRequest(ctx context.Context) (authnResult, er "root and node roles do not have valid DNs set which subject_required cluster setting mandates", ) } - certUserScope, err := security.GetCertificateUserScope(clientCert) - if err != nil { - return nil, err - } - if err := checkRootOrNodeInScope(certUserScope, a.tenant.tenantID); err != nil { + if err := checkRootOrNodeInScope(clientCert, a.tenant.tenantID); err != nil { return nil, err } } @@ -394,21 +390,28 @@ func (a kvAuth) selectAuthzMethod( // checkRootOrNodeInScope checks that the root or node principals are // present in the cert user scopes. -func checkRootOrNodeInScope( - certUserScope []security.CertificateUserScope, serverTenantID roachpb.TenantID, -) error { - for _, scope := range certUserScope { +func checkRootOrNodeInScope(clientCert *x509.Certificate, serverTenantID roachpb.TenantID) error { + containsFn := func(scope security.CertificateUserScope) bool { // Only consider global scopes or scopes that match this server. if !(scope.Global || scope.TenantID == serverTenantID) { - continue + return false } // If we get a scope that matches the Node user, immediately return. if scope.Username == username.NodeUser || scope.Username == username.RootUser { - return nil + return true } - } + return false + } + ok, err := security.CertificateUserScopeContainsFunc(clientCert, containsFn) + if ok || err != nil { + return err + } + certUserScope, err := security.GetCertificateUserScope(clientCert) + if err != nil { + return err + } return authErrorf( "need root or node client cert to perform RPCs on this server (this is tenant %v; cert is valid for %s)", serverTenantID, security.FormatUserScopes(certUserScope)) diff --git a/pkg/rpc/auth_test.go b/pkg/rpc/auth_test.go index 7352b2f3d495..b3d90548e946 100644 --- a/pkg/rpc/auth_test.go +++ b/pkg/rpc/auth_test.go @@ -256,10 +256,14 @@ func TestAuthenticateTenant(t *testing.T) { ctx = metadata.NewIncomingContext(ctx, md) } - clusterSettings := map[settings.InternalKey]settings.EncodedValue{ - security.ClientCertSubjectRequiredSettingName: {Value: strconv.FormatBool(tc.subjectRequired), Type: "b"}, - } - tenID, err := rpc.TestingAuthenticateTenant(ctx, tc.systemID, clusterSettings) + sv := &settings.Values{} + sv.Init(ctx, settings.TestOpaque) + u := settings.NewUpdater(sv) + err = u.Set(ctx, security.ClientCertSubjectRequiredSettingName, + settings.EncodedValue{Value: strconv.FormatBool(tc.subjectRequired), Type: "b"}) + require.NoError(t, err) + + tenID, err := rpc.TestingAuthenticateTenant(ctx, tc.systemID, sv) if tc.expErr == "" { require.Equal(t, tc.expTenID, tenID) @@ -274,6 +278,76 @@ func TestAuthenticateTenant(t *testing.T) { } } +func BenchmarkAuthenticate(b *testing.B) { + correctOU := []string{security.TenantsOU} + stid := roachpb.SystemTenantID + for _, tc := range []struct { + name string + systemID roachpb.TenantID + ous []string + commonName string + rootDNString string + nodeDNString string + }{ + // Success case with a tenant certificate. + {name: "tenTen", systemID: stid, ous: correctOU, commonName: "10"}, + // Success cases with root or node DN. + {name: "rootDN", systemID: stid, ous: nil, commonName: "foo", rootDNString: "CN=foo"}, + {name: "nodeDN", systemID: stid, ous: nil, commonName: "foo", nodeDNString: "CN=foo"}, + // Success cases that fallback to the global scope. + {name: "commonRoot", systemID: stid, ous: nil, commonName: "root"}, + {name: "commonNode", systemID: stid, ous: nil, commonName: "node"}, + } { + b.Run(tc.name, func(b *testing.B) { + var err error + if tc.rootDNString != "" { + err = security.SetRootSubject(tc.rootDNString) + if err != nil { + b.Fatalf("could not set root subject DN, err: %v", err) + } + } + if tc.nodeDNString != "" { + err = security.SetNodeSubject(tc.nodeDNString) + if err != nil { + b.Fatalf("could not set node subject DN, err: %v", err) + } + } + defer func() { + security.UnsetRootSubject() + security.UnsetNodeSubject() + }() + + cert := &x509.Certificate{ + Subject: pkix.Name{ + CommonName: tc.commonName, + OrganizationalUnit: tc.ous, + }, + } + cert.RawSubject, err = asn1.Marshal(cert.Subject.ToRDNSequence()) + if err != nil { + b.Fatalf("unable to marshal rdn sequence to raw subject, err: %v", err) + } + tlsInfo := credentials.TLSInfo{ + State: tls.ConnectionState{ + PeerCertificates: []*x509.Certificate{cert}, + }, + } + p := peer.Peer{AuthInfo: tlsInfo} + ctx := peer.NewContext(context.Background(), &p) + sv := &settings.Values{} + sv.Init(ctx, settings.TestOpaque) + + b.ResetTimer() + for i := 0; i < b.N; i++ { + _, err := rpc.TestingAuthenticateTenant(ctx, tc.systemID, sv) + if err != nil { + b.Fatal(err) + } + } + }) + } +} + func prefix(tenID uint64, key string) string { tenPrefix := keys.MakeTenantPrefix(roachpb.MustMakeTenantID(tenID)) return string(append(tenPrefix, []byte(key)...)) diff --git a/pkg/rpc/helpers_test.go b/pkg/rpc/helpers_test.go index 2ef1e0035cdd..0069890fa404 100644 --- a/pkg/rpc/helpers_test.go +++ b/pkg/rpc/helpers_test.go @@ -34,21 +34,9 @@ func TestingNewWrappedServerStream( // TestingAuthenticateTenant performs authentication of a tenant from a context // for testing. func TestingAuthenticateTenant( - ctx context.Context, - serverTenantID roachpb.TenantID, - clusterSettings map[settings.InternalKey]settings.EncodedValue, + ctx context.Context, serverTenantID roachpb.TenantID, sv *settings.Values, ) (roachpb.TenantID, error) { - sv := &settings.Values{} - sv.Init(ctx, settings.TestOpaque) - u := settings.NewUpdater(sv) - kvAuthObject := kvAuth{sv: sv, tenant: tenantAuthorizer{tenantID: serverTenantID}} - for setting := range clusterSettings { - err := u.Set(ctx, setting, clusterSettings[setting]) - if err != nil { - return roachpb.TenantID{}, err - } - } _, authz, err := kvAuthObject.authenticateAndSelectAuthzRule(ctx) if err != nil { return roachpb.TenantID{}, err diff --git a/pkg/security/auth.go b/pkg/security/auth.go index 1bc69b39b47f..ba3e97516721 100644 --- a/pkg/security/auth.go +++ b/pkg/security/auth.go @@ -189,15 +189,6 @@ func transformPrincipal(commonName string) string { return mappedName } -func getCertificatePrincipals(cert *x509.Certificate) []string { - results := make([]string, 0, 1+len(cert.DNSNames)) - results = append(results, transformPrincipal(cert.Subject.CommonName)) - for _, name := range cert.DNSNames { - results = append(results, transformPrincipal(name)) - } - return results -} - // GetCertificateUserScope extracts the certificate scopes from a client // certificate. It tries to get CRDB prefixed SAN URIs and extracts tenantID and // user information. If there is no such URI, then it gets principal transformed @@ -205,42 +196,82 @@ func getCertificatePrincipals(cert *x509.Certificate) []string { func GetCertificateUserScope( peerCert *x509.Certificate, ) (userScopes []CertificateUserScope, _ error) { + collectFn := func(userScope CertificateUserScope) (halt bool, err error) { + userScopes = append(userScopes, userScope) + return false, nil + } + err := forEachCertificateUserScope(peerCert, collectFn) + return userScopes, err +} + +// CertificateUserScopeContainsFunc returns true if the given function returns +// true for any of the scopes in the client certificate. +func CertificateUserScopeContainsFunc( + peerCert *x509.Certificate, fn func(CertificateUserScope) bool, +) (ok bool, _ error) { + res := false + containsFn := func(userScope CertificateUserScope) (halt bool, err error) { + if fn(userScope) { + res = true + return true, nil + } + return false, nil + } + err := forEachCertificateUserScope(peerCert, containsFn) + return res, err +} + +func forEachCertificateUserScope( + peerCert *x509.Certificate, fn func(userScope CertificateUserScope) (halt bool, err error), +) error { + hasCRDBSANURI := false for _, uri := range peerCert.URIs { - if isCRDBSANURI(uri) { - var scope CertificateUserScope - if isTenantNameSANURI(uri) { - tenantName, user, err := parseTenantNameURISAN(uri) - if err != nil { - return nil, err - } - scope = CertificateUserScope{ - Username: user, - TenantName: tenantName, - } - } else { - tenantID, user, err := parseTenantURISAN(uri) - if err != nil { - return nil, err - } - scope = CertificateUserScope{ - Username: user, - TenantID: tenantID, - } + if !isCRDBSANURI(uri) { + continue + } + hasCRDBSANURI = true + var scope CertificateUserScope + if isTenantNameSANURI(uri) { + tenantName, user, err := parseTenantNameURISAN(uri) + if err != nil { + return err } - userScopes = append(userScopes, scope) + scope = CertificateUserScope{ + Username: user, + TenantName: tenantName, + } + } else { + tenantID, user, err := parseTenantURISAN(uri) + if err != nil { + return err + } + scope = CertificateUserScope{ + Username: user, + TenantID: tenantID, + } + } + if halt, err := fn(scope); halt || err != nil { + return err } } - if len(userScopes) == 0 { - users := getCertificatePrincipals(peerCert) - for _, user := range users { - scope := CertificateUserScope{ + if !hasCRDBSANURI { + globalScope := func(user string) CertificateUserScope { + return CertificateUserScope{ Username: user, Global: true, } - userScopes = append(userScopes, scope) + } + halt, err := fn(globalScope(transformPrincipal(peerCert.Subject.CommonName))) + if halt || err != nil { + return err + } + for _, name := range peerCert.DNSNames { + if halt, err := fn(globalScope(transformPrincipal(name))); halt || err != nil { + return err + } } } - return userScopes, nil + return nil } // Contains returns true if the specified string is present in the given slice. diff --git a/pkg/sql/authorization.go b/pkg/sql/authorization.go index 367aa31a8f65..c12be52b389c 100644 --- a/pkg/sql/authorization.go +++ b/pkg/sql/authorization.go @@ -758,10 +758,12 @@ func EnsureUserOnlyBelongsToRoles( grantStmt := strings.Builder{} grantStmt.WriteString("GRANT ") for i, role := range rolesToGrant { - if i > 0 { - grantStmt.WriteString(", ") + if roleExists, _ := RoleExists(ctx, txn, role); roleExists { + if i > 0 { + grantStmt.WriteString(", ") + } + grantStmt.WriteString(role.SQLIdentifier()) } - grantStmt.WriteString(role.SQLIdentifier()) } grantStmt.WriteString(" TO ") grantStmt.WriteString(user.SQLIdentifier()) diff --git a/pkg/sql/catalog/bootstrap/BUILD.bazel b/pkg/sql/catalog/bootstrap/BUILD.bazel index a88f9f487835..a68611d4b1ff 100644 --- a/pkg/sql/catalog/bootstrap/BUILD.bazel +++ b/pkg/sql/catalog/bootstrap/BUILD.bazel @@ -16,6 +16,10 @@ go_library( "data/24_2_system.sha256", "data/24_2_tenant.keys", "data/24_2_tenant.sha256", + "data/24_3_system.keys", + "data/24_3_system.sha256", + "data/24_3_tenant.keys", + "data/24_3_tenant.sha256", ], importpath = "github.com/cockroachdb/cockroach/pkg/sql/catalog/bootstrap", visibility = ["//visibility:public"], diff --git a/pkg/sql/catalog/bootstrap/data/24_3_system.keys b/pkg/sql/catalog/bootstrap/data/24_3_system.keys new file mode 100644 index 000000000000..009e20d93390 --- /dev/null +++ b/pkg/sql/catalog/bootstrap/data/24_3_system.keys @@ -0,0 +1,197 @@ +[{"key":"8b"} +,{"key":"8b89898a89","value":"0312450a0673797374656d10011a250a0d0a0561646d696e1080101880100a0c0a04726f6f7410801018801012046e6f646518032200280140004a006a0808181003180020007000"} +,{"key":"8b898b8a89","value":"030a94030a0a64657363726970746f721803200128013a0042270a02696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a64657363726970746f7210021a0c08081000180030005011600020013000680070007800800100880100980100480352710a077072696d61727910011801220269642a0a64657363726970746f72300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b201130a077072696d61727910001a02696420012800b201240a1066616d5f325f64657363726970746f7210021a0a64657363726970746f7220022802b80103c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b898c8a89","value":"030acd050a0575736572731804200128013a00422d0a08757365726e616d6510011a0c0807100018003000501960002000300068007000780080010088010098010042330a0e68617368656450617373776f726410021a0c0808100018003000501160002001300068007000780080010088010098010042320a066973526f6c6510031a0c08001000180030005010600020002a0566616c73653000680070007800800100880100980100422c0a07757365725f696410041a0c080c100018003000501a60002000300068007000780080010088010098010048055290010a077072696d617279100118012208757365726e616d652a0e68617368656450617373776f72642a066973526f6c652a07757365725f6964300140004a10080010001a00200028003000380040005a007002700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a740a1175736572735f757365725f69645f696478100218012207757365725f69643004380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201240a077072696d61727910001a08757365726e616d651a07757365725f6964200120042804b2012c0a1466616d5f325f68617368656450617373776f726410021a0e68617368656450617373776f726420022802b2011c0a0c66616d5f335f6973526f6c6510031a066973526f6c6520032803b80104c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b898d8a89","value":"030a83030a057a6f6e65731805200128013a0042270a02696410011a0c08011040180030005014600020003000680070007800800100880100980100422b0a06636f6e66696710021a0c080810001800300050116000200130006800700078008001008801009801004803526d0a077072696d61727910011801220269642a06636f6e666967300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201130a077072696d61727910001a02696420012800b2011c0a0c66616d5f325f636f6e66696710021a06636f6e66696720022802b80103c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b898e8a89","value":"030ac2040a0873657474696e67731806200128013a0042290a046e616d6510011a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510021a0c0807100018003000501960002000300068007000780080010088010098010042440a0b6c6173745570646174656410031a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422e0a0976616c75655479706510041a0c080710001800300050196000200130006800700078008001008801009801004805528a010a077072696d6172791001180122046e616d652a0576616c75652a0b6c617374557064617465642a0976616c756554797065300140004a10080010001a00200028003000380040005a007002700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201590a2666616d5f305f6e616d655f76616c75655f6c617374557064617465645f76616c75655479706510001a046e616d651a0576616c75651a0b6c617374557064617465641a0976616c75655479706520012002200320042800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b898f8a89","value":"030adf020a1164657363726970746f725f69645f7365711807200128013a00422a0a0576616c756510011a0c08011040180030005014600020003000680070007800800100880100980100480052660a077072696d61727910011800220576616c7565300140004a10080010001a00200028003000380040005a007a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060006a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800100880103980100b201160a077072696d61727910001a0576616c756520012801b80100c20100e2011e0801100118ffffffffffffffff7f20012800320408001000380142004800e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880300a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89908a89","value":"030afe060a0774656e616e74731808200128013a0042270a02696410011a0c0801104018003000501460002000300068007000780080010088010098010042310a0661637469766510021a0c08001000180030005010600020002a0474727565300168007000780080010088010098010042290a04696e666f10031a0c0808100018003000501160002001300068007000780080010088010098010042290a046e616d6510041a0c08071000180030005019600020013000680070007800800100880100980100422f0a0a646174615f737461746510051a0c0801104018003000501460002001300068007000780080010088010098010042310a0c736572766963655f6d6f646510061a0c080110401800300050146000200130006800700078008001008801009801004807529b010a077072696d61727910011801220269642a066163746976652a04696e666f2a046e616d652a0a646174615f73746174652a0c736572766963655f6d6f6465300140004a10080010001a00200028003000380040005a00700270037004700570067a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a700a1074656e616e74735f6e616d655f6964781002180122046e616d653004380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a80010a1874656e616e74735f736572766963655f6d6f64655f69647810031800220c736572766963655f6d6f64653006380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060046a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b2014b0a077072696d61727910001a0269641a066163746976651a04696e666f1a046e616d651a0a646174615f73746174651a0c736572766963655f6d6f64652001200220032004200520062800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89918a89","value":"030aba030a0f726567696f6e5f6c6976656e6573731809200128013a0042300a0b637264625f726567696f6e10011a0c0808100018003000501160002000300068007000780080010088010098010042340a0e756e617661696c61626c655f617410021a0d080510001800300050da086000200130006800700078008001008801009801004803528b010a14726567696f6e5f6c6976656e6573735f706b657910011801220b637264625f726567696f6e2a0e756e617661696c61626c655f6174300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2012e0a077072696d61727910001a0b637264625f726567696f6e1a0e756e617661696c61626c655f6174200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89938a89","value":"030a80050a056c65617365180b200128013a00422c0a07646573635f696410011a0c08011040180030005014600020003000680070007800800100880100980100422c0a0776657273696f6e10021a0c0801104018003000501460002000300068007000780080010088010098010042340a0f73716c5f696e7374616e63655f696410031a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a73657373696f6e5f696410041a0c0808100018003000501160002000300068007000780080010088010098010042300a0b637264625f726567696f6e10051a0c08081000180030005011600020003000680070007800800100880100980100480652a9010a077072696d61727910031801220b637264625f726567696f6e2207646573635f6964220776657273696f6e220a73657373696f6e5f69642a0f73716c5f696e7374616e63655f6964300530013002300440004000400040004a10080010001a00200028003000380040005a0070037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060046a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201530a077072696d61727910001a07646573635f69641a0776657273696f6e1a0f73716c5f696e7374616e63655f69641a0a73657373696f6e5f69641a0b637264625f726567696f6e200120022003200420052803b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89948a89","value":"030a93060a086576656e746c6f67180c200128013a00422f0a0974696d657374616d7010011a0d080510001800300050da08600020003000680070007800800100880100980100422e0a096576656e745479706510021a0c08071000180030005019600020003000680070007800800100880100980100422d0a08746172676574494410031a0c0801104018003000501460002000300068007000780080010088010098010042300a0b7265706f7274696e67494410041a0c0801104018003000501460002000300068007000780080010088010098010042290a04696e666f10051a0c0807100018003000501960002001300068007000780080010088010098010042380a08756e69717565494410061a0c08081000180030005011600020002a09757569645f763428293000680070007800800100880100980100480752a8010a077072696d61727910011801220974696d657374616d702208756e6971756549442a096576656e74547970652a0874617267657449442a0b7265706f7274696e6749442a04696e666f30013006400040004a10080010001a00200028003000380040005a0070027003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201260a077072696d61727910001a0974696d657374616d701a08756e697175654944200120062800b201220a0f66616d5f325f6576656e745479706510021a096576656e745479706520022802b201200a0e66616d5f335f746172676574494410031a08746172676574494420032803b201260a1166616d5f345f7265706f7274696e67494410041a0b7265706f7274696e67494420042804b201180a0a66616d5f355f696e666f10051a04696e666f20052805b80106c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89958a89","value":"030af2060a0872616e67656c6f67180d200128013a00422f0a0974696d657374616d7010011a0d080510001800300050da08600020003000680070007800800100880100980100422c0a0772616e6765494410021a0c08011040180030005014600020003000680070007800800100880100980100422c0a0773746f7265494410031a0c08011040180030005014600020003000680070007800800100880100980100422e0a096576656e745479706510041a0c0807100018003000501960002000300068007000780080010088010098010042310a0c6f7468657252616e6765494410051a0c0801104018003000501460002001300068007000780080010088010098010042290a04696e666f10061a0c08071000180030005019600020013000680070007800800100880100980100423d0a08756e69717565494410071a0c08011040180030005014600020002a0e756e697175655f726f77696428293000680070007800800100880100980100480852b3010a077072696d61727910011801220974696d657374616d702208756e6971756549442a0772616e676549442a0773746f726549442a096576656e74547970652a0c6f7468657252616e676549442a04696e666f30013007400040004a10080010001a00200028003000380040005a00700270037004700570067a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201260a077072696d61727910001a0974696d657374616d701a08756e697175654944200120072800b2011e0a0d66616d5f325f72616e6765494410021a0772616e6765494420022802b2011e0a0d66616d5f335f73746f7265494410031a0773746f7265494420032803b201220a0f66616d5f345f6576656e745479706510041a096576656e745479706520042804b201280a1266616d5f355f6f7468657252616e6765494410051a0c6f7468657252616e6765494420052805b201180a0a66616d5f365f696e666f10061a04696e666f20062806b80107c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89968a89","value":"030aea030a027569180e200128013a0042280a036b657910011a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510021a0c0808100018003000501160002001300068007000780080010088010098010042310a0b6c6173745570646174656410031a0d080510001800300050da086000200030006800700078008001008801009801004804527c0a077072696d6172791001180122036b65792a0576616c75652a0b6c61737455706461746564300140004a10080010001a00200028003000380040005a00700270037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201140a077072696d61727910001a036b657920012800b2011a0a0b66616d5f325f76616c756510021a0576616c756520022802b201260a1166616d5f335f6c6173745570646174656410031a0b6c6173745570646174656420032803b80104c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89978a89","value":"030a8c100a046a6f6273180f200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f77696428293000680070007800800100880100980100422b0a0673746174757310021a0c0807100018003000501960002000300068007000780080010088010098010042400a076372656174656410031a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d50300068007000780080010088010098010042340a0f64726f707065645f7061796c6f616410041a0c0808100018003000501160002001300168007000780080010088010098010042350a1064726f707065645f70726f677265737310051a0c0808100018003000501160002001300168007000780080010088010098010042340a0f637265617465645f62795f7479706510061a0c0807100018003000501960002001300068007000780080010088010098010042320a0d637265617465645f62795f696410071a0c0801104018003000501460002001300068007000780080010088010098010042350a10636c61696d5f73657373696f6e5f696410081a0c0808100018003000501160002001300068007000780080010088010098010042360a11636c61696d5f696e7374616e63655f696410091a0c08011040180030005014600020013000680070007800800100880100980100422d0a086e756d5f72756e73100a1a0c08011040180030005014600020013000680070007800800100880100980100422e0a086c6173745f72756e100b1a0d080510001800300050da08600020013000680070007800800100880100980100422d0a086a6f625f74797065100c1a0c08071000180030005019600020013000680070007800800100880100980100480d5290020a077072696d61727910011801220269642a067374617475732a07637265617465642a0f64726f707065645f7061796c6f61642a1064726f707065645f70726f67726573732a0f637265617465645f62795f747970652a0d637265617465645f62795f69642a10636c61696d5f73657373696f6e5f69642a11636c61696d5f696e7374616e63655f69642a086e756d5f72756e732a086c6173745f72756e2a086a6f625f74797065300140004a10080010001a00200028003000380040005a0070027003700470057006700770087009700a700b700c7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a86010a176a6f62735f7374617475735f637265617465645f696478100218002206737461747573220763726561746564300230033801400040004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aae010a266a6f62735f637265617465645f62795f747970655f637265617465645f62795f69645f69647810031800220f637265617465645f62795f74797065220d637265617465645f62795f69642a06737461747573300630073801400040004a10080010001a00200028003000380040005a0070027a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ac6020a126a6f62735f72756e5f73746174735f696478100418002210636c61696d5f73657373696f6e5f696422067374617475732207637265617465642a086c6173745f72756e2a086e756d5f72756e732a11636c61696d5f696e7374616e63655f696430083002300338014000400040004a10080010001a00200028003000380040005a00700b700a70097a0408002000800100880100900103980100a20106080012001800a80100b20100ba01810173746174757320494e20282772756e6e696e67273a3a3a535452494e472c2027726576657274696e67273a3a3a535452494e472c202770656e64696e67273a3a3a535452494e472c202770617573652d726571756573746564273a3a3a535452494e472c202763616e63656c2d726571756573746564273a3a3a535452494e4729c00100c80100d00100e00100e90100000000000000005a750a116a6f62735f6a6f625f747970655f6964781005180022086a6f625f74797065300c380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060066a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b20183010a1f66616d5f305f69645f7374617475735f637265617465645f7061796c6f616410001a0269641a067374617475731a07637265617465641a0f64726f707065645f7061796c6f61641a0f637265617465645f62795f747970651a0d637265617465645f62795f69641a086a6f625f74797065200120022003200420062007200c2800b201220a0870726f677265737310011a1064726f707065645f70726f677265737320052805b2014c0a05636c61696d10021a10636c61696d5f73657373696f6e5f69641a11636c61696d5f696e7374616e63655f69641a086e756d5f72756e731a086c6173745f72756e20082009200a200b2800b80103c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b899b8a89","value":"030a940c0a0c7765625f73657373696f6e731813200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042310a0c68617368656453656372657410021a0c08081000180030005011600020003000680070007800800100880100980100422d0a08757365726e616d6510031a0c0807100018003000501960002000300068007000780080010088010098010042420a0963726561746564417410041a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422f0a0965787069726573417410051a0d080510001800300050da08600020003000680070007800800100880100980100422f0a097265766f6b6564417410061a0d080510001800300050da0860002001300068007000780080010088010098010042430a0a6c61737455736564417410071a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422e0a096175646974496e666f10081a0c08071000180030005019600020013000680070007800800100880100980100422c0a07757365725f696410091a0c080c100018003000501a600020003000680070007800800100880100980100480a52cc010a077072696d61727910011801220269642a0c6861736865645365637265742a08757365726e616d652a096372656174656441742a096578706972657341742a097265766f6b656441742a0a6c6173745573656441742a096175646974496e666f2a07757365725f6964300140004a10080010001a00200028003000380040005a00700270037004700570067007700870097a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a7f0a1a7765625f73657373696f6e735f6578706972657341745f6964781002180022096578706972657341743005380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a7f0a1a7765625f73657373696f6e735f6372656174656441745f6964781003180022096372656174656441743004380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a7f0a1a7765625f73657373696f6e735f7265766f6b656441745f6964781004180022097265766f6b656441743006380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a81010a1b7765625f73657373696f6e735f6c6173745573656441745f69647810051800220a6c6173745573656441743007380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060066a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201c6010a5166616d5f305f69645f6861736865645365637265745f757365726e616d655f6372656174656441745f6578706972657341745f7265766f6b656441745f6c6173745573656441745f6175646974496e666f10001a0269641a0c6861736865645365637265741a08757365726e616d651a096372656174656441741a096578706972657341741a097265766f6b656441741a0a6c6173745573656441741a096175646974496e666f1a07757365725f69642001200220032004200520062007200820092800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b899c8a89","value":"030aaf0a0a107461626c655f737461746973746963731814200128013a00422c0a077461626c65494410011a0c0801104018003000501460002000300068007000780080010088010098010042400a0b737461746973746963494410021a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042290a046e616d6510031a0c08071000180030005019600020013000680070007800800100880100980100423f0a09636f6c756d6e49447310041a1d080f104018003000380150f8075a0c08011040180030005014600060002000300068007000780080010088010098010042420a0963726561746564417410051a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422d0a08726f77436f756e7410061a0c0801104018003000501460002000300068007000780080010088010098010042320a0d64697374696e6374436f756e7410071a0c08011040180030005014600020003000680070007800800100880100980100422e0a096e756c6c436f756e7410081a0c08011040180030005014600020003000680070007800800100880100980100422e0a09686973746f6772616d10091a0c0808100018003000501160002001300068007000780080010088010098010042360a0761766753697a65100a1a0c08011040180030005014600020002a08303a3a3a494e5438300068007000780080010088010098010042350a107061727469616c507265646963617465100b1a0c0807100018003000501960002001300068007000780080010088010098010042340a0f66756c6c5374617469737469634944100c1a0c08011040180030005014600020013000680070007800800100880100980100480d5284020a077072696d6172791001180122077461626c654944220b73746174697374696349442a046e616d652a09636f6c756d6e4944732a096372656174656441742a08726f77436f756e742a0d64697374696e6374436f756e742a096e756c6c436f756e742a09686973746f6772616d2a0761766753697a652a107061727469616c5072656469636174652a0f66756c6c537461746973746963494430013002400040004a10080010001a00200028003000380040005a007003700470057006700770087009700a700b700c7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b20188020a5d66616d5f305f7461626c6549445f73746174697374696349445f6e616d655f636f6c756d6e4944735f6372656174656441745f726f77436f756e745f64697374696e6374436f756e745f6e756c6c436f756e745f686973746f6772616d10001a077461626c6549441a0b73746174697374696349441a046e616d651a09636f6c756d6e4944731a096372656174656441741a08726f77436f756e741a0d64697374696e6374436f756e741a096e756c6c436f756e741a09686973746f6772616d1a0761766753697a651a107061727469616c5072656469636174651a0f66756c6c5374617469737469634944200120022003200420052006200720082009200a200b200c2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b899d8a89","value":"030ae3040a096c6f636174696f6e731815200128013a0042300a0b6c6f63616c6974794b657910011a0c0807100018003000501960002000300068007000780080010088010098010042320a0d6c6f63616c69747956616c756510021a0c08071000180030005019600020003000680070007800800100880100980100422e0a086c6174697475646510031a0d0803100f1812300050a40d600020003000680070007800800100880100980100422f0a096c6f6e67697475646510041a0d0803100f1812300050a40d60002000300068007000780080010088010098010048055298010a077072696d61727910011801220b6c6f63616c6974794b6579220d6c6f63616c69747956616c75652a086c617469747564652a096c6f6e67697475646530013002400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201710a3266616d5f305f6c6f63616c6974794b65795f6c6f63616c69747956616c75655f6c617469747564655f6c6f6e67697475646510001a0b6c6f63616c6974794b65791a0d6c6f63616c69747956616c75651a086c617469747564651a096c6f6e67697475646520012002200320042800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b899f8a89","value":"030aa20a0a0c726f6c655f6d656d626572731817200128013a0042290a04726f6c6510011a0c08071000180030005019600020003000680070007800800100880100980100422b0a066d656d62657210021a0c08071000180030005019600020003000680070007800800100880100980100422c0a07697341646d696e10031a0c08001000180030005010600020003000680070007800800100880100980100422c0a07726f6c655f696410041a0c080c100018003000501a600020003000680070007800800100880100980100422e0a096d656d6265725f696410051a0c080c100018003000501a60002000300068007000780080010088010098010048065294010a077072696d617279100118012204726f6c6522066d656d6265722a07697341646d696e2a07726f6c655f69642a096d656d6265725f696430013002400040004a10080010001a00200028003000380040005a007003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a750a15726f6c655f6d656d626572735f726f6c655f696478100218002204726f6c653001380240004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a790a17726f6c655f6d656d626572735f6d656d6265725f6964781003180022066d656d6265723002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a7d0a18726f6c655f6d656d626572735f726f6c655f69645f696478100418002207726f6c655f696430043801380240004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a81010a1a726f6c655f6d656d626572735f6d656d6265725f69645f6964781005180022096d656d6265725f696430053801380240004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a96010a22726f6c655f6d656d626572735f726f6c655f69645f6d656d6265725f69645f6b6579100618012207726f6c655f696422096d656d6265725f69643004300538013802400040004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060076a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2011f0a077072696d61727910001a04726f6c651a066d656d626572200120022800b2011e0a0d66616d5f335f697341646d696e10031a07697341646d696e20032803b2011e0a0d66616d5f345f726f6c655f696410041a07726f6c655f696420042804b201220a0f66616d5f355f6d656d6265725f696410051a096d656d6265725f696420052805b80106c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a08a89","value":"030aae040a08636f6d6d656e74731818200128013a0042290a047479706510011a0c08011040180030005014600020003000680070007800800100880100980100422e0a096f626a6563745f696410021a0c08011040180030005014600020003000680070007800800100880100980100422b0a067375625f696410031a0c08011040180030005014600020003000680070007800800100880100980100422c0a07636f6d6d656e7410041a0c080710001800300050196000200030006800700078008001008801009801004805528b010a077072696d6172791001180122047479706522096f626a6563745f696422067375625f69642a07636f6d6d656e743001300230034000400040004a10080010001a00200028003000380040005a0070047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a330a0d0a0561646d696e10e00318e0030a0c0a067075626c6963102018000a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2012c0a077072696d61727910001a04747970651a096f626a6563745f69641a067375625f69642001200220032800b2011e0a0d66616d5f345f636f6d6d656e7410041a07636f6d6d656e7420042804b80105c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a18a89","value":"030aa9060a1c7265706c69636174696f6e5f636f6e73747261696e745f73746174731819200128013a00422c0a077a6f6e655f696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a7375627a6f6e655f696410021a0c0801104018003000501460002000300068007000780080010088010098010042290a047479706510031a0c08071000180030005019600020003000680070007800800100880100980100422b0a06636f6e66696710041a0c08071000180030005019600020003000680070007800800100880100980100422e0a097265706f72745f696410051a0c0801104018003000501460002000300068007000780080010088010098010042350a0f76696f6c6174696f6e5f737461727410061a0d080910001800300050a00960002001300068007000780080010088010098010042350a1076696f6c6174696e675f72616e67657310071a0c08011040180030005014600020003000680070007800800100880100980100480852c2010a077072696d6172791001180122077a6f6e655f6964220a7375627a6f6e655f69642204747970652206636f6e6669672a097265706f72745f69642a0f76696f6c6174696f6e5f73746172742a1076696f6c6174696e675f72616e676573300130023003300440004000400040004a10080010001a00200028003000380040005a007005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2016c0a077072696d61727910001a077a6f6e655f69641a0a7375627a6f6e655f69641a04747970651a06636f6e6669671a097265706f72745f69641a0f76696f6c6174696f6e5f73746172741a1076696f6c6174696e675f72616e67657320012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a28a89","value":"030a92050a1f7265706c69636174696f6e5f637269746963616c5f6c6f63616c6974696573181a200128013a00422c0a077a6f6e655f696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a7375627a6f6e655f696410021a0c08011040180030005014600020003000680070007800800100880100980100422d0a086c6f63616c69747910031a0c08071000180030005019600020003000680070007800800100880100980100422e0a097265706f72745f696410041a0c0801104018003000501460002000300068007000780080010088010098010042330a0e61745f7269736b5f72616e67657310051a0c08011040180030005014600020003000680070007800800100880100980100480652a5010a077072696d6172791001180122077a6f6e655f6964220a7375627a6f6e655f696422086c6f63616c6974792a097265706f72745f69642a0e61745f7269736b5f72616e6765733001300230034000400040004a10080010001a00200028003000380040005a00700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201510a077072696d61727910001a077a6f6e655f69641a0a7375627a6f6e655f69641a086c6f63616c6974791a097265706f72745f69641a0e61745f7269736b5f72616e676573200120022003200420052800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a38a89","value":"030a80070a117265706c69636174696f6e5f7374617473181b200128013a00422c0a077a6f6e655f696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a7375627a6f6e655f696410021a0c08011040180030005014600020003000680070007800800100880100980100422e0a097265706f72745f696410031a0c0801104018003000501460002000300068007000780080010088010098010042310a0c746f74616c5f72616e67657310041a0c0801104018003000501460002000300068007000780080010088010098010042370a12756e617661696c61626c655f72616e67657310051a0c08011040180030005014600020003000680070007800800100880100980100423c0a17756e6465725f7265706c6963617465645f72616e67657310061a0c08011040180030005014600020003000680070007800800100880100980100423b0a166f7665725f7265706c6963617465645f72616e67657310071a0c08011040180030005014600020003000680070007800800100880100980100480852e0010a077072696d6172791001180122077a6f6e655f6964220a7375627a6f6e655f69642a097265706f72745f69642a0c746f74616c5f72616e6765732a12756e617661696c61626c655f72616e6765732a17756e6465725f7265706c6963617465645f72616e6765732a166f7665725f7265706c6963617465645f72616e67657330013002400040004a10080010001a00200028003000380040005a00700370047005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2018e010a077072696d61727910001a077a6f6e655f69641a0a7375627a6f6e655f69641a097265706f72745f69641a0c746f74616c5f72616e6765731a12756e617661696c61626c655f72616e6765731a17756e6465725f7265706c6963617465645f72616e6765731a166f7665725f7265706c6963617465645f72616e67657320012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a48a89","value":"030aff020a0c7265706f7274735f6d657461181c200128013a0042270a02696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0967656e65726174656410021a0d080910001800300050a009600020003000680070007800800100880100980100480352700a077072696d61727910011801220269642a0967656e657261746564300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201200a077072696d61727910001a0269641a0967656e657261746564200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a68a89","value":"030a9e040a096e616d657370616365181e200128013a00422d0a08706172656e74494410011a0c0801104018003000501460002000300068007000780080010088010098010042330a0e706172656e74536368656d61494410021a0c0801104018003000501460002000300068007000780080010088010098010042290a046e616d6510031a0c0807100018003000501960002000300068007000780080010088010098010042270a02696410041a0c080110401800300050146000200130006800700078008001008801009801004805528d010a077072696d617279100118012208706172656e744944220e706172656e74536368656d61494422046e616d652a0269643001300230034000400040004a10080010001a00200028003000380040005a0070047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b201330a077072696d61727910001a08706172656e7449441a0e706172656e74536368656d6149441a046e616d652001200220032800b201140a0866616d5f345f696410041a02696420042804b80105c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a78a89","value":"030aa8050a1170726f7465637465645f74735f6d657461181f200128013a0042340a0973696e676c65746f6e10011a0c08001000180030005010600020002a04747275653000680070007800800100880100980100422c0a0776657273696f6e10021a0c0801104018003000501460002000300068007000780080010088010098010042300a0b6e756d5f7265636f72647310031a0c08011040180030005014600020003000680070007800800100880100980100422e0a096e756d5f7370616e7310041a0c0801104018003000501460002000300068007000780080010088010098010042300a0b746f74616c5f627974657310051a0c08011040180030005014600020003000680070007800800100880100980100480652a0010a077072696d61727910011801220973696e676c65746f6e2a0776657273696f6e2a0b6e756d5f7265636f7264732a096e756d5f7370616e732a0b746f74616c5f6279746573300140004a10080010001a00200028003000380040005a0070027003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100a201260a0973696e676c65746f6e120f636865636b5f73696e676c65746f6e18002801300038004002b201500a077072696d61727910001a0973696e676c65746f6e1a0776657273696f6e1a0b6e756d5f7265636f7264731a096e756d5f7370616e731a0b746f74616c5f6279746573200120022003200420052800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a88a89","value":"030a8c060a1470726f7465637465645f74735f7265636f7264731820200128013a0042280a02696410011a0d080e10001800300050861760002000300068007000780080010088010098010042280a02747310021a0d080310001800300050a40d600020003000680070007800800100880100980100422e0a096d6574615f7479706510031a0c0807100018003000501960002000300068007000780080010088010098010042290a046d65746110041a0c08081000180030005011600020013000680070007800800100880100980100422e0a096e756d5f7370616e7310051a0c08011040180030005014600020003000680070007800800100880100980100422a0a057370616e7310061a0c0808100018003000501160002000300068007000780080010088010098010042340a08766572696669656410071a0c08001000180030005010600020002a0566616c73653000680070007800800100880100980100422b0a0674617267657410081a0c08081000180030005011600020013000680070007800800100880100980100480952aa010a077072696d61727910011801220269642a0274732a096d6574615f747970652a046d6574612a096e756d5f7370616e732a057370616e732a0876657269666965642a06746172676574300140004a10080010001a00200028003000380040005a0070027003700470057006700770087a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b2015a0a077072696d61727910001a0269641a0274731a096d6574615f747970651a046d6574611a096e756d5f7370616e731a057370616e731a0876657269666965641a06746172676574200120022003200420052006200720082800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a98a89","value":"030a84050a0c726f6c655f6f7074696f6e731821200128013a00422d0a08757365726e616d6510011a0c08071000180030005019600020003000680070007800800100880100980100422b0a066f7074696f6e10021a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510031a0c08071000180030005019600020013000680070007800800100880100980100422c0a07757365725f696410041a0c080c100018003000501a60002000300068007000780080010088010098010048055289010a077072696d617279100118012208757365726e616d6522066f7074696f6e2a0576616c75652a07757365725f696430013002400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a760a1175736572735f757365725f69645f696478100218002207757365725f696430043801380240004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201370a077072696d61727910001a08757365726e616d651a066f7074696f6e1a0576616c75651a07757365725f696420012002200320042800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89aa8a89","value":"030ada030a1773746174656d656e745f62756e646c655f6368756e6b731822200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042300a0b6465736372697074696f6e10021a0c0807100018003000501960002001300068007000780080010088010098010042290a046461746110031a0c080810001800300050116000200030006800700078008001008801009801004804527a0a077072696d61727910011801220269642a0b6465736372697074696f6e2a0464617461300140004a10080010001a00200028003000380040005a00700270037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2012a0a077072696d61727910001a0269641a0b6465736372697074696f6e1a04646174612001200220032800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ab8a89","value":"030ae50c0a1e73746174656d656e745f646961676e6f73746963735f72657175657374731823200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042350a09636f6d706c6574656410021a0c08001000180030005010600020002a0566616c73653000680070007800800100880100980100423a0a1573746174656d656e745f66696e6765727072696e7410031a0c08071000180030005019600020003000680070007800800100880100980100423d0a1873746174656d656e745f646961676e6f73746963735f696410041a0c0801104018003000501460002001300068007000780080010088010098010042320a0c7265717565737465645f617410051a0d080910001800300050a00960002000300068007000780080010088010098010042410a156d696e5f657865637574696f6e5f6c6174656e637910061a13080610001800300050a20960006a04080010002001300068007000780080010088010098010042300a0a657870697265735f617410071a0d080910001800300050a009600020013000680070007800800100880100980100423a0a1473616d706c696e675f70726f626162696c69747910081a0d080210401800300050bd05600020013000680070007800800100880100980100422e0a09706c616e5f6769737410091a0c0807100018003000501960002001300068007000780080010088010098010042330a0e616e74695f706c616e5f67697374100a1a0c0800100018003000501060002001300068007000780080010088010098010042340a087265646163746564100b1a0c08001000180030005010600020002a0566616c73653000680070007800800100880100980100480c529f020a077072696d61727910011801220269642a09636f6d706c657465642a1573746174656d656e745f66696e6765727072696e742a1873746174656d656e745f646961676e6f73746963735f69642a0c7265717565737465645f61742a156d696e5f657865637574696f6e5f6c6174656e63792a0a657870697265735f61742a1473616d706c696e675f70726f626162696c6974792a09706c616e5f676973742a0e616e74695f706c616e5f676973742a087265646163746564300140004a10080010001a00200028003000380040005a0070027003700470057006700770087009700a700b7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005afb010a0d636f6d706c657465645f696478100218002209636f6d706c65746564220269642a1573746174656d656e745f66696e6765727072696e742a156d696e5f657865637574696f6e5f6c6174656e63792a0a657870697265735f61742a1473616d706c696e675f70726f626162696c6974792a09706c616e5f676973742a0e616e74695f706c616e5f676973742a08726564616374656430023001400040004a10080010001a00200028003000380040005a0070037006700770087009700a700b7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a201620a3a73616d706c696e675f70726f626162696c697479204245545745454e20302e303a3a3a464c4f41543820414e4420312e303a3a3a464c4f415438121a636865636b5f73616d706c696e675f70726f626162696c69747918002808300038004002b201cf010a077072696d61727910001a0269641a09636f6d706c657465641a1573746174656d656e745f66696e6765727072696e741a1873746174656d656e745f646961676e6f73746963735f69641a0c7265717565737465645f61741a156d696e5f657865637574696f6e5f6c6174656e63791a0a657870697265735f61741a1473616d706c696e675f70726f626162696c6974791a09706c616e5f676973741a0e616e74695f706c616e5f676973741a087265646163746564200120022003200420052006200720082009200a200b2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ac8a89","value":"030abe060a1573746174656d656e745f646961676e6f73746963731824200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f77696428293000680070007800800100880100980100423a0a1573746174656d656e745f66696e6765727072696e7410021a0c08071000180030005019600020003000680070007800800100880100980100422e0a0973746174656d656e7410031a0c0807100018003000501960002000300068007000780080010088010098010042320a0c636f6c6c65637465645f617410041a0d080910001800300050a009600020003000680070007800800100880100980100422b0a05747261636510051a0d081210001800300050da1d60002001300068007000780080010088010098010042430a0d62756e646c655f6368756e6b7310061a1d080f104018003000380150f8075a0c080110401800300050146000600020013000680070007800800100880100980100422a0a056572726f7210071a0c08071000180030005019600020013000680070007800800100880100980100480852bc010a077072696d61727910011801220269642a1573746174656d656e745f66696e6765727072696e742a0973746174656d656e742a0c636f6c6c65637465645f61742a0574726163652a0d62756e646c655f6368756e6b732a056572726f72300140004a10080010001a00200028003000380040005a007002700370047005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2016c0a077072696d61727910001a0269641a1573746174656d656e745f66696e6765727072696e741a0973746174656d656e741a0c636f6c6c65637465645f61741a0574726163651a0d62756e646c655f6368756e6b731a056572726f7220012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ad8a89","value":"030ad3090a0e7363686564756c65645f6a6f62731825200128013a0042400a0b7363686564756c655f696410011a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042320a0d7363686564756c655f6e616d6510021a0c0807100018003000501960002000300068007000780080010088010098010042420a076372656174656410031a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422a0a056f776e657210041a0c08071000180030005019600020003000680070007800800100880100980100422e0a086e6578745f72756e10051a0d080910001800300050a00960002001300068007000780080010088010098010042330a0e7363686564756c655f737461746510061a0c0808100018003000501160002001300068007000780080010088010098010042320a0d7363686564756c655f6578707210071a0c0807100018003000501960002001300068007000780080010088010098010042350a107363686564756c655f64657461696c7310081a0c0808100018003000501160002001300068007000780080010088010098010042320a0d6578656375746f725f7479706510091a0c0807100018003000501960002000300068007000780080010088010098010042330a0e657865637574696f6e5f61726773100a1a0c08081000180030005011600020003000680070007800800100880100980100480b52f7010a077072696d61727910011801220b7363686564756c655f69642a0d7363686564756c655f6e616d652a07637265617465642a056f776e65722a086e6578745f72756e2a0e7363686564756c655f73746174652a0d7363686564756c655f657870722a107363686564756c655f64657461696c732a0d6578656375746f725f747970652a0e657865637574696f6e5f61726773300140004a10080010001a00200028003000380040005a0070027003700470057006700770087009700a7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a700a0c6e6578745f72756e5f6964781002180022086e6578745f72756e3005380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201380a05736368656410001a0b7363686564756c655f69641a086e6578745f72756e1a0e7363686564756c655f73746174652001200520062800b201780a056f7468657210011a0d7363686564756c655f6e616d651a07637265617465641a056f776e65721a0d7363686564756c655f657870721a107363686564756c655f64657461696c731a0d6578656375746f725f747970651a0e657865637574696f6e5f61726773200220032004200720082009200a2800b80102c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89af8a89","value":"030aec030a0b73716c6c6976656e6573731827200128013a00422f0a0a73657373696f6e5f696410011a0c0808100018003000501160002000300068007000780080010088010098010042300a0a65787069726174696f6e10021a0d080310001800300050a40d60002000300068007000780080010088010098010042300a0b637264625f726567696f6e10031a0c080810001800300050116000200030006800700078008001008801009801004804528a010a077072696d61727910021801220b637264625f726567696f6e220a73657373696f6e5f69642a0a65787069726174696f6e30033001400040004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201380a077072696d61727910001a0b637264625f726567696f6e1a0a73657373696f6e5f69641a0a65787069726174696f6e2003200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b08a89","value":"030ad9040a0a6d6967726174696f6e731828200128013a00422a0a056d616a6f7210011a0c08011040180030005014600020003000680070007800800100880100980100422a0a056d696e6f7210021a0c08011040180030005014600020003000680070007800800100880100980100422a0a05706174636810031a0c08011040180030005014600020003000680070007800800100880100980100422d0a08696e7465726e616c10041a0c0801104018003000501460002000300068007000780080010088010098010042320a0c636f6d706c657465645f617410051a0d080910001800300050a0096000200030006800700078008001008801009801004806529a010a077072696d6172791001180122056d616a6f7222056d696e6f72220570617463682208696e7465726e616c2a0c636f6d706c657465645f6174300130023003300440004000400040004a10080010001a00200028003000380040005a0070057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201440a077072696d61727910001a056d616a6f721a056d696e6f721a0570617463681a08696e7465726e616c1a0c636f6d706c657465645f6174200120022003200420052805b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b18a89","value":"030ac3030a0b6a6f696e5f746f6b656e731829200128013a0042280a02696410011a0d080e100018003000508617600020003000680070007800800100880100980100422b0a0673656372657410021a0c0808100018003000501160002000300068007000780080010088010098010042300a0a65787069726174696f6e10031a0d080910001800300050a0096000200030006800700078008001008801009801004804527b0a077072696d61727910011801220269642a067365637265742a0a65787069726174696f6e300140004a10080010001a00200028003000380040005a00700270037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2012b0a077072696d61727910001a0269641a067365637265741a0a65787069726174696f6e2001200220032800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b28a89","value":"030a8f280a1473746174656d656e745f73746174697374696373182a200128013a0042330a0d616767726567617465645f747310011a0d080910001800300050a00960002000300068007000780080010088010098010042330a0e66696e6765727072696e745f696410021a0c08081000180030005011600020003000680070007800800100880100980100423f0a1a7472616e73616374696f6e5f66696e6765727072696e745f696410031a0c08081000180030005011600020003000680070007800800100880100980100422e0a09706c616e5f6861736810041a0c08081000180030005011600020003000680070007800800100880100980100422d0a086170705f6e616d6510051a0c08071000180030005019600020003000680070007800800100880100980100422c0a076e6f64655f696410061a0c0801104018003000501460002000300068007000780080010088010098010042380a0c6167675f696e74657276616c10071a13080610001800300050a20960006a040800100020003000680070007800800100880100980100422e0a086d6574616461746110081a0d081210001800300050da1d60002000300068007000780080010088010098010042300a0a7374617469737469637310091a0d081210001800300050da1d600020003000680070007800800100880100980100422a0a04706c616e100a1a0d081210001800300050da1d600020003000680070007800800100880100980100429c020a68637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f38100b1a0c080110201800300050176000200030015a8c016d6f6428666e76333228637264625f696e7465726e616c2e646174756d735f746f5f627974657328616767726567617465645f74732c206170705f6e616d652c2066696e6765727072696e745f69642c206e6f64655f69642c20706c616e5f686173682c207472616e73616374696f6e5f66696e6765727072696e745f696429292c20383a3a3a494e543829680070007800800100880100980100425f0a15696e6465785f7265636f6d6d656e646174696f6e73100c1a1d080f100018003000380750f1075a0c080710001800300050196000600020002a1241525241595b5d3a3a3a535452494e475b5d3000680070007800800100880100980100426c0a0d696e64657865735f7573616765100d1a0d081210001800300050da1d6000200130005a3728737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e27696e6465786573273a3a3a535452494e4768007000780080010188010098010042710a0f657865637574696f6e5f636f756e74100e1a0c080110401800300050146000200130005a3b2828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e27636e74273a3a3a535452494e47293a3a494e5438680070007800800100880100980100428a010a0f736572766963655f6c6174656e6379100f1a0d080210401800300050bd056000200130005a53282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e277376634c6174273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f4154386800700078008001008801009801004297010a0d6370755f73716c5f6e616e6f7310101a0d080210401800300050bd056000200130005a62282828737461746973746963732d3e27657865637574696f6e5f73746174697374696373273a3a3a535452494e47292d3e2763707553514c4e616e6f73273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100429c010a0f636f6e74656e74696f6e5f74696d6510111a0d080210401800300050bd056000200130005a65282828737461746973746963732d3e27657865637574696f6e5f73746174697374696373273a3a3a535452494e47292d3e27636f6e74656e74696f6e54696d65273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f41543868007000780080010088010098010042dc010a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d6510121a0d080210401800300050bd056000200130005a95012828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e3e27636e74273a3a3a535452494e47293a3a464c4f415438202a20282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e277376634c6174273a3a3a535452494e47292d3e3e276d65616e273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100428a010a0b7039395f6c6174656e637910131a0d080210401800300050bd056000200130005a57282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e276c6174656e6379496e666f273a3a3a535452494e47292d3e27703939273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100481452c2050a077072696d617279100118012268637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f38220d616767726567617465645f7473220e66696e6765727072696e745f6964221a7472616e73616374696f6e5f66696e6765727072696e745f69642209706c616e5f6861736822086170705f6e616d6522076e6f64655f69642a0c6167675f696e74657276616c2a086d657461646174612a0a737461746973746963732a04706c616e2a15696e6465785f7265636f6d6d656e646174696f6e732a0f657865637574696f6e5f636f756e742a0f736572766963655f6c6174656e63792a0d6370755f73716c5f6e616e6f732a0f636f6e74656e74696f6e5f74696d652a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d652a0b7039395f6c6174656e6379300b30013002300330043005300640004000400040004000400040004a10080010001a00200028003000380040005a00700770087009700a700c700e700f70107011701270137a0408002000800100880100900104980101a201c70108011268637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f381808220d616767726567617465645f747322086170705f6e616d65220e66696e6765727072696e745f696422076e6f64655f69642209706c616e5f68617368221a7472616e73616374696f6e5f66696e6765727072696e745f6964a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005aa7010a1566696e6765727072696e745f73746174735f69647810021800220e66696e6765727072696e745f6964221a7472616e73616374696f6e5f66696e6765727072696e745f696430023003380b3801380438053806400040004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a89010a11696e64657865735f75736167655f69647810031800220d696e64657865735f7573616765300d380b38013802380338043805380640004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80100e00100e90100000000000000005acf010a13657865637574696f6e5f636f756e745f69647810041800220d616767726567617465645f747322086170705f6e616d65220f657865637574696f6e5f636f756e7430013005300e380b38023803380438064000400040014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ad1010a13736572766963655f6c6174656e63795f69647810051800220d616767726567617465645f747322086170705f6e616d65220f736572766963655f6c6174656e637930013005300f380b38023803380438064000400040014a10080010001a00200028003000380040005a00680f7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005acd010a116370755f73716c5f6e616e6f735f69647810061800220d616767726567617465645f747322086170705f6e616d65220d6370755f73716c5f6e616e6f73300130053010380b38023803380438064000400040014a10080010001a00200028003000380040005a0068107a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ad1010a13636f6e74656e74696f6e5f74696d655f69647810071800220d616767726567617465645f747322086170705f6e616d65220f636f6e74656e74696f6e5f74696d65300130053011380b38023803380438064000400040014a10080010001a00200028003000380040005a0068117a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005aef010a22746f74616c5f657374696d617465645f657865637574696f6e5f74696d655f69647810081800220d616767726567617465645f747322086170705f6e616d65221e746f74616c5f657374696d617465645f657865637574696f6e5f74696d65300130053012380b38023803380438064000400040014a10080010001a00200028003000380040005a0068127a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ac9010a0f7039395f6c6174656e63795f69647810091800220d616767726567617465645f747322086170705f6e616d65220b7039395f6c6174656e6379300130053013380b38023803380438064000400040014a10080010001a00200028003000380040005a0068137a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e9010000000000000000600a6a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100a201b9020abc01637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f3820494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e543829126e636865636b5f637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f381800280b300038014002b201a4030a077072696d61727910001a68637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f381a0d616767726567617465645f74731a0e66696e6765727072696e745f69641a1a7472616e73616374696f6e5f66696e6765727072696e745f69641a09706c616e5f686173681a086170705f6e616d651a076e6f64655f69641a0c6167675f696e74657276616c1a086d657461646174611a0a737461746973746963731a04706c616e1a15696e6465785f7265636f6d6d656e646174696f6e731a0f657865637574696f6e5f636f756e741a0f736572766963655f6c6174656e63791a0d6370755f73716c5f6e616e6f731a0f636f6e74656e74696f6e5f74696d651a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d651a0b7039395f6c6174656e6379200b200120022003200420052006200720082009200a200c200e200f20102011201220132800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b38a89","value":"030a95200a167472616e73616374696f6e5f73746174697374696373182b200128013a0042330a0d616767726567617465645f747310011a0d080910001800300050a00960002000300068007000780080010088010098010042330a0e66696e6765727072696e745f696410021a0c08081000180030005011600020003000680070007800800100880100980100422d0a086170705f6e616d6510031a0c08071000180030005019600020003000680070007800800100880100980100422c0a076e6f64655f696410041a0c0801104018003000501460002000300068007000780080010088010098010042380a0c6167675f696e74657276616c10051a13080610001800300050a20960006a040800100020003000680070007800800100880100980100422e0a086d6574616461746110061a0d081210001800300050da1d60002000300068007000780080010088010098010042300a0a7374617469737469637310071a0d081210001800300050da1d60002000300068007000780080010088010098010042cf010a43637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f3810081a0c080110201800300050176000200030015a656d6f6428666e76333228637264625f696e7465726e616c2e646174756d735f746f5f627974657328616767726567617465645f74732c206170705f6e616d652c2066696e6765727072696e745f69642c206e6f64655f696429292c20383a3a3a494e54382968007000780080010088010098010042710a0f657865637574696f6e5f636f756e7410091a0c080110401800300050146000200130005a3b2828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e27636e74273a3a3a535452494e47293a3a494e5438680070007800800100880100980100428a010a0f736572766963655f6c6174656e6379100a1a0d080210401800300050bd056000200130005a53282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e277376634c6174273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f4154386800700078008001008801009801004297010a0d6370755f73716c5f6e616e6f73100b1a0d080210401800300050bd056000200130005a62282828737461746973746963732d3e27657865637574696f6e5f73746174697374696373273a3a3a535452494e47292d3e2763707553514c4e616e6f73273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100429c010a0f636f6e74656e74696f6e5f74696d65100c1a0d080210401800300050bd056000200130005a65282828737461746973746963732d3e27657865637574696f6e5f73746174697374696373273a3a3a535452494e47292d3e27636f6e74656e74696f6e54696d65273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f41543868007000780080010088010098010042dc010a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d65100d1a0d080210401800300050bd056000200130005a95012828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e3e27636e74273a3a3a535452494e47293a3a464c4f415438202a20282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e277376634c6174273a3a3a535452494e47292d3e3e276d65616e273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100428a010a0b7039395f6c6174656e6379100e1a0d080210401800300050bd056000200130005a57282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e276c6174656e6379496e666f273a3a3a535452494e47292d3e27703939273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100480f5280040a077072696d617279100118012243637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f38220d616767726567617465645f7473220e66696e6765727072696e745f696422086170705f6e616d6522076e6f64655f69642a0c6167675f696e74657276616c2a086d657461646174612a0a737461746973746963732a0f657865637574696f6e5f636f756e742a0f736572766963655f6c6174656e63792a0d6370755f73716c5f6e616e6f732a0f636f6e74656e74696f6e5f74696d652a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d652a0b7039395f6c6174656e637930083001300230033004400040004000400040004a10080010001a00200028003000380040005a007005700670077009700a700b700c700d700e7a0408002000800100880100900104980101a2017b08011243637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f381808220d616767726567617465645f747322086170705f6e616d65220e66696e6765727072696e745f696422076e6f64655f6964a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a85010a1566696e6765727072696e745f73746174735f69647810021800220e66696e6765727072696e745f69643002380838013803380440004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005acb010a13657865637574696f6e5f636f756e745f69647810031800220d616767726567617465645f747322086170705f6e616d65220f657865637574696f6e5f636f756e743001300330093808380238044000400040014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005acd010a13736572766963655f6c6174656e63795f69647810041800220d616767726567617465645f747322086170705f6e616d65220f736572766963655f6c6174656e637930013003300a3808380238044000400040014a10080010001a00200028003000380040005a00680a7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ac9010a116370755f73716c5f6e616e6f735f69647810051800220d616767726567617465645f747322086170705f6e616d65220d6370755f73716c5f6e616e6f7330013003300b3808380238044000400040014a10080010001a00200028003000380040005a00680b7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005acd010a13636f6e74656e74696f6e5f74696d655f69647810061800220d616767726567617465645f747322086170705f6e616d65220f636f6e74656e74696f6e5f74696d6530013003300c3808380238044000400040014a10080010001a00200028003000380040005a00680c7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005aeb010a22746f74616c5f657374696d617465645f657865637574696f6e5f74696d655f69647810071800220d616767726567617465645f747322086170705f6e616d65221e746f74616c5f657374696d617465645f657865637574696f6e5f74696d6530013003300d3808380238044000400040014a10080010001a00200028003000380040005a00680d7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ac5010a0f7039395f6c6174656e63795f69647810081800220d616767726567617465645f747322086170705f6e616d65220b7039395f6c6174656e637930013003300e3808380238044000400040014a10080010001a00200028003000380040005a00680e7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e901000000000000000060096a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100a201ef010a9701637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f3820494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e5438291249636865636b5f637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f3818002808300038014002b201b3020a077072696d61727910001a43637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f381a0d616767726567617465645f74731a0e66696e6765727072696e745f69641a086170705f6e616d651a076e6f64655f69641a0c6167675f696e74657276616c1a086d657461646174611a0a737461746973746963731a0f657865637574696f6e5f636f756e741a0f736572766963655f6c6174656e63791a0d6370755f73716c5f6e616e6f731a0f636f6e74656e74696f6e5f74696d651a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d651a0b7039395f6c6174656e6379200820012002200320042005200620072009200a200b200c200d200e2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b48a89","value":"030af3050a1664617461626173655f726f6c655f73657474696e6773182c200128013a0042300a0b64617461626173655f696410011a0c080c100018003000501a600020003000680070007800800100880100980100422e0a09726f6c655f6e616d6510021a0c08071000180030005019600020003000680070007800800100880100980100423e0a0873657474696e677310031a1d080f100018003000380750f1075a0c080710001800300050196000600020003000680070007800800100880100980100422c0a07726f6c655f696410041a0c080c100018003000501a60002000300068007000780080010088010098010048055292010a077072696d61727910011801220b64617461626173655f69642209726f6c655f6e616d652a0873657474696e67732a07726f6c655f696430013002400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005aae010a2e64617461626173655f726f6c655f73657474696e67735f64617461626173655f69645f726f6c655f69645f6b657910021801220b64617461626173655f69642207726f6c655f69642a0873657474696e6773300130043802400040004a10080010001a00200028003000380040005a0070037a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201400a077072696d61727910001a0b64617461626173655f69641a09726f6c655f6e616d651a0873657474696e67731a07726f6c655f696420012002200320042800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b58a89","value":"030ac00b0a0c74656e616e745f7573616765182d200128013a00422e0a0974656e616e745f696410011a0c0801104018003000501460002000300068007000780080010088010098010042300a0b696e7374616e63655f696410021a0c0801104018003000501460002000300068007000780080010088010098010042350a106e6578745f696e7374616e63655f696410031a0c0801104018003000501460002000300068007000780080010088010098010042310a0b6c6173745f75706461746510041a0d080510001800300050da0860002000300068007000780080010088010098010042340a0e72755f62757273745f6c696d697410051a0d080210401800300050bd0560002001300068007000780080010088010098010042340a0e72755f726566696c6c5f7261746510061a0d080210401800300050bd0560002001300068007000780080010088010098010042300a0a72755f63757272656e7410071a0d080210401800300050bd0560002001300068007000780080010088010098010042370a1163757272656e745f73686172655f73756d10081a0d080210401800300050bd0560002001300068007000780080010088010098010042360a11746f74616c5f636f6e73756d7074696f6e10091a0c0808100018003000501160002001300068007000780080010088010098010042330a0e696e7374616e63655f6c65617365100a1a0c0808100018003000501160002001300068007000780080010088010098010042310a0c696e7374616e63655f736571100b1a0c0801104018003000501460002001300068007000780080010088010098010042350a0f696e7374616e63655f736861726573100c1a0d080210401800300050bd0560002001300068007000780080010088010098010042320a0d63757272656e745f7261746573100d1a0c08081000180030005011600020013000680070007800800100880100980100422f0a0a6e6578745f7261746573100e1a0c08081000180030005011600020013000680070007800800100880100980100480f52ce020a077072696d61727910011801220974656e616e745f6964220b696e7374616e63655f69642a106e6578745f696e7374616e63655f69642a0b6c6173745f7570646174652a0e72755f62757273745f6c696d69742a0e72755f726566696c6c5f726174652a0a72755f63757272656e742a1163757272656e745f73686172655f73756d2a11746f74616c5f636f6e73756d7074696f6e2a0e696e7374616e63655f6c656173652a0c696e7374616e63655f7365712a0f696e7374616e63655f7368617265732a0d63757272656e745f72617465732a0a6e6578745f726174657330013002400040004a10080010001a00200028003000380040005a007003700470057006700770087009700a700b700c700d700e7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201fc010a077072696d61727910001a0974656e616e745f69641a0b696e7374616e63655f69641a106e6578745f696e7374616e63655f69641a0b6c6173745f7570646174651a0e72755f62757273745f6c696d69741a0e72755f726566696c6c5f726174651a0a72755f63757272656e741a1163757272656e745f73686172655f73756d1a11746f74616c5f636f6e73756d7074696f6e1a0e696e7374616e63655f6c656173651a0c696e7374616e63655f7365711a0f696e7374616e63655f7368617265731a0d63757272656e745f72617465731a0a6e6578745f7261746573200120022003200420052006200720082009200a200b200c200d200e2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b68a89","value":"030ac8060a0d73716c5f696e7374616e636573182e200128013a0042270a02696410011a0c0801104018003000501460002000300068007000780080010088010098010042290a046164647210021a0c08071000180030005019600020013000680070007800800100880100980100422f0a0a73657373696f6e5f696410031a0c08081000180030005011600020013000680070007800800100880100980100422e0a086c6f63616c69747910041a0d081210001800300050da1d600020013000680070007800800100880100980100422d0a0873716c5f6164647210051a0c0807100018003000501960002001300068007000780080010088010098010042300a0b637264625f726567696f6e10061a0c0808100018003000501160002000300068007000780080010088010098010042330a0e62696e6172795f76657273696f6e10071a0c0807100018003000501960002001300068007000780080010088010098010042300a0b69735f647261696e696e6710081a0c08001000180030005010600020013000680070007800800100880100980100480952c3010a077072696d61727910021801220b637264625f726567696f6e220269642a04616464722a0a73657373696f6e5f69642a086c6f63616c6974792a0873716c5f616464722a0e62696e6172795f76657273696f6e2a0b69735f647261696e696e6730063001400040004a10080010001a00200028003000380040005a007002700370047005700770087a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201710a077072696d61727910001a0269641a04616464721a0a73657373696f6e5f69641a086c6f63616c6974791a0873716c5f616464721a0b637264625f726567696f6e1a0e62696e6172795f76657273696f6e1a0b69735f647261696e696e67200120022003200420052006200720082800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b78a89","value":"030a87040a137370616e5f636f6e66696775726174696f6e73182f200128013a00422e0a0973746172745f6b657910011a0c08081000180030005011600020003000680070007800800100880100980100422c0a07656e645f6b657910021a0c08081000180030005011600020003000680070007800800100880100980100422b0a06636f6e66696710031a0c080810001800300050116000200030006800700078008001008801009801004804527f0a077072696d61727910011801220973746172745f6b65792a07656e645f6b65792a06636f6e666967300140004a10080010001a00200028003000380040005a00700270037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a2012f0a1373746172745f6b6579203c20656e645f6b6579120c636865636b5f626f756e6473180028012802300038004002b2012f0a077072696d61727910001a0973746172745f6b65791a07656e645f6b65791a06636f6e6669672001200220032800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b88a89","value":"030ad9020a0b726f6c655f69645f7365711830200128013a00422a0a0576616c756510011a0c08011040180030005014600020003000680070007800800100880100980100480052660a077072696d61727910011800220576616c7565300140004a10080010001a00200028003000380040005a007a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060006a250a0d0a0561646d696e10a00618a0060a0c0a04726f6f7410a00618a00612046e6f64651803800100880103980100b201160a077072696d61727910001a0576616c756520012801b80100c20100e2011a0801106418ffffffff0720642800320408001000380142004800e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880300a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ba8a89","value":"030af0050a0f74656e616e745f73657474696e67731832200128013a00422e0a0974656e616e745f696410011a0c0801104018003000501460002000300068007000780080010088010098010042290a046e616d6510021a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510031a0c0807100018003000501960002000300068007000780080010088010098010042450a0c6c6173745f7570646174656410041a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422f0a0a76616c75655f7479706510051a0c08071000180030005019600020003000680070007800800100880100980100422b0a06726561736f6e10061a0c08071000180030005019600020013000680070007800800100880100980100480752a5010a077072696d61727910011801220974656e616e745f696422046e616d652a0576616c75652a0c6c6173745f757064617465642a0a76616c75655f747970652a06726561736f6e30013002400040004a10080010001a00200028003000380040005a0070037004700570067a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b20185010a3966616d5f305f74656e616e745f69645f6e616d655f76616c75655f6c6173745f757064617465645f76616c75655f747970655f726561736f6e10001a0974656e616e745f69641a046e616d651a0576616c75651a0c6c6173745f757064617465641a0a76616c75655f747970651a06726561736f6e2001200220032004200520062800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89bb8a89","value":"030abe030a0a7370616e5f636f756e741833200128013a0042340a0973696e676c65746f6e10011a0c08001000180030005010600020002a04747275653000680070007800800100880100980100422f0a0a7370616e5f636f756e7410021a0c08011040180030005014600020003000680070007800800100880100980100480352780a077072696d61727910011801220973696e676c65746f6e2a0a7370616e5f636f756e74300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a201210a0973696e676c65746f6e120a73696e676c655f726f7718002801300038004002b201280a077072696d61727910001a0973696e676c65746f6e1a0a7370616e5f636f756e74200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89bc8a89","value":"030adf070a0a70726976696c656765731834200128013a00422d0a08757365726e616d6510011a0c0807100018003000501960002000300068007000780080010088010098010042290a047061746810021a0c0807100018003000501960002000300068007000780080010088010098010042400a0a70726976696c6567657310031a1d080f100018003000380750f1075a0c08071000180030005019600060002000300068007000780080010088010098010042430a0d6772616e745f6f7074696f6e7310041a1d080f100018003000380750f1075a0c080710001800300050196000600020003000680070007800800100880100980100422c0a07757365725f696410051a0c080c100018003000501a6000200030006800700078008001008801009801004806529d010a077072696d617279100118012208757365726e616d652204706174682a0a70726976696c656765732a0d6772616e745f6f7074696f6e732a07757365725f696430013002400040004a10080010001a00200028003000380040005a007003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00103e00100e90100000000000000005aa7010a1b70726976696c656765735f706174685f757365725f69645f6b6579100218012204706174682207757365725f69642a0a70726976696c656765732a0d6772616e745f6f7074696f6e73300230053801400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005aa7010a1c70726976696c656765735f706174685f757365726e616d655f6b6579100318012204706174682208757365726e616d652a0a70726976696c656765732a0d6772616e745f6f7074696f6e7330023001400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e901000000000000000060046a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2014b0a077072696d61727910001a08757365726e616d651a04706174681a0a70726976696c656765731a0d6772616e745f6f7074696f6e731a07757365725f6964200120022003200420052800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880304a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89bd8a89","value":"030ada060a1465787465726e616c5f636f6e6e656374696f6e731835200128013a0042340a0f636f6e6e656374696f6e5f6e616d6510011a0c0807100018003000501960002000300068007000780080010088010098010042400a076372656174656410021a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d50300068007000780080010088010098010042400a077570646174656410031a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d50300068007000780080010088010098010042340a0f636f6e6e656374696f6e5f7479706510041a0c0807100018003000501960002000300068007000780080010088010098010042370a12636f6e6e656374696f6e5f64657461696c7310051a0c08081000180030005011600020003000680070007800800100880100980100422a0a056f776e657210061a0c08071000180030005019600020003000680070007800800100880100980100422d0a086f776e65725f696410071a0c080c100018003000501a600020003000680070007800800100880100980100480852c4010a077072696d61727910011801220f636f6e6e656374696f6e5f6e616d652a07637265617465642a07757064617465642a0f636f6e6e656374696f6e5f747970652a12636f6e6e656374696f6e5f64657461696c732a056f776e65722a086f776e65725f6964300140004a10080010001a00200028003000380040005a007002700370047005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201740a077072696d61727910001a0f636f6e6e656374696f6e5f6e616d651a07637265617465641a07757064617465641a0f636f6e6e656374696f6e5f747970651a12636f6e6e656374696f6e5f64657461696c731a056f776e65721a086f776e65725f696420012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89be8a89","value":"030aa0040a086a6f625f696e666f1836200128013a00422b0a066a6f625f696410011a0c08011040180030005014600020003000680070007800800100880100980100422d0a08696e666f5f6b657910021a0c0807100018003000501960002000300068007000780080010088010098010042420a077772697474656e10031a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422a0a0576616c756510041a0c080810001800300050116000200130006800700078008001008801009801004805528b010a077072696d6172791001180122066a6f625f69642208696e666f5f6b657922077772697474656e2a0576616c75653001300230034000400040014a10080010001a00200028003000380040005a0070047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201370a077072696d61727910001a066a6f625f69641a08696e666f5f6b65791a077772697474656e1a0576616c756520012002200320042804b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89bf8a89","value":"030a9c040a167370616e5f73746174735f756e697175655f6b6579731837200128013a00423b0a02696410011a0d080e100018003000508617600020002a1167656e5f72616e646f6d5f7575696428293000680070007800800100880100980100422e0a096b65795f627974657310021a0c08081000180030005011600020013000680070007800800100880100980100480352700a077072696d61727910011801220269642a096b65795f6279746573300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a7e0a19756e697175655f6b6579735f6b65795f62797465735f6964781002180122096b65795f62797465733002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201200a077072696d61727910001a0269641a096b65795f6279746573200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c08a89","value":"030aff050a127370616e5f73746174735f6275636b6574731838200128013a00423b0a02696410011a0d080e100018003000508617600020002a1167656e5f72616e646f6d5f7575696428293000680070007800800100880100980100422f0a0973616d706c655f696410021a0d080e10001800300050861760002000300068007000780080010088010098010042320a0c73746172745f6b65795f696410031a0d080e10001800300050861760002000300068007000780080010088010098010042300a0a656e645f6b65795f696410041a0d080e100018003000508617600020003000680070007800800100880100980100422d0a08726571756573747310051a0c080110401800300050146000200030006800700078008001008801009801004806529a010a077072696d61727910011801220269642a0973616d706c655f69642a0c73746172745f6b65795f69642a0a656e645f6b65795f69642a087265717565737473300140004a10080010001a00200028003000380040005a0070027003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a7a0a156275636b6574735f73616d706c655f69645f69647810021800220973616d706c655f69643002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2014a0a077072696d61727910001a0269641a0973616d706c655f69641a0c73746172745f6b65795f69641a0a656e645f6b65795f69641a087265717565737473200120022003200420052800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c18a89","value":"030ab2040a127370616e5f73746174735f73616d706c65731839200128013a00423b0a02696410011a0d080e100018003000508617600020002a1167656e5f72616e646f6d5f757569642829300068007000780080010088010098010042440a0b73616d706c655f74696d6510021a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100480352720a077072696d61727910011801220269642a0b73616d706c655f74696d65300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a7e0a1773616d706c65735f73616d706c655f74696d655f69647810021801220b73616d706c655f74696d653002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201220a077072696d61727910001a0269641a0b73616d706c655f74696d65200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c28a89","value":"030aa6030a1c7370616e5f73746174735f74656e616e745f626f756e646172696573183a200128013a00422e0a0974656e616e745f696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a626f756e64617269657310021a0c08081000180030005011600020003000680070007800800100880100980100480352780a077072696d61727910011801220974656e616e745f69642a0a626f756e646172696573300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201280a077072696d61727910001a0974656e616e745f69641a0a626f756e646172696573200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c38a89","value":"030aae060a0d7461736b5f7061796c6f616473183b200128013a0042270a02696410011a0c0807100018003000501960002000300068007000780080010088010098010042420a076372656174656410021a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422a0a056f776e657210031a0c08071000180030005019600020003000680070007800800100880100980100422d0a086f776e65725f696410041a0c080c100018003000501a60002000300068007000780080010088010098010042300a0b6d696e5f76657273696f6e10051a0c0807100018003000501960002000300068007000780080010088010098010042300a0b6465736372697074696f6e10061a0c0807100018003000501960002001300068007000780080010088010098010042290a047479706510071a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510081a0c08081000180030005011600020003000680070007800800100880100980100480952b2010a077072696d61727910011801220269642a07637265617465642a056f776e65722a086f776e65725f69642a0b6d696e5f76657273696f6e2a0b6465736372697074696f6e2a04747970652a0576616c7565300140004a10080010001a00200028003000380040005a0070027003700470057006700770087a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201620a077072696d61727910001a0269641a07637265617465641a056f776e65721a086f776e65725f69641a0b6d696e5f76657273696f6e1a0b6465736372697074696f6e1a04747970651a0576616c7565200120022003200420052006200720082800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c48a89","value":"030aff050a0c74656e616e745f7461736b73183c200128013a00422e0a0974656e616e745f696410011a0c08011040180030005014600020003000680070007800800100880100980100422b0a0669737375657210021a0c08071000180030005019600020003000680070007800800100880100980100422c0a077461736b5f696410031a0c0801104018003000501460002000300068007000780080010088010098010042420a076372656174656410041a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422f0a0a7061796c6f61645f696410051a0c08071000180030005019600020003000680070007800800100880100980100422a0a056f776e657210061a0c08071000180030005019600020003000680070007800800100880100980100422d0a086f776e65725f696410071a0c080c100018003000501a600020003000680070007800800100880100980100480852b1010a077072696d61727910011801220974656e616e745f6964220669737375657222077461736b5f69642a07637265617465642a0a7061796c6f61645f69642a056f776e65722a086f776e65725f69643001300230034000400040004a10080010001a00200028003000380040005a0070047005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2015d0a077072696d61727910001a0974656e616e745f69641a066973737565721a077461736b5f69641a07637265617465641a0a7061796c6f61645f69641a056f776e65721a086f776e65725f696420012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c58a89","value":"030af1180a1273746174656d656e745f6163746976697479183d200128013a0042330a0d616767726567617465645f747310011a0d080910001800300050a00960002000300068007000780080010088010098010042330a0e66696e6765727072696e745f696410021a0c08081000180030005011600020003000680070007800800100880100980100423f0a1a7472616e73616374696f6e5f66696e6765727072696e745f696410031a0c08081000180030005011600020003000680070007800800100880100980100422e0a09706c616e5f6861736810041a0c08081000180030005011600020003000680070007800800100880100980100422d0a086170705f6e616d6510051a0c0807100018003000501960002000300068007000780080010088010098010042380a0c6167675f696e74657276616c10061a13080610001800300050a20960006a040800100020003000680070007800800100880100980100422e0a086d6574616461746110071a0d081210001800300050da1d60002000300068007000780080010088010098010042300a0a7374617469737469637310081a0d081210001800300050da1d600020003000680070007800800100880100980100422a0a04706c616e10091a0d081210001800300050da1d600020003000680070007800800100880100980100425f0a15696e6465785f7265636f6d6d656e646174696f6e73100a1a1d080f100018003000380750f1075a0c080710001800300050196000600020002a1241525241595b5d3a3a3a535452494e475b5d300068007000780080010088010098010042340a0f657865637574696f6e5f636f756e74100b1a0c08011040180030005014600020003000680070007800800100880100980100423d0a17657865637574696f6e5f746f74616c5f7365636f6e6473100c1a0d080210401800300050bd0560002000300068007000780080010088010098010042450a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e6473100d1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e6473100e1a0d080210401800300050bd0560002000300068007000780080010088010098010042370a116370755f73716c5f6176675f6e616e6f73100f1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b736572766963655f6c6174656e63795f6176675f7365636f6e647310101a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b736572766963655f6c6174656e63795f7039395f7365636f6e647310111a0d080210401800300050bd05600020003000680070007800800100880100980100481252cd030a077072696d61727910011801220d616767726567617465645f7473220e66696e6765727072696e745f6964221a7472616e73616374696f6e5f66696e6765727072696e745f69642209706c616e5f6861736822086170705f6e616d652a0c6167675f696e74657276616c2a086d657461646174612a0a737461746973746963732a04706c616e2a15696e6465785f7265636f6d6d656e646174696f6e732a0f657865637574696f6e5f636f756e742a17657865637574696f6e5f746f74616c5f7365636f6e64732a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e64732a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64732a116370755f73716c5f6176675f6e616e6f732a1b736572766963655f6c6174656e63795f6176675f7365636f6e64732a1b736572766963655f6c6174656e63795f7039395f7365636f6e647330013002300330043005400040004000400040004a10080010001a00200028003000380040005a007006700770087009700a700b700c700d700e700f701070117a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005aa0010a1266696e6765727072696e745f69645f69647810021800220e66696e6765727072696e745f6964221a7472616e73616374696f6e5f66696e6765727072696e745f696430023003380138043805400040004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a97010a13657865637574696f6e5f636f756e745f69647810031800220d616767726567617465645f7473220f657865637574696f6e5f636f756e743001300b3802380338043805400040014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aa9010a1b657865637574696f6e5f746f74616c5f7365636f6e64735f69647810041800220d616767726567617465645f74732217657865637574696f6e5f746f74616c5f7365636f6e64733001300c3802380338043805400040014a10080010001a00200028003000380040005a00680c7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab1010a1f636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64735f69647810051800220d616767726567617465645f7473221b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64733001300e3802380338043805400040014a10080010001a00200028003000380040005a00680e7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a9d010a156370755f73716c5f6176675f6e616e6f735f69647810061800220d616767726567617465645f747322116370755f73716c5f6176675f6e616e6f733001300f3802380338043805400040014a10080010001a00200028003000380040005a00680f7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab1010a1f736572766963655f6c6174656e63795f6176675f7365636f6e64735f69647810071800220d616767726567617465645f7473221b736572766963655f6c6174656e63795f6176675f7365636f6e6473300130103802380338043805400040014a10080010001a00200028003000380040005a0068107a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab1010a1f736572766963655f6c6174656e63795f7039395f7365636f6e64735f69647810081800220d616767726567617465645f7473221b736572766963655f6c6174656e63795f7039395f7365636f6e6473300130113802380338043805400040014a10080010001a00200028003000380040005a0068117a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060096a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b201f5020a077072696d61727910001a0d616767726567617465645f74731a0e66696e6765727072696e745f69641a1a7472616e73616374696f6e5f66696e6765727072696e745f69641a09706c616e5f686173681a086170705f6e616d651a0c6167675f696e74657276616c1a086d657461646174611a0a737461746973746963731a04706c616e1a15696e6465785f7265636f6d6d656e646174696f6e731a0f657865637574696f6e5f636f756e741a17657865637574696f6e5f746f74616c5f7365636f6e64731a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e64731a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64731a116370755f73716c5f6176675f6e616e6f731a1b736572766963655f6c6174656e63795f6176675f7365636f6e64731a1b736572766963655f6c6174656e63795f7039395f7365636f6e6473200120022003200420052006200720082009200a200b200c200d200e200f201020112800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c68a89","value":"030adc150a147472616e73616374696f6e5f6163746976697479183e200128013a0042330a0d616767726567617465645f747310011a0d080910001800300050a00960002000300068007000780080010088010098010042330a0e66696e6765727072696e745f696410021a0c08081000180030005011600020003000680070007800800100880100980100422d0a086170705f6e616d6510031a0c0807100018003000501960002000300068007000780080010088010098010042380a0c6167675f696e74657276616c10041a13080610001800300050a20960006a040800100020003000680070007800800100880100980100422e0a086d6574616461746110051a0d081210001800300050da1d60002000300068007000780080010088010098010042300a0a7374617469737469637310061a0d081210001800300050da1d600020003000680070007800800100880100980100422a0a05717565727910071a0c0807100018003000501960002000300068007000780080010088010098010042340a0f657865637574696f6e5f636f756e7410081a0c08011040180030005014600020003000680070007800800100880100980100423d0a17657865637574696f6e5f746f74616c5f7365636f6e647310091a0d080210401800300050bd0560002000300068007000780080010088010098010042450a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e6473100a1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e6473100b1a0d080210401800300050bd0560002000300068007000780080010088010098010042370a116370755f73716c5f6176675f6e616e6f73100c1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b736572766963655f6c6174656e63795f6176675f7365636f6e6473100d1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b736572766963655f6c6174656e63795f7039395f7365636f6e6473100e1a0d080210401800300050bd05600020003000680070007800800100880100980100480f5286030a077072696d61727910011801220d616767726567617465645f7473220e66696e6765727072696e745f696422086170705f6e616d652a0c6167675f696e74657276616c2a086d657461646174612a0a737461746973746963732a0571756572792a0f657865637574696f6e5f636f756e742a17657865637574696f6e5f746f74616c5f7365636f6e64732a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e64732a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64732a116370755f73716c5f6176675f6e616e6f732a1b736572766963655f6c6174656e63795f6176675f7365636f6e64732a1b736572766963655f6c6174656e63795f7039395f7365636f6e64733001300230034000400040004a10080010001a00200028003000380040005a00700470057006700770087009700a700b700c700d700e7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a7e0a1266696e6765727072696e745f69645f69647810021800220e66696e6765727072696e745f696430023801380340004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a93010a13657865637574696f6e5f636f756e745f69647810031800220d616767726567617465645f7473220f657865637574696f6e5f636f756e743001300838023803400040014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aa5010a1b657865637574696f6e5f746f74616c5f7365636f6e64735f69647810041800220d616767726567617465645f74732217657865637574696f6e5f746f74616c5f7365636f6e64733001300938023803400040014a10080010001a00200028003000380040005a0068097a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aad010a1f636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64735f69647810051800220d616767726567617465645f7473221b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64733001300b38023803400040014a10080010001a00200028003000380040005a00680b7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a99010a156370755f73716c5f6176675f6e616e6f735f69647810061800220d616767726567617465645f747322116370755f73716c5f6176675f6e616e6f733001300c38023803400040014a10080010001a00200028003000380040005a00680c7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aad010a1f736572766963655f6c6174656e63795f6176675f7365636f6e64735f69647810071800220d616767726567617465645f7473221b736572766963655f6c6174656e63795f6176675f7365636f6e64733001300d38023803400040014a10080010001a00200028003000380040005a00680d7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aad010a1f736572766963655f6c6174656e63795f7039395f7365636f6e64735f69647810081800220d616767726567617465645f7473221b736572766963655f6c6174656e63795f7039395f7365636f6e64733001300e38023803400040014a10080010001a00200028003000380040005a00680e7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060096a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b201b2020a077072696d61727910001a0d616767726567617465645f74731a0e66696e6765727072696e745f69641a086170705f6e616d651a0c6167675f696e74657276616c1a086d657461646174611a0a737461746973746963731a0571756572791a0f657865637574696f6e5f636f756e741a17657865637574696f6e5f746f74616c5f7365636f6e64731a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e64731a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64731a116370755f73716c5f6176675f6e616e6f731a1b736572766963655f6c6174656e63795f6176675f7365636f6e64731a1b736572766963655f6c6174656e63795f7039395f7365636f6e6473200120022003200420052006200720082009200a200b200c200d200e2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c78a89","value":"030adb020a0d74656e616e745f69645f736571183f200128013a00422a0a0576616c756510011a0c08011040180030005014600020003000680070007800800100880100980100480052660a077072696d61727910011800220576616c7565300140004a10080010001a00200028003000380040005a007a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060006a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800100880103980100b201160a077072696d61727910001a0576616c756520012801b80100c20100e2011e0801100118ffffffffffffffff7f20012800320408001000380142004800e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880300a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c88a89","value":"030ac50a0a0f6d7663635f737461746973746963731840200128013a0042450a0a637265617465645f617410011a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a300068007000780080010088010098010042300a0b64617461626173655f696410021a0c08011040180030005014600020003000680070007800800100880100980100422d0a087461626c655f696410031a0c08011040180030005014600020003000680070007800800100880100980100422d0a08696e6465785f696410041a0c0801104018003000501460002000300068007000780080010088010098010042300a0a7374617469737469637310051a0d081210001800300050da1d60002000300068007000780080010088010098010042ab010a3f637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f313610061a0c080110201800300050176000200030015a456d6f6428666e763332286d643528637264625f696e7465726e616c2e646174756d735f746f5f627974657328637265617465645f61742929292c2031363a3a3a494e543829680070007800800101880100980100480752e4020a146d7663635f737461746973746963735f706b657910011801223f637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f3136220a637265617465645f6174220b64617461626173655f696422087461626c655f69642208696e6465785f69642a0a7374617469737469637330063001300230033004400040004000400040004a10080010001a00200028003000380040005a0070057a0408002000800100880100900104980101a201720801123f637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f31361810220a637265617465645f6174220b64617461626173655f69642208696e6465785f696422087461626c655f6964a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a201bd020ae901637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f313620494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e54382c20383a3a3a494e54382c20393a3a3a494e54382c2031303a3a3a494e54382c2031313a3a3a494e54382c2031323a3a3a494e54382c2031333a3a3a494e54382c2031343a3a3a494e54382c2031353a3a3a494e5438291245636865636b5f637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f313618002806300038014002b201500a077072696d61727910001a0a637265617465645f61741a0b64617461626173655f69641a087461626c655f69641a08696e6465785f69641a0a73746174697374696373200120022003200420052805b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c98a89","value":"030abb170a1e7472616e73616374696f6e5f657865637574696f6e5f696e7369676874731841200128013a0042340a0e7472616e73616374696f6e5f696410011a0d080e100018003000508617600020003000680070007800800100880100980100423f0a1a7472616e73616374696f6e5f66696e6765727072696e745f696410021a0c0808100018003000501160002000300068007000780080010088010098010042320a0d71756572795f73756d6d61727910031a0c0807100018003000501960002001300068007000780080010088010098010042310a0c696d706c696369745f74786e10041a0c08001000180030005010600020013000680070007800800100880100980100422f0a0a73657373696f6e5f696410051a0c0807100018003000501960002000300068007000780080010088010098010042300a0a73746172745f74696d6510061a0d080910001800300050a009600020013000680070007800800100880100980100422e0a08656e645f74696d6510071a0d080910001800300050a009600020013000680070007800800100880100980100422e0a09757365725f6e616d6510081a0c08071000180030005019600020013000680070007800800100880100980100422d0a086170705f6e616d6510091a0c0807100018003000501960002001300068007000780080010088010098010042320a0d757365725f7072696f72697479100a1a0c08071000180030005019600020013000680070007800800100880100980100422c0a0772657472696573100b1a0c0801104018003000501460002001300068007000780080010088010098010042360a116c6173745f72657472795f726561736f6e100c1a0c08071000180030005019600020013000680070007800800100880100980100423e0a0870726f626c656d73100d1a1d080f104018003000380150f8075a0c080110401800300050146000600020013000680070007800800100880100980100423c0a06636175736573100e1a1d080f104018003000380150f8075a0c08011040180030005014600060002001300068007000780080010088010098010042480a1273746d745f657865637574696f6e5f696473100f1a1d080f100018003000380750f1075a0c08071000180030005019600060002001300068007000780080010088010098010042320a0d6370755f73716c5f6e616e6f7310101a0c0801104018003000501460002001300068007000780080010088010098010042340a0f6c6173745f6572726f725f636f646510111a0c08071000180030005019600020013000680070007800800100880100980100422b0a0673746174757310121a0c08011040180030005014600020013000680070007800800100880100980100423b0a0f636f6e74656e74696f6e5f74696d6510131a13080610001800300050a20960006a04080010002001300068007000780080010088010098010042350a0f636f6e74656e74696f6e5f696e666f10141a0d081210001800300050da1d600020013000680070007800800100880100980100422d0a0764657461696c7310151a0d081210001800300050da1d60002001300068007000780080010088010098010042420a076372656174656410161a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a300068007000780080010088010098010042a0010a2a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313610171a0c080110201800300050176000200030015a4f6d6f6428666e763332286d643528637264625f696e7465726e616c2e646174756d735f746f5f627974657328656e645f74696d652c2073746172745f74696d652929292c2031363a3a3a494e543829680070007800800101880100980100481852b6030a077072696d61727910011801220e7472616e73616374696f6e5f69642a1a7472616e73616374696f6e5f66696e6765727072696e745f69642a0d71756572795f73756d6d6172792a0c696d706c696369745f74786e2a0a73657373696f6e5f69642a0a73746172745f74696d652a08656e645f74696d652a09757365725f6e616d652a086170705f6e616d652a0d757365725f7072696f726974792a07726574726965732a116c6173745f72657472795f726561736f6e2a0870726f626c656d732a066361757365732a1273746d745f657865637574696f6e5f6964732a0d6370755f73716c5f6e616e6f732a0f6c6173745f6572726f725f636f64652a067374617475732a0f636f6e74656e74696f6e5f74696d652a0f636f6e74656e74696f6e5f696e666f2a0764657461696c732a0763726561746564300140004a10080010001a00200028003000380040005a0070027003700470057006700770087009700a700b700c700d700e700f70107011701270137014701570167a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a94010a1e7472616e73616374696f6e5f66696e6765727072696e745f69645f69647810021800221a7472616e73616374696f6e5f66696e6765727072696e745f69643002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005af2010a0e74696d655f72616e67655f69647810031800222a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f3136220a73746172745f74696d652208656e645f74696d6530173006300738014000400140014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a201460801122a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313618102208656e645f74696d65220a73746172745f74696d65a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060046a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a20193020ad401637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313620494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e54382c20383a3a3a494e54382c20393a3a3a494e54382c2031303a3a3a494e54382c2031313a3a3a494e54382c2031323a3a3a494e54382c2031333a3a3a494e54382c2031343a3a3a494e54382c2031353a3a3a494e5438291230636865636b5f637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313618002817300038014002b201e6020a077072696d61727910001a0e7472616e73616374696f6e5f69641a1a7472616e73616374696f6e5f66696e6765727072696e745f69641a0d71756572795f73756d6d6172791a0c696d706c696369745f74786e1a0a73657373696f6e5f69641a0a73746172745f74696d651a08656e645f74696d651a09757365725f6e616d651a086170705f6e616d651a0d757365725f7072696f726974791a07726574726965731a116c6173745f72657472795f726561736f6e1a0870726f626c656d731a066361757365731a1273746d745f657865637574696f6e5f6964731a0d6370755f73716c5f6e616e6f731a0f6c6173745f6572726f725f636f64651a067374617475731a0f636f6e74656e74696f6e5f74696d651a0f636f6e74656e74696f6e5f696e666f1a0764657461696c731a0763726561746564200120022003200420052006200720082009200a200b200c200d200e200f20102011201220132014201520162800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ca8a89","value":"030a861e0a1c73746174656d656e745f657865637574696f6e5f696e7369676874731842200128013a00422f0a0a73657373696f6e5f696410011a0c0807100018003000501960002000300068007000780080010088010098010042340a0e7472616e73616374696f6e5f696410021a0d080e100018003000508617600020003000680070007800800100880100980100423f0a1a7472616e73616374696f6e5f66696e6765727072696e745f696410031a0c0808100018003000501160002000300068007000780080010088010098010042310a0c73746174656d656e745f696410041a0c08071000180030005019600020003000680070007800800100880100980100423d0a1873746174656d656e745f66696e6765727072696e745f696410051a0c08081000180030005011600020003000680070007800800100880100980100422c0a0770726f626c656d10061a0c08011040180030005014600020013000680070007800800100880100980100423c0a0663617573657310071a1d080f104018003000380150f8075a0c080110401800300050146000600020013000680070007800800100880100980100422a0a05717565727910081a0c08071000180030005019600020013000680070007800800100880100980100422b0a0673746174757310091a0c0801104018003000501460002001300068007000780080010088010098010042300a0a73746172745f74696d65100a1a0d080910001800300050a009600020013000680070007800800100880100980100422e0a08656e645f74696d65100b1a0d080910001800300050a009600020013000680070007800800100880100980100422e0a0966756c6c5f7363616e100c1a0c08001000180030005010600020013000680070007800800100880100980100422e0a09757365725f6e616d65100d1a0c08071000180030005019600020013000680070007800800100880100980100422d0a086170705f6e616d65100e1a0c0807100018003000501960002001300068007000780080010088010098010042320a0d757365725f7072696f72697479100f1a0c0807100018003000501960002001300068007000780080010088010098010042320a0d64617461626173655f6e616d6510101a0c08071000180030005019600020013000680070007800800100880100980100422e0a09706c616e5f6769737410111a0c08071000180030005019600020013000680070007800800100880100980100422c0a077265747269657310121a0c0801104018003000501460002001300068007000780080010088010098010042360a116c6173745f72657472795f726561736f6e10131a0c0807100018003000501960002001300068007000780080010088010098010042480a12657865637574696f6e5f6e6f64655f69647310141a1d080f104018003000380150f8075a0c080110401800300050146000600020013000680070007800800100880100980100424b0a15696e6465785f7265636f6d6d656e646174696f6e7310151a1d080f100018003000380750f1075a0c08071000180030005019600060002001300068007000780080010088010098010042310a0c696d706c696369745f74786e10161a0c0800100018003000501060002001300068007000780080010088010098010042320a0d6370755f73716c5f6e616e6f7310171a0c08011040180030005014600020013000680070007800800100880100980100422f0a0a6572726f725f636f646510181a0c08071000180030005019600020013000680070007800800100880100980100423b0a0f636f6e74656e74696f6e5f74696d6510191a13080610001800300050a20960006a04080010002001300068007000780080010088010098010042350a0f636f6e74656e74696f6e5f696e666f101a1a0d081210001800300050da1d600020013000680070007800800100880100980100422d0a0764657461696c73101b1a0d081210001800300050da1d60002001300068007000780080010088010098010042420a0763726561746564101c1a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a300068007000780080010088010098010042a0010a2a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f3136101d1a0c080110201800300050176000200030015a4f6d6f6428666e763332286d643528637264625f696e7465726e616c2e646174756d735f746f5f627974657328656e645f74696d652c2073746172745f74696d652929292c2031363a3a3a494e543829680070007800800101880100980100481e529a040a077072696d61727910011801220c73746174656d656e745f6964220e7472616e73616374696f6e5f69642a0a73657373696f6e5f69642a1a7472616e73616374696f6e5f66696e6765727072696e745f69642a1873746174656d656e745f66696e6765727072696e745f69642a0770726f626c656d2a066361757365732a0571756572792a067374617475732a0a73746172745f74696d652a08656e645f74696d652a0966756c6c5f7363616e2a09757365725f6e616d652a086170705f6e616d652a0d757365725f7072696f726974792a0d64617461626173655f6e616d652a09706c616e5f676973742a07726574726965732a116c6173745f72657472795f726561736f6e2a12657865637574696f6e5f6e6f64655f6964732a15696e6465785f7265636f6d6d656e646174696f6e732a0c696d706c696369745f74786e2a0d6370755f73716c5f6e616e6f732a0a6572726f725f636f64652a0f636f6e74656e74696f6e5f74696d652a0f636f6e74656e74696f6e5f696e666f2a0764657461696c732a076372656174656430043002400040004a10080010001a00200028003000380040005a007001700370057006700770087009700a700b700c700d700e700f7010701170127013701470157016701770187019701a701b701c7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a7c0a127472616e73616374696f6e5f69645f69647810021800220e7472616e73616374696f6e5f69643002380440004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab4010a1e7472616e73616374696f6e5f66696e6765727072696e745f69645f69647810031800221a7472616e73616374696f6e5f66696e6765727072696e745f6964220a73746172745f74696d652208656e645f74696d653003300a300b380438024000400140014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab0010a1c73746174656d656e745f66696e6765727072696e745f69645f69647810041800221873746174656d656e745f66696e6765727072696e745f6964220a73746172745f74696d652208656e645f74696d653005300a300b380438024000400140014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005af4010a0e74696d655f72616e67655f69647810051800222a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f3136220a73746172745f74696d652208656e645f74696d65301d300a300b380438024000400140014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a201460801122a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313618102208656e645f74696d65220a73746172745f74696d65a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060066a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a20193020ad401637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313620494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e54382c20383a3a3a494e54382c20393a3a3a494e54382c2031303a3a3a494e54382c2031313a3a3a494e54382c2031323a3a3a494e54382c2031333a3a3a494e54382c2031343a3a3a494e54382c2031353a3a3a494e5438291230636865636b5f637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f31361800281d300038014002b201c8030a077072696d61727910001a0a73657373696f6e5f69641a0e7472616e73616374696f6e5f69641a1a7472616e73616374696f6e5f66696e6765727072696e745f69641a0c73746174656d656e745f69641a1873746174656d656e745f66696e6765727072696e745f69641a0770726f626c656d1a066361757365731a0571756572791a067374617475731a0a73746172745f74696d651a08656e645f74696d651a0966756c6c5f7363616e1a09757365725f6e616d651a086170705f6e616d651a0d757365725f7072696f726974791a0d64617461626173655f6e616d651a09706c616e5f676973741a07726574726965731a116c6173745f72657472795f726561736f6e1a12657865637574696f6e5f6e6f64655f6964731a15696e6465785f7265636f6d6d656e646174696f6e731a0c696d706c696369745f74786e1a0d6370755f73716c5f6e616e6f731a0a6572726f725f636f64651a0f636f6e74656e74696f6e5f74696d651a0f636f6e74656e74696f6e5f696e666f1a0764657461696c731a0763726561746564200120022003200420052006200720082009200a200b200c200d200e200f2010201120122013201420152016201720182019201a201b201c2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89cb8a89","value":"030ad31c0a0e7461626c655f6d657461646174611843200128013a00422a0a0564625f696410011a0c08011040180030005014600020003000680070007800800100880100980100422d0a087461626c655f696410021a0c08011040180030005014600020003000680070007800800100880100980100422c0a0764625f6e616d6510031a0c0807100018003000501960002000300068007000780080010088010098010042300a0b736368656d615f6e616d6510041a0c08071000180030005019600020003000680070007800800100880100980100422f0a0a7461626c655f6e616d6510051a0c0807100018003000501960002000300068007000780080010088010098010042320a0d746f74616c5f636f6c756d6e7310061a0c0801104018003000501460002000300068007000780080010088010098010042320a0d746f74616c5f696e646578657310071a0c08011040180030005014600020003000680070007800800100880100980100423f0a0973746f72655f69647310081a1d080f104018003000380150f8075a0c080110401800300050146000600020003000680070007800800100880100980100423b0a167265706c69636174696f6e5f73697a655f627974657310091a0c0801104018003000501460002000300068007000780080010088010098010042310a0c746f74616c5f72616e676573100a1a0c08011040180030005014600020003000680070007800800100880100980100423a0a15746f74616c5f6c6976655f646174615f6279746573100b1a0c0801104018003000501460002000300068007000780080010088010098010042350a10746f74616c5f646174615f6279746573100c1a0c0801104018003000501460002000300068007000780080010088010098010042340a0e706572635f6c6976655f64617461100d1a0d080210401800300050bd0560002000300068007000780080010088010098010042360a116c6173745f7570646174655f6572726f72100e1a0c0807100018003000501960002001300068007000780080010088010098010042470a0c6c6173745f75706461746564100f1a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422f0a0a7461626c655f7479706510101a0c08071000180030005019600020003000680070007800800100880100980100422d0a0764657461696c7310111a0d081210001800300050da1d60002000300068007000780080010088010098010042a4010a2c637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f313610121a0c080110201800300050176000200030015a516d6f6428666e763332286d643528637264625f696e7465726e616c2e646174756d735f746f5f6279746573287461626c655f69642c206c6173745f757064617465642929292c2031363a3a3a494e543829680070007800800101880100980100481352f2020a077072696d61727910011801220564625f696422087461626c655f69642a0764625f6e616d652a0b736368656d615f6e616d652a0a7461626c655f6e616d652a0d746f74616c5f636f6c756d6e732a0d746f74616c5f696e64657865732a0973746f72655f6964732a167265706c69636174696f6e5f73697a655f62797465732a0c746f74616c5f72616e6765732a15746f74616c5f6c6976655f646174615f62797465732a10746f74616c5f646174615f62797465732a0e706572635f6c6976655f646174612a116c6173745f7570646174655f6572726f722a0c6c6173745f757064617465642a0a7461626c655f747970652a0764657461696c7330013002400040004a10080010001a00200028003000380040005a007003700470057006700770087009700a700b700c700d700e700f701070117a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005aa3010a237265706c69636174696f6e5f73697a655f62797465735f7461626c655f69645f6964781002180022167265706c69636174696f6e5f73697a655f627974657322087461626c655f6964300930023801400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a8f010a19746f74616c5f72616e6765735f7461626c655f69645f69647810031800220c746f74616c5f72616e67657322087461626c655f6964300a30023801400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a91010a1a746f74616c5f636f6c756d6e735f7461626c655f69645f69647810041800220d746f74616c5f636f6c756d6e7322087461626c655f6964300630023801400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a91010a1a746f74616c5f696e64657865735f7461626c655f69645f69647810051800220d746f74616c5f696e646578657322087461626c655f6964300730023801400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a8f010a15706572635f6c6976655f646174615f69645f69647810061800220e706572635f6c6976655f6461746122087461626c655f6964300d30023801400140004a10080010001a00200028003000380040005a00680d7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005afc010a106c6173745f757064617465645f69647810071800222c637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f3136220c6c6173745f7570646174656422087461626c655f69643012300f300238014000400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a2014a0801122c637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f31361810220c6c6173745f7570646174656422087461626c655f6964a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a730a0b64625f6e616d655f67696e10081800220764625f6e616d6530033801380240004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80101e00100e90100000000000000005a790a0e7461626c655f6e616d655f67696e10091800220a7461626c655f6e616d6530053801380240004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80101e00100e90100000000000000005a7b0a0f736368656d615f6e616d655f67696e100a1800220b736368656d615f6e616d6530043801380240004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80101e00100e90100000000000000005a770a0d73746f72655f6964735f67696e100b1800220973746f72655f69647330083801380240004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80100e00100e9010000000000000000600c6a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a20197020ad601637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f313620494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e54382c20383a3a3a494e54382c20393a3a3a494e54382c2031303a3a3a494e54382c2031313a3a3a494e54382c2031323a3a3a494e54382c2031333a3a3a494e54382c2031343a3a3a494e54382c2031353a3a3a494e5438291232636865636b5f637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f313618002812300038014002b201a0020a077072696d61727910001a0564625f69641a087461626c655f69641a0764625f6e616d651a0b736368656d615f6e616d651a0a7461626c655f6e616d651a0d746f74616c5f636f6c756d6e731a0d746f74616c5f696e64657865731a0973746f72655f6964731a167265706c69636174696f6e5f73697a655f62797465731a0c746f74616c5f72616e6765731a15746f74616c5f6c6976655f646174615f62797465731a10746f74616c5f646174615f62797465731a0e706572635f6c6976655f646174611a116c6173745f7570646174655f6572726f721a0c6c6173745f757064617465641a0a7461626c655f747970651a0764657461696c73200120022003200420052006200720082009200a200b200c200d200e200f201020112800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8c"} +,{"key":"8d"} +,{"key":"8d89888a89","value":"031080808040188080808002220308c0702803500058007801"} +,{"key":"8d89898a89","value":"031080808040188080808002220308c0702805500058007801"} +,{"key":"8d89938a89","value":"03220308d804500158017800"} +,{"key":"8d89988a89","value":"031080808040188080808002220308901c2805500058007801"} +,{"key":"8d89998a89","value":"031080808040188080808002220308c0702805500058007801"} +,{"key":"8d899a8a89","value":"03220308c070500158017800"} +,{"key":"8d899e8a89","value":"031080808040188080808002220308d8042805500058007801"} +,{"key":"8d89a18a89","value":"03220308d804500158017800"} +,{"key":"8d89a38a89","value":"03220308d804500158017800"} +,{"key":"8d89b58a89","value":"03220308a038500158017800"} +,{"key":"8e"} +,{"key":"8f"} +,{"key":"8f898888","value":"01c801"} +,{"key":"90"} +,{"key":"90898988","value":"0a2a160c080110001a0020002a004200160673797374656d13021304"} +,{"key":"908a1273797374656d000188","value":"0389"} +,{"key":"908b8a8988","value":"03"} +,{"key":"91"} +,{"key":"93"} +,{"key":"94"} +,{"key":"95"} +,{"key":"96"} +,{"key":"97"} +,{"key":"98"} +,{"key":"99"} +,{"key":"9a"} +,{"key":"9b"} +,{"key":"9c"} +,{"key":"9d"} +,{"key":"9e"} +,{"key":"9f"} +,{"key":"a0"} +,{"key":"a1"} +,{"key":"a2"} +,{"key":"a3"} +,{"key":"a4"} +,{"key":"a5"} +,{"key":"a6"} +,{"key":"a68988881273797374656d00018c89","value":"0102"} +,{"key":"a6898988127075626c696300018c89","value":"013a"} +,{"key":"a68989a512636f6d6d656e747300018c89","value":"0130"} +,{"key":"a68989a51264617461626173655f726f6c655f73657474696e677300018c89","value":"0158"} +,{"key":"a68989a51264657363726970746f7200018c89","value":"0106"} +,{"key":"a68989a51264657363726970746f725f69645f73657100018c89","value":"010e"} +,{"key":"a68989a5126576656e746c6f6700018c89","value":"0118"} +,{"key":"a68989a51265787465726e616c5f636f6e6e656374696f6e7300018c89","value":"016a"} +,{"key":"a68989a5126a6f625f696e666f00018c89","value":"016c"} +,{"key":"a68989a5126a6f627300018c89","value":"011e"} +,{"key":"a68989a5126a6f696e5f746f6b656e7300018c89","value":"0152"} +,{"key":"a68989a5126c6561736500018c89","value":"0116"} +,{"key":"a68989a5126c6f636174696f6e7300018c89","value":"012a"} +,{"key":"a68989a5126d6967726174696f6e7300018c89","value":"0150"} +,{"key":"a68989a5126d7663635f7374617469737469637300018c89","value":"018001"} +,{"key":"a68989a5126e616d65737061636500018c89","value":"013c"} +,{"key":"a68989a51270726976696c6567657300018c89","value":"0168"} +,{"key":"a68989a51270726f7465637465645f74735f6d65746100018c89","value":"013e"} +,{"key":"a68989a51270726f7465637465645f74735f7265636f72647300018c89","value":"0140"} +,{"key":"a68989a51272616e67656c6f6700018c89","value":"011a"} +,{"key":"a68989a512726567696f6e5f6c6976656e65737300018c89","value":"0112"} +,{"key":"a68989a5127265706c69636174696f6e5f636f6e73747261696e745f737461747300018c89","value":"0132"} +,{"key":"a68989a5127265706c69636174696f6e5f637269746963616c5f6c6f63616c697469657300018c89","value":"0134"} +,{"key":"a68989a5127265706c69636174696f6e5f737461747300018c89","value":"0136"} +,{"key":"a68989a5127265706f7274735f6d65746100018c89","value":"0138"} +,{"key":"a68989a512726f6c655f69645f73657100018c89","value":"0160"} +,{"key":"a68989a512726f6c655f6d656d6265727300018c89","value":"012e"} +,{"key":"a68989a512726f6c655f6f7074696f6e7300018c89","value":"0142"} +,{"key":"a68989a5127363686564756c65645f6a6f627300018c89","value":"014a"} +,{"key":"a68989a51273657474696e677300018c89","value":"010c"} +,{"key":"a68989a5127370616e5f636f6e66696775726174696f6e7300018c89","value":"015e"} +,{"key":"a68989a5127370616e5f636f756e7400018c89","value":"0166"} +,{"key":"a68989a5127370616e5f73746174735f6275636b65747300018c89","value":"0170"} +,{"key":"a68989a5127370616e5f73746174735f73616d706c657300018c89","value":"0172"} +,{"key":"a68989a5127370616e5f73746174735f74656e616e745f626f756e64617269657300018c89","value":"0174"} +,{"key":"a68989a5127370616e5f73746174735f756e697175655f6b65797300018c89","value":"016e"} +,{"key":"a68989a51273716c5f696e7374616e63657300018c89","value":"015c"} +,{"key":"a68989a51273716c6c6976656e65737300018c89","value":"014e"} +,{"key":"a68989a51273746174656d656e745f616374697669747900018c89","value":"017a"} +,{"key":"a68989a51273746174656d656e745f62756e646c655f6368756e6b7300018c89","value":"0144"} +,{"key":"a68989a51273746174656d656e745f646961676e6f737469637300018c89","value":"0148"} +,{"key":"a68989a51273746174656d656e745f646961676e6f73746963735f726571756573747300018c89","value":"0146"} +,{"key":"a68989a51273746174656d656e745f657865637574696f6e5f696e73696768747300018c89","value":"018401"} +,{"key":"a68989a51273746174656d656e745f7374617469737469637300018c89","value":"0154"} +,{"key":"a68989a5127461626c655f6d6574616461746100018c89","value":"018601"} +,{"key":"a68989a5127461626c655f7374617469737469637300018c89","value":"0128"} +,{"key":"a68989a5127461736b5f7061796c6f61647300018c89","value":"0176"} +,{"key":"a68989a51274656e616e745f69645f73657100018c89","value":"017e"} +,{"key":"a68989a51274656e616e745f73657474696e677300018c89","value":"0164"} +,{"key":"a68989a51274656e616e745f7461736b7300018c89","value":"0178"} +,{"key":"a68989a51274656e616e745f757361676500018c89","value":"015a"} +,{"key":"a68989a51274656e616e747300018c89","value":"0110"} +,{"key":"a68989a5127472616e73616374696f6e5f616374697669747900018c89","value":"017c"} +,{"key":"a68989a5127472616e73616374696f6e5f657865637574696f6e5f696e73696768747300018c89","value":"018201"} +,{"key":"a68989a5127472616e73616374696f6e5f7374617469737469637300018c89","value":"0156"} +,{"key":"a68989a512756900018c89","value":"011c"} +,{"key":"a68989a512757365727300018c89","value":"0108"} +,{"key":"a68989a5127765625f73657373696f6e7300018c89","value":"0126"} +,{"key":"a68989a5127a6f6e657300018c89","value":"010a"} +,{"key":"a7"} +,{"key":"a8"} +,{"key":"a9"} +,{"key":"aa"} +,{"key":"ab"} +,{"key":"ac"} +,{"key":"ad"} +,{"key":"ae"} +,{"key":"af"} +,{"key":"b0"} +,{"key":"b1"} +,{"key":"b2"} +,{"key":"b3"} +,{"key":"b4"} +,{"key":"b5"} +,{"key":"b6"} +,{"key":"b7"} +,{"key":"b8"} +,{"key":"b8898888","value":"01c801"} +,{"key":"ba"} +,{"key":"bb"} +,{"key":"bc"} +,{"key":"bd"} +,{"key":"be"} +,{"key":"bf"} +,{"key":"c0"} +,{"key":"c1"} +,{"key":"c2"} +,{"key":"c3"} +,{"key":"c4"} +,{"key":"c5"} +,{"key":"c6"} +,{"key":"c7"} +,{"key":"c7898888","value":"0102"} +,{"key":"c8"} +,{"key":"c9"} +,{"key":"ca"} +,{"key":"cb"} +] \ No newline at end of file diff --git a/pkg/sql/catalog/bootstrap/data/24_3_system.sha256 b/pkg/sql/catalog/bootstrap/data/24_3_system.sha256 new file mode 100644 index 000000000000..65fa88af17dd --- /dev/null +++ b/pkg/sql/catalog/bootstrap/data/24_3_system.sha256 @@ -0,0 +1 @@ +d7d054210f72c7bb7dd2e82fb55f95a3b7b84fa63cf63177f8ed06b1c95ab792 \ No newline at end of file diff --git a/pkg/sql/catalog/bootstrap/data/24_3_tenant.keys b/pkg/sql/catalog/bootstrap/data/24_3_tenant.keys new file mode 100644 index 000000000000..a1ccb51d72ea --- /dev/null +++ b/pkg/sql/catalog/bootstrap/data/24_3_tenant.keys @@ -0,0 +1,126 @@ +[{"key":""} +,{"key":"8b89898a89","value":"0312450a0673797374656d10011a250a0d0a0561646d696e1080101880100a0c0a04726f6f7410801018801012046e6f646518032200280140004a006a0808181003180020007000"} +,{"key":"8b898b8a89","value":"030a94030a0a64657363726970746f721803200128013a0042270a02696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a64657363726970746f7210021a0c08081000180030005011600020013000680070007800800100880100980100480352710a077072696d61727910011801220269642a0a64657363726970746f72300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b201130a077072696d61727910001a02696420012800b201240a1066616d5f325f64657363726970746f7210021a0a64657363726970746f7220022802b80103c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b898c8a89","value":"030acd050a0575736572731804200128013a00422d0a08757365726e616d6510011a0c0807100018003000501960002000300068007000780080010088010098010042330a0e68617368656450617373776f726410021a0c0808100018003000501160002001300068007000780080010088010098010042320a066973526f6c6510031a0c08001000180030005010600020002a0566616c73653000680070007800800100880100980100422c0a07757365725f696410041a0c080c100018003000501a60002000300068007000780080010088010098010048055290010a077072696d617279100118012208757365726e616d652a0e68617368656450617373776f72642a066973526f6c652a07757365725f6964300140004a10080010001a00200028003000380040005a007002700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a740a1175736572735f757365725f69645f696478100218012207757365725f69643004380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201240a077072696d61727910001a08757365726e616d651a07757365725f6964200120042804b2012c0a1466616d5f325f68617368656450617373776f726410021a0e68617368656450617373776f726420022802b2011c0a0c66616d5f335f6973526f6c6510031a066973526f6c6520032803b80104c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b898d8a89","value":"030a83030a057a6f6e65731805200128013a0042270a02696410011a0c08011040180030005014600020003000680070007800800100880100980100422b0a06636f6e66696710021a0c080810001800300050116000200130006800700078008001008801009801004803526d0a077072696d61727910011801220269642a06636f6e666967300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201130a077072696d61727910001a02696420012800b2011c0a0c66616d5f325f636f6e66696710021a06636f6e66696720022802b80103c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b898e8a89","value":"030ac2040a0873657474696e67731806200128013a0042290a046e616d6510011a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510021a0c0807100018003000501960002000300068007000780080010088010098010042440a0b6c6173745570646174656410031a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422e0a0976616c75655479706510041a0c080710001800300050196000200130006800700078008001008801009801004805528a010a077072696d6172791001180122046e616d652a0576616c75652a0b6c617374557064617465642a0976616c756554797065300140004a10080010001a00200028003000380040005a007002700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201590a2666616d5f305f6e616d655f76616c75655f6c617374557064617465645f76616c75655479706510001a046e616d651a0576616c75651a0b6c617374557064617465641a0976616c75655479706520012002200320042800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b898f8a89","value":"030adf020a1164657363726970746f725f69645f7365711807200128013a00422a0a0576616c756510011a0c08011040180030005014600020003000680070007800800100880100980100480052660a077072696d61727910011800220576616c7565300140004a10080010001a00200028003000380040005a007a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060006a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800100880103980100b201160a077072696d61727910001a0576616c756520012801b80100c20100e2011e0801100118ffffffffffffffff7f20012800320408001000380142004800e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880300a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89908a89","value":"030afe060a0774656e616e74731808200128013a0042270a02696410011a0c0801104018003000501460002000300068007000780080010088010098010042310a0661637469766510021a0c08001000180030005010600020002a0474727565300168007000780080010088010098010042290a04696e666f10031a0c0808100018003000501160002001300068007000780080010088010098010042290a046e616d6510041a0c08071000180030005019600020013000680070007800800100880100980100422f0a0a646174615f737461746510051a0c0801104018003000501460002001300068007000780080010088010098010042310a0c736572766963655f6d6f646510061a0c080110401800300050146000200130006800700078008001008801009801004807529b010a077072696d61727910011801220269642a066163746976652a04696e666f2a046e616d652a0a646174615f73746174652a0c736572766963655f6d6f6465300140004a10080010001a00200028003000380040005a00700270037004700570067a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a700a1074656e616e74735f6e616d655f6964781002180122046e616d653004380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a80010a1874656e616e74735f736572766963655f6d6f64655f69647810031800220c736572766963655f6d6f64653006380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060046a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b2014b0a077072696d61727910001a0269641a066163746976651a04696e666f1a046e616d651a0a646174615f73746174651a0c736572766963655f6d6f64652001200220032004200520062800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89918a89","value":"030aba030a0f726567696f6e5f6c6976656e6573731809200128013a0042300a0b637264625f726567696f6e10011a0c0808100018003000501160002000300068007000780080010088010098010042340a0e756e617661696c61626c655f617410021a0d080510001800300050da086000200130006800700078008001008801009801004803528b010a14726567696f6e5f6c6976656e6573735f706b657910011801220b637264625f726567696f6e2a0e756e617661696c61626c655f6174300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2012e0a077072696d61727910001a0b637264625f726567696f6e1a0e756e617661696c61626c655f6174200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89938a89","value":"030a80050a056c65617365180b200128013a00422c0a07646573635f696410011a0c08011040180030005014600020003000680070007800800100880100980100422c0a0776657273696f6e10021a0c0801104018003000501460002000300068007000780080010088010098010042340a0f73716c5f696e7374616e63655f696410031a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a73657373696f6e5f696410041a0c0808100018003000501160002000300068007000780080010088010098010042300a0b637264625f726567696f6e10051a0c08081000180030005011600020003000680070007800800100880100980100480652a9010a077072696d61727910031801220b637264625f726567696f6e2207646573635f6964220776657273696f6e220a73657373696f6e5f69642a0f73716c5f696e7374616e63655f6964300530013002300440004000400040004a10080010001a00200028003000380040005a0070037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060046a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201530a077072696d61727910001a07646573635f69641a0776657273696f6e1a0f73716c5f696e7374616e63655f69641a0a73657373696f6e5f69641a0b637264625f726567696f6e200120022003200420052803b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89948a89","value":"030a93060a086576656e746c6f67180c200128013a00422f0a0974696d657374616d7010011a0d080510001800300050da08600020003000680070007800800100880100980100422e0a096576656e745479706510021a0c08071000180030005019600020003000680070007800800100880100980100422d0a08746172676574494410031a0c0801104018003000501460002000300068007000780080010088010098010042300a0b7265706f7274696e67494410041a0c0801104018003000501460002000300068007000780080010088010098010042290a04696e666f10051a0c0807100018003000501960002001300068007000780080010088010098010042380a08756e69717565494410061a0c08081000180030005011600020002a09757569645f763428293000680070007800800100880100980100480752a8010a077072696d61727910011801220974696d657374616d702208756e6971756549442a096576656e74547970652a0874617267657449442a0b7265706f7274696e6749442a04696e666f30013006400040004a10080010001a00200028003000380040005a0070027003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201260a077072696d61727910001a0974696d657374616d701a08756e697175654944200120062800b201220a0f66616d5f325f6576656e745479706510021a096576656e745479706520022802b201200a0e66616d5f335f746172676574494410031a08746172676574494420032803b201260a1166616d5f345f7265706f7274696e67494410041a0b7265706f7274696e67494420042804b201180a0a66616d5f355f696e666f10051a04696e666f20052805b80106c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89958a89","value":"030af2060a0872616e67656c6f67180d200128013a00422f0a0974696d657374616d7010011a0d080510001800300050da08600020003000680070007800800100880100980100422c0a0772616e6765494410021a0c08011040180030005014600020003000680070007800800100880100980100422c0a0773746f7265494410031a0c08011040180030005014600020003000680070007800800100880100980100422e0a096576656e745479706510041a0c0807100018003000501960002000300068007000780080010088010098010042310a0c6f7468657252616e6765494410051a0c0801104018003000501460002001300068007000780080010088010098010042290a04696e666f10061a0c08071000180030005019600020013000680070007800800100880100980100423d0a08756e69717565494410071a0c08011040180030005014600020002a0e756e697175655f726f77696428293000680070007800800100880100980100480852b3010a077072696d61727910011801220974696d657374616d702208756e6971756549442a0772616e676549442a0773746f726549442a096576656e74547970652a0c6f7468657252616e676549442a04696e666f30013007400040004a10080010001a00200028003000380040005a00700270037004700570067a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201260a077072696d61727910001a0974696d657374616d701a08756e697175654944200120072800b2011e0a0d66616d5f325f72616e6765494410021a0772616e6765494420022802b2011e0a0d66616d5f335f73746f7265494410031a0773746f7265494420032803b201220a0f66616d5f345f6576656e745479706510041a096576656e745479706520042804b201280a1266616d5f355f6f7468657252616e6765494410051a0c6f7468657252616e6765494420052805b201180a0a66616d5f365f696e666f10061a04696e666f20062806b80107c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89968a89","value":"030aea030a027569180e200128013a0042280a036b657910011a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510021a0c0808100018003000501160002001300068007000780080010088010098010042310a0b6c6173745570646174656410031a0d080510001800300050da086000200030006800700078008001008801009801004804527c0a077072696d6172791001180122036b65792a0576616c75652a0b6c61737455706461746564300140004a10080010001a00200028003000380040005a00700270037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201140a077072696d61727910001a036b657920012800b2011a0a0b66616d5f325f76616c756510021a0576616c756520022802b201260a1166616d5f335f6c6173745570646174656410031a0b6c6173745570646174656420032803b80104c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89978a89","value":"030a8c100a046a6f6273180f200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f77696428293000680070007800800100880100980100422b0a0673746174757310021a0c0807100018003000501960002000300068007000780080010088010098010042400a076372656174656410031a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d50300068007000780080010088010098010042340a0f64726f707065645f7061796c6f616410041a0c0808100018003000501160002001300168007000780080010088010098010042350a1064726f707065645f70726f677265737310051a0c0808100018003000501160002001300168007000780080010088010098010042340a0f637265617465645f62795f7479706510061a0c0807100018003000501960002001300068007000780080010088010098010042320a0d637265617465645f62795f696410071a0c0801104018003000501460002001300068007000780080010088010098010042350a10636c61696d5f73657373696f6e5f696410081a0c0808100018003000501160002001300068007000780080010088010098010042360a11636c61696d5f696e7374616e63655f696410091a0c08011040180030005014600020013000680070007800800100880100980100422d0a086e756d5f72756e73100a1a0c08011040180030005014600020013000680070007800800100880100980100422e0a086c6173745f72756e100b1a0d080510001800300050da08600020013000680070007800800100880100980100422d0a086a6f625f74797065100c1a0c08071000180030005019600020013000680070007800800100880100980100480d5290020a077072696d61727910011801220269642a067374617475732a07637265617465642a0f64726f707065645f7061796c6f61642a1064726f707065645f70726f67726573732a0f637265617465645f62795f747970652a0d637265617465645f62795f69642a10636c61696d5f73657373696f6e5f69642a11636c61696d5f696e7374616e63655f69642a086e756d5f72756e732a086c6173745f72756e2a086a6f625f74797065300140004a10080010001a00200028003000380040005a0070027003700470057006700770087009700a700b700c7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a86010a176a6f62735f7374617475735f637265617465645f696478100218002206737461747573220763726561746564300230033801400040004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aae010a266a6f62735f637265617465645f62795f747970655f637265617465645f62795f69645f69647810031800220f637265617465645f62795f74797065220d637265617465645f62795f69642a06737461747573300630073801400040004a10080010001a00200028003000380040005a0070027a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ac6020a126a6f62735f72756e5f73746174735f696478100418002210636c61696d5f73657373696f6e5f696422067374617475732207637265617465642a086c6173745f72756e2a086e756d5f72756e732a11636c61696d5f696e7374616e63655f696430083002300338014000400040004a10080010001a00200028003000380040005a00700b700a70097a0408002000800100880100900103980100a20106080012001800a80100b20100ba01810173746174757320494e20282772756e6e696e67273a3a3a535452494e472c2027726576657274696e67273a3a3a535452494e472c202770656e64696e67273a3a3a535452494e472c202770617573652d726571756573746564273a3a3a535452494e472c202763616e63656c2d726571756573746564273a3a3a535452494e4729c00100c80100d00100e00100e90100000000000000005a750a116a6f62735f6a6f625f747970655f6964781005180022086a6f625f74797065300c380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060066a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b20183010a1f66616d5f305f69645f7374617475735f637265617465645f7061796c6f616410001a0269641a067374617475731a07637265617465641a0f64726f707065645f7061796c6f61641a0f637265617465645f62795f747970651a0d637265617465645f62795f69641a086a6f625f74797065200120022003200420062007200c2800b201220a0870726f677265737310011a1064726f707065645f70726f677265737320052805b2014c0a05636c61696d10021a10636c61696d5f73657373696f6e5f69641a11636c61696d5f696e7374616e63655f69641a086e756d5f72756e731a086c6173745f72756e20082009200a200b2800b80103c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b899b8a89","value":"030a940c0a0c7765625f73657373696f6e731813200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042310a0c68617368656453656372657410021a0c08081000180030005011600020003000680070007800800100880100980100422d0a08757365726e616d6510031a0c0807100018003000501960002000300068007000780080010088010098010042420a0963726561746564417410041a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422f0a0965787069726573417410051a0d080510001800300050da08600020003000680070007800800100880100980100422f0a097265766f6b6564417410061a0d080510001800300050da0860002001300068007000780080010088010098010042430a0a6c61737455736564417410071a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422e0a096175646974496e666f10081a0c08071000180030005019600020013000680070007800800100880100980100422c0a07757365725f696410091a0c080c100018003000501a600020003000680070007800800100880100980100480a52cc010a077072696d61727910011801220269642a0c6861736865645365637265742a08757365726e616d652a096372656174656441742a096578706972657341742a097265766f6b656441742a0a6c6173745573656441742a096175646974496e666f2a07757365725f6964300140004a10080010001a00200028003000380040005a00700270037004700570067007700870097a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a7f0a1a7765625f73657373696f6e735f6578706972657341745f6964781002180022096578706972657341743005380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a7f0a1a7765625f73657373696f6e735f6372656174656441745f6964781003180022096372656174656441743004380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a7f0a1a7765625f73657373696f6e735f7265766f6b656441745f6964781004180022097265766f6b656441743006380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a81010a1b7765625f73657373696f6e735f6c6173745573656441745f69647810051800220a6c6173745573656441743007380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060066a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201c6010a5166616d5f305f69645f6861736865645365637265745f757365726e616d655f6372656174656441745f6578706972657341745f7265766f6b656441745f6c6173745573656441745f6175646974496e666f10001a0269641a0c6861736865645365637265741a08757365726e616d651a096372656174656441741a096578706972657341741a097265766f6b656441741a0a6c6173745573656441741a096175646974496e666f1a07757365725f69642001200220032004200520062007200820092800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b899c8a89","value":"030aaf0a0a107461626c655f737461746973746963731814200128013a00422c0a077461626c65494410011a0c0801104018003000501460002000300068007000780080010088010098010042400a0b737461746973746963494410021a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042290a046e616d6510031a0c08071000180030005019600020013000680070007800800100880100980100423f0a09636f6c756d6e49447310041a1d080f104018003000380150f8075a0c08011040180030005014600060002000300068007000780080010088010098010042420a0963726561746564417410051a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422d0a08726f77436f756e7410061a0c0801104018003000501460002000300068007000780080010088010098010042320a0d64697374696e6374436f756e7410071a0c08011040180030005014600020003000680070007800800100880100980100422e0a096e756c6c436f756e7410081a0c08011040180030005014600020003000680070007800800100880100980100422e0a09686973746f6772616d10091a0c0808100018003000501160002001300068007000780080010088010098010042360a0761766753697a65100a1a0c08011040180030005014600020002a08303a3a3a494e5438300068007000780080010088010098010042350a107061727469616c507265646963617465100b1a0c0807100018003000501960002001300068007000780080010088010098010042340a0f66756c6c5374617469737469634944100c1a0c08011040180030005014600020013000680070007800800100880100980100480d5284020a077072696d6172791001180122077461626c654944220b73746174697374696349442a046e616d652a09636f6c756d6e4944732a096372656174656441742a08726f77436f756e742a0d64697374696e6374436f756e742a096e756c6c436f756e742a09686973746f6772616d2a0761766753697a652a107061727469616c5072656469636174652a0f66756c6c537461746973746963494430013002400040004a10080010001a00200028003000380040005a007003700470057006700770087009700a700b700c7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b20188020a5d66616d5f305f7461626c6549445f73746174697374696349445f6e616d655f636f6c756d6e4944735f6372656174656441745f726f77436f756e745f64697374696e6374436f756e745f6e756c6c436f756e745f686973746f6772616d10001a077461626c6549441a0b73746174697374696349441a046e616d651a09636f6c756d6e4944731a096372656174656441741a08726f77436f756e741a0d64697374696e6374436f756e741a096e756c6c436f756e741a09686973746f6772616d1a0761766753697a651a107061727469616c5072656469636174651a0f66756c6c5374617469737469634944200120022003200420052006200720082009200a200b200c2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b899d8a89","value":"030ae3040a096c6f636174696f6e731815200128013a0042300a0b6c6f63616c6974794b657910011a0c0807100018003000501960002000300068007000780080010088010098010042320a0d6c6f63616c69747956616c756510021a0c08071000180030005019600020003000680070007800800100880100980100422e0a086c6174697475646510031a0d0803100f1812300050a40d600020003000680070007800800100880100980100422f0a096c6f6e67697475646510041a0d0803100f1812300050a40d60002000300068007000780080010088010098010048055298010a077072696d61727910011801220b6c6f63616c6974794b6579220d6c6f63616c69747956616c75652a086c617469747564652a096c6f6e67697475646530013002400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201710a3266616d5f305f6c6f63616c6974794b65795f6c6f63616c69747956616c75655f6c617469747564655f6c6f6e67697475646510001a0b6c6f63616c6974794b65791a0d6c6f63616c69747956616c75651a086c617469747564651a096c6f6e67697475646520012002200320042800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b899f8a89","value":"030aa20a0a0c726f6c655f6d656d626572731817200128013a0042290a04726f6c6510011a0c08071000180030005019600020003000680070007800800100880100980100422b0a066d656d62657210021a0c08071000180030005019600020003000680070007800800100880100980100422c0a07697341646d696e10031a0c08001000180030005010600020003000680070007800800100880100980100422c0a07726f6c655f696410041a0c080c100018003000501a600020003000680070007800800100880100980100422e0a096d656d6265725f696410051a0c080c100018003000501a60002000300068007000780080010088010098010048065294010a077072696d617279100118012204726f6c6522066d656d6265722a07697341646d696e2a07726f6c655f69642a096d656d6265725f696430013002400040004a10080010001a00200028003000380040005a007003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a750a15726f6c655f6d656d626572735f726f6c655f696478100218002204726f6c653001380240004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a790a17726f6c655f6d656d626572735f6d656d6265725f6964781003180022066d656d6265723002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a7d0a18726f6c655f6d656d626572735f726f6c655f69645f696478100418002207726f6c655f696430043801380240004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a81010a1a726f6c655f6d656d626572735f6d656d6265725f69645f6964781005180022096d656d6265725f696430053801380240004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a96010a22726f6c655f6d656d626572735f726f6c655f69645f6d656d6265725f69645f6b6579100618012207726f6c655f696422096d656d6265725f69643004300538013802400040004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060076a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2011f0a077072696d61727910001a04726f6c651a066d656d626572200120022800b2011e0a0d66616d5f335f697341646d696e10031a07697341646d696e20032803b2011e0a0d66616d5f345f726f6c655f696410041a07726f6c655f696420042804b201220a0f66616d5f355f6d656d6265725f696410051a096d656d6265725f696420052805b80106c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a08a89","value":"030aae040a08636f6d6d656e74731818200128013a0042290a047479706510011a0c08011040180030005014600020003000680070007800800100880100980100422e0a096f626a6563745f696410021a0c08011040180030005014600020003000680070007800800100880100980100422b0a067375625f696410031a0c08011040180030005014600020003000680070007800800100880100980100422c0a07636f6d6d656e7410041a0c080710001800300050196000200030006800700078008001008801009801004805528b010a077072696d6172791001180122047479706522096f626a6563745f696422067375625f69642a07636f6d6d656e743001300230034000400040004a10080010001a00200028003000380040005a0070047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a330a0d0a0561646d696e10e00318e0030a0c0a067075626c6963102018000a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2012c0a077072696d61727910001a04747970651a096f626a6563745f69641a067375625f69642001200220032800b2011e0a0d66616d5f345f636f6d6d656e7410041a07636f6d6d656e7420042804b80105c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a18a89","value":"030aa9060a1c7265706c69636174696f6e5f636f6e73747261696e745f73746174731819200128013a00422c0a077a6f6e655f696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a7375627a6f6e655f696410021a0c0801104018003000501460002000300068007000780080010088010098010042290a047479706510031a0c08071000180030005019600020003000680070007800800100880100980100422b0a06636f6e66696710041a0c08071000180030005019600020003000680070007800800100880100980100422e0a097265706f72745f696410051a0c0801104018003000501460002000300068007000780080010088010098010042350a0f76696f6c6174696f6e5f737461727410061a0d080910001800300050a00960002001300068007000780080010088010098010042350a1076696f6c6174696e675f72616e67657310071a0c08011040180030005014600020003000680070007800800100880100980100480852c2010a077072696d6172791001180122077a6f6e655f6964220a7375627a6f6e655f69642204747970652206636f6e6669672a097265706f72745f69642a0f76696f6c6174696f6e5f73746172742a1076696f6c6174696e675f72616e676573300130023003300440004000400040004a10080010001a00200028003000380040005a007005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2016c0a077072696d61727910001a077a6f6e655f69641a0a7375627a6f6e655f69641a04747970651a06636f6e6669671a097265706f72745f69641a0f76696f6c6174696f6e5f73746172741a1076696f6c6174696e675f72616e67657320012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a28a89","value":"030a92050a1f7265706c69636174696f6e5f637269746963616c5f6c6f63616c6974696573181a200128013a00422c0a077a6f6e655f696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a7375627a6f6e655f696410021a0c08011040180030005014600020003000680070007800800100880100980100422d0a086c6f63616c69747910031a0c08071000180030005019600020003000680070007800800100880100980100422e0a097265706f72745f696410041a0c0801104018003000501460002000300068007000780080010088010098010042330a0e61745f7269736b5f72616e67657310051a0c08011040180030005014600020003000680070007800800100880100980100480652a5010a077072696d6172791001180122077a6f6e655f6964220a7375627a6f6e655f696422086c6f63616c6974792a097265706f72745f69642a0e61745f7269736b5f72616e6765733001300230034000400040004a10080010001a00200028003000380040005a00700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201510a077072696d61727910001a077a6f6e655f69641a0a7375627a6f6e655f69641a086c6f63616c6974791a097265706f72745f69641a0e61745f7269736b5f72616e676573200120022003200420052800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a38a89","value":"030a80070a117265706c69636174696f6e5f7374617473181b200128013a00422c0a077a6f6e655f696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a7375627a6f6e655f696410021a0c08011040180030005014600020003000680070007800800100880100980100422e0a097265706f72745f696410031a0c0801104018003000501460002000300068007000780080010088010098010042310a0c746f74616c5f72616e67657310041a0c0801104018003000501460002000300068007000780080010088010098010042370a12756e617661696c61626c655f72616e67657310051a0c08011040180030005014600020003000680070007800800100880100980100423c0a17756e6465725f7265706c6963617465645f72616e67657310061a0c08011040180030005014600020003000680070007800800100880100980100423b0a166f7665725f7265706c6963617465645f72616e67657310071a0c08011040180030005014600020003000680070007800800100880100980100480852e0010a077072696d6172791001180122077a6f6e655f6964220a7375627a6f6e655f69642a097265706f72745f69642a0c746f74616c5f72616e6765732a12756e617661696c61626c655f72616e6765732a17756e6465725f7265706c6963617465645f72616e6765732a166f7665725f7265706c6963617465645f72616e67657330013002400040004a10080010001a00200028003000380040005a00700370047005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2018e010a077072696d61727910001a077a6f6e655f69641a0a7375627a6f6e655f69641a097265706f72745f69641a0c746f74616c5f72616e6765731a12756e617661696c61626c655f72616e6765731a17756e6465725f7265706c6963617465645f72616e6765731a166f7665725f7265706c6963617465645f72616e67657320012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a48a89","value":"030aff020a0c7265706f7274735f6d657461181c200128013a0042270a02696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0967656e65726174656410021a0d080910001800300050a009600020003000680070007800800100880100980100480352700a077072696d61727910011801220269642a0967656e657261746564300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201200a077072696d61727910001a0269641a0967656e657261746564200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a68a89","value":"030a9e040a096e616d657370616365181e200128013a00422d0a08706172656e74494410011a0c0801104018003000501460002000300068007000780080010088010098010042330a0e706172656e74536368656d61494410021a0c0801104018003000501460002000300068007000780080010088010098010042290a046e616d6510031a0c0807100018003000501960002000300068007000780080010088010098010042270a02696410041a0c080110401800300050146000200130006800700078008001008801009801004805528d010a077072696d617279100118012208706172656e744944220e706172656e74536368656d61494422046e616d652a0269643001300230034000400040004a10080010001a00200028003000380040005a0070047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b201330a077072696d61727910001a08706172656e7449441a0e706172656e74536368656d6149441a046e616d652001200220032800b201140a0866616d5f345f696410041a02696420042804b80105c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a78a89","value":"030aa8050a1170726f7465637465645f74735f6d657461181f200128013a0042340a0973696e676c65746f6e10011a0c08001000180030005010600020002a04747275653000680070007800800100880100980100422c0a0776657273696f6e10021a0c0801104018003000501460002000300068007000780080010088010098010042300a0b6e756d5f7265636f72647310031a0c08011040180030005014600020003000680070007800800100880100980100422e0a096e756d5f7370616e7310041a0c0801104018003000501460002000300068007000780080010088010098010042300a0b746f74616c5f627974657310051a0c08011040180030005014600020003000680070007800800100880100980100480652a0010a077072696d61727910011801220973696e676c65746f6e2a0776657273696f6e2a0b6e756d5f7265636f7264732a096e756d5f7370616e732a0b746f74616c5f6279746573300140004a10080010001a00200028003000380040005a0070027003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100a201260a0973696e676c65746f6e120f636865636b5f73696e676c65746f6e18002801300038004002b201500a077072696d61727910001a0973696e676c65746f6e1a0776657273696f6e1a0b6e756d5f7265636f7264731a096e756d5f7370616e731a0b746f74616c5f6279746573200120022003200420052800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a88a89","value":"030a8c060a1470726f7465637465645f74735f7265636f7264731820200128013a0042280a02696410011a0d080e10001800300050861760002000300068007000780080010088010098010042280a02747310021a0d080310001800300050a40d600020003000680070007800800100880100980100422e0a096d6574615f7479706510031a0c0807100018003000501960002000300068007000780080010088010098010042290a046d65746110041a0c08081000180030005011600020013000680070007800800100880100980100422e0a096e756d5f7370616e7310051a0c08011040180030005014600020003000680070007800800100880100980100422a0a057370616e7310061a0c0808100018003000501160002000300068007000780080010088010098010042340a08766572696669656410071a0c08001000180030005010600020002a0566616c73653000680070007800800100880100980100422b0a0674617267657410081a0c08081000180030005011600020013000680070007800800100880100980100480952aa010a077072696d61727910011801220269642a0274732a096d6574615f747970652a046d6574612a096e756d5f7370616e732a057370616e732a0876657269666965642a06746172676574300140004a10080010001a00200028003000380040005a0070027003700470057006700770087a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b2015a0a077072696d61727910001a0269641a0274731a096d6574615f747970651a046d6574611a096e756d5f7370616e731a057370616e731a0876657269666965641a06746172676574200120022003200420052006200720082800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89a98a89","value":"030a84050a0c726f6c655f6f7074696f6e731821200128013a00422d0a08757365726e616d6510011a0c08071000180030005019600020003000680070007800800100880100980100422b0a066f7074696f6e10021a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510031a0c08071000180030005019600020013000680070007800800100880100980100422c0a07757365725f696410041a0c080c100018003000501a60002000300068007000780080010088010098010048055289010a077072696d617279100118012208757365726e616d6522066f7074696f6e2a0576616c75652a07757365725f696430013002400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a760a1175736572735f757365725f69645f696478100218002207757365725f696430043801380240004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201370a077072696d61727910001a08757365726e616d651a066f7074696f6e1a0576616c75651a07757365725f696420012002200320042800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89aa8a89","value":"030ada030a1773746174656d656e745f62756e646c655f6368756e6b731822200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042300a0b6465736372697074696f6e10021a0c0807100018003000501960002001300068007000780080010088010098010042290a046461746110031a0c080810001800300050116000200030006800700078008001008801009801004804527a0a077072696d61727910011801220269642a0b6465736372697074696f6e2a0464617461300140004a10080010001a00200028003000380040005a00700270037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2012a0a077072696d61727910001a0269641a0b6465736372697074696f6e1a04646174612001200220032800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ab8a89","value":"030ae50c0a1e73746174656d656e745f646961676e6f73746963735f72657175657374731823200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042350a09636f6d706c6574656410021a0c08001000180030005010600020002a0566616c73653000680070007800800100880100980100423a0a1573746174656d656e745f66696e6765727072696e7410031a0c08071000180030005019600020003000680070007800800100880100980100423d0a1873746174656d656e745f646961676e6f73746963735f696410041a0c0801104018003000501460002001300068007000780080010088010098010042320a0c7265717565737465645f617410051a0d080910001800300050a00960002000300068007000780080010088010098010042410a156d696e5f657865637574696f6e5f6c6174656e637910061a13080610001800300050a20960006a04080010002001300068007000780080010088010098010042300a0a657870697265735f617410071a0d080910001800300050a009600020013000680070007800800100880100980100423a0a1473616d706c696e675f70726f626162696c69747910081a0d080210401800300050bd05600020013000680070007800800100880100980100422e0a09706c616e5f6769737410091a0c0807100018003000501960002001300068007000780080010088010098010042330a0e616e74695f706c616e5f67697374100a1a0c0800100018003000501060002001300068007000780080010088010098010042340a087265646163746564100b1a0c08001000180030005010600020002a0566616c73653000680070007800800100880100980100480c529f020a077072696d61727910011801220269642a09636f6d706c657465642a1573746174656d656e745f66696e6765727072696e742a1873746174656d656e745f646961676e6f73746963735f69642a0c7265717565737465645f61742a156d696e5f657865637574696f6e5f6c6174656e63792a0a657870697265735f61742a1473616d706c696e675f70726f626162696c6974792a09706c616e5f676973742a0e616e74695f706c616e5f676973742a087265646163746564300140004a10080010001a00200028003000380040005a0070027003700470057006700770087009700a700b7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005afb010a0d636f6d706c657465645f696478100218002209636f6d706c65746564220269642a1573746174656d656e745f66696e6765727072696e742a156d696e5f657865637574696f6e5f6c6174656e63792a0a657870697265735f61742a1473616d706c696e675f70726f626162696c6974792a09706c616e5f676973742a0e616e74695f706c616e5f676973742a08726564616374656430023001400040004a10080010001a00200028003000380040005a0070037006700770087009700a700b7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a201620a3a73616d706c696e675f70726f626162696c697479204245545745454e20302e303a3a3a464c4f41543820414e4420312e303a3a3a464c4f415438121a636865636b5f73616d706c696e675f70726f626162696c69747918002808300038004002b201cf010a077072696d61727910001a0269641a09636f6d706c657465641a1573746174656d656e745f66696e6765727072696e741a1873746174656d656e745f646961676e6f73746963735f69641a0c7265717565737465645f61741a156d696e5f657865637574696f6e5f6c6174656e63791a0a657870697265735f61741a1473616d706c696e675f70726f626162696c6974791a09706c616e5f676973741a0e616e74695f706c616e5f676973741a087265646163746564200120022003200420052006200720082009200a200b2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ac8a89","value":"030abe060a1573746174656d656e745f646961676e6f73746963731824200128013a0042370a02696410011a0c08011040180030005014600020002a0e756e697175655f726f77696428293000680070007800800100880100980100423a0a1573746174656d656e745f66696e6765727072696e7410021a0c08071000180030005019600020003000680070007800800100880100980100422e0a0973746174656d656e7410031a0c0807100018003000501960002000300068007000780080010088010098010042320a0c636f6c6c65637465645f617410041a0d080910001800300050a009600020003000680070007800800100880100980100422b0a05747261636510051a0d081210001800300050da1d60002001300068007000780080010088010098010042430a0d62756e646c655f6368756e6b7310061a1d080f104018003000380150f8075a0c080110401800300050146000600020013000680070007800800100880100980100422a0a056572726f7210071a0c08071000180030005019600020013000680070007800800100880100980100480852bc010a077072696d61727910011801220269642a1573746174656d656e745f66696e6765727072696e742a0973746174656d656e742a0c636f6c6c65637465645f61742a0574726163652a0d62756e646c655f6368756e6b732a056572726f72300140004a10080010001a00200028003000380040005a007002700370047005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2016c0a077072696d61727910001a0269641a1573746174656d656e745f66696e6765727072696e741a0973746174656d656e741a0c636f6c6c65637465645f61741a0574726163651a0d62756e646c655f6368756e6b731a056572726f7220012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ad8a89","value":"030ad3090a0e7363686564756c65645f6a6f62731825200128013a0042400a0b7363686564756c655f696410011a0c08011040180030005014600020002a0e756e697175655f726f7769642829300068007000780080010088010098010042320a0d7363686564756c655f6e616d6510021a0c0807100018003000501960002000300068007000780080010088010098010042420a076372656174656410031a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422a0a056f776e657210041a0c08071000180030005019600020003000680070007800800100880100980100422e0a086e6578745f72756e10051a0d080910001800300050a00960002001300068007000780080010088010098010042330a0e7363686564756c655f737461746510061a0c0808100018003000501160002001300068007000780080010088010098010042320a0d7363686564756c655f6578707210071a0c0807100018003000501960002001300068007000780080010088010098010042350a107363686564756c655f64657461696c7310081a0c0808100018003000501160002001300068007000780080010088010098010042320a0d6578656375746f725f7479706510091a0c0807100018003000501960002000300068007000780080010088010098010042330a0e657865637574696f6e5f61726773100a1a0c08081000180030005011600020003000680070007800800100880100980100480b52f7010a077072696d61727910011801220b7363686564756c655f69642a0d7363686564756c655f6e616d652a07637265617465642a056f776e65722a086e6578745f72756e2a0e7363686564756c655f73746174652a0d7363686564756c655f657870722a107363686564756c655f64657461696c732a0d6578656375746f725f747970652a0e657865637574696f6e5f61726773300140004a10080010001a00200028003000380040005a0070027003700470057006700770087009700a7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a700a0c6e6578745f72756e5f6964781002180022086e6578745f72756e3005380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201380a05736368656410001a0b7363686564756c655f69641a086e6578745f72756e1a0e7363686564756c655f73746174652001200520062800b201780a056f7468657210011a0d7363686564756c655f6e616d651a07637265617465641a056f776e65721a0d7363686564756c655f657870721a107363686564756c655f64657461696c731a0d6578656375746f725f747970651a0e657865637574696f6e5f61726773200220032004200720082009200a2800b80102c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89af8a89","value":"030aec030a0b73716c6c6976656e6573731827200128013a00422f0a0a73657373696f6e5f696410011a0c0808100018003000501160002000300068007000780080010088010098010042300a0a65787069726174696f6e10021a0d080310001800300050a40d60002000300068007000780080010088010098010042300a0b637264625f726567696f6e10031a0c080810001800300050116000200030006800700078008001008801009801004804528a010a077072696d61727910021801220b637264625f726567696f6e220a73657373696f6e5f69642a0a65787069726174696f6e30033001400040004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201380a077072696d61727910001a0b637264625f726567696f6e1a0a73657373696f6e5f69641a0a65787069726174696f6e2003200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b08a89","value":"030ad9040a0a6d6967726174696f6e731828200128013a00422a0a056d616a6f7210011a0c08011040180030005014600020003000680070007800800100880100980100422a0a056d696e6f7210021a0c08011040180030005014600020003000680070007800800100880100980100422a0a05706174636810031a0c08011040180030005014600020003000680070007800800100880100980100422d0a08696e7465726e616c10041a0c0801104018003000501460002000300068007000780080010088010098010042320a0c636f6d706c657465645f617410051a0d080910001800300050a0096000200030006800700078008001008801009801004806529a010a077072696d6172791001180122056d616a6f7222056d696e6f72220570617463682208696e7465726e616c2a0c636f6d706c657465645f6174300130023003300440004000400040004a10080010001a00200028003000380040005a0070057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201440a077072696d61727910001a056d616a6f721a056d696e6f721a0570617463681a08696e7465726e616c1a0c636f6d706c657465645f6174200120022003200420052805b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b18a89","value":"030ac3030a0b6a6f696e5f746f6b656e731829200128013a0042280a02696410011a0d080e100018003000508617600020003000680070007800800100880100980100422b0a0673656372657410021a0c0808100018003000501160002000300068007000780080010088010098010042300a0a65787069726174696f6e10031a0d080910001800300050a0096000200030006800700078008001008801009801004804527b0a077072696d61727910011801220269642a067365637265742a0a65787069726174696f6e300140004a10080010001a00200028003000380040005a00700270037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2012b0a077072696d61727910001a0269641a067365637265741a0a65787069726174696f6e2001200220032800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b28a89","value":"030a8f280a1473746174656d656e745f73746174697374696373182a200128013a0042330a0d616767726567617465645f747310011a0d080910001800300050a00960002000300068007000780080010088010098010042330a0e66696e6765727072696e745f696410021a0c08081000180030005011600020003000680070007800800100880100980100423f0a1a7472616e73616374696f6e5f66696e6765727072696e745f696410031a0c08081000180030005011600020003000680070007800800100880100980100422e0a09706c616e5f6861736810041a0c08081000180030005011600020003000680070007800800100880100980100422d0a086170705f6e616d6510051a0c08071000180030005019600020003000680070007800800100880100980100422c0a076e6f64655f696410061a0c0801104018003000501460002000300068007000780080010088010098010042380a0c6167675f696e74657276616c10071a13080610001800300050a20960006a040800100020003000680070007800800100880100980100422e0a086d6574616461746110081a0d081210001800300050da1d60002000300068007000780080010088010098010042300a0a7374617469737469637310091a0d081210001800300050da1d600020003000680070007800800100880100980100422a0a04706c616e100a1a0d081210001800300050da1d600020003000680070007800800100880100980100429c020a68637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f38100b1a0c080110201800300050176000200030015a8c016d6f6428666e76333228637264625f696e7465726e616c2e646174756d735f746f5f627974657328616767726567617465645f74732c206170705f6e616d652c2066696e6765727072696e745f69642c206e6f64655f69642c20706c616e5f686173682c207472616e73616374696f6e5f66696e6765727072696e745f696429292c20383a3a3a494e543829680070007800800100880100980100425f0a15696e6465785f7265636f6d6d656e646174696f6e73100c1a1d080f100018003000380750f1075a0c080710001800300050196000600020002a1241525241595b5d3a3a3a535452494e475b5d3000680070007800800100880100980100426c0a0d696e64657865735f7573616765100d1a0d081210001800300050da1d6000200130005a3728737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e27696e6465786573273a3a3a535452494e4768007000780080010188010098010042710a0f657865637574696f6e5f636f756e74100e1a0c080110401800300050146000200130005a3b2828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e27636e74273a3a3a535452494e47293a3a494e5438680070007800800100880100980100428a010a0f736572766963655f6c6174656e6379100f1a0d080210401800300050bd056000200130005a53282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e277376634c6174273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f4154386800700078008001008801009801004297010a0d6370755f73716c5f6e616e6f7310101a0d080210401800300050bd056000200130005a62282828737461746973746963732d3e27657865637574696f6e5f73746174697374696373273a3a3a535452494e47292d3e2763707553514c4e616e6f73273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100429c010a0f636f6e74656e74696f6e5f74696d6510111a0d080210401800300050bd056000200130005a65282828737461746973746963732d3e27657865637574696f6e5f73746174697374696373273a3a3a535452494e47292d3e27636f6e74656e74696f6e54696d65273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f41543868007000780080010088010098010042dc010a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d6510121a0d080210401800300050bd056000200130005a95012828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e3e27636e74273a3a3a535452494e47293a3a464c4f415438202a20282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e277376634c6174273a3a3a535452494e47292d3e3e276d65616e273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100428a010a0b7039395f6c6174656e637910131a0d080210401800300050bd056000200130005a57282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e276c6174656e6379496e666f273a3a3a535452494e47292d3e27703939273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100481452c2050a077072696d617279100118012268637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f38220d616767726567617465645f7473220e66696e6765727072696e745f6964221a7472616e73616374696f6e5f66696e6765727072696e745f69642209706c616e5f6861736822086170705f6e616d6522076e6f64655f69642a0c6167675f696e74657276616c2a086d657461646174612a0a737461746973746963732a04706c616e2a15696e6465785f7265636f6d6d656e646174696f6e732a0f657865637574696f6e5f636f756e742a0f736572766963655f6c6174656e63792a0d6370755f73716c5f6e616e6f732a0f636f6e74656e74696f6e5f74696d652a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d652a0b7039395f6c6174656e6379300b30013002300330043005300640004000400040004000400040004a10080010001a00200028003000380040005a00700770087009700a700c700e700f70107011701270137a0408002000800100880100900104980101a201c70108011268637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f381808220d616767726567617465645f747322086170705f6e616d65220e66696e6765727072696e745f696422076e6f64655f69642209706c616e5f68617368221a7472616e73616374696f6e5f66696e6765727072696e745f6964a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005aa7010a1566696e6765727072696e745f73746174735f69647810021800220e66696e6765727072696e745f6964221a7472616e73616374696f6e5f66696e6765727072696e745f696430023003380b3801380438053806400040004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a89010a11696e64657865735f75736167655f69647810031800220d696e64657865735f7573616765300d380b38013802380338043805380640004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80100e00100e90100000000000000005acf010a13657865637574696f6e5f636f756e745f69647810041800220d616767726567617465645f747322086170705f6e616d65220f657865637574696f6e5f636f756e7430013005300e380b38023803380438064000400040014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ad1010a13736572766963655f6c6174656e63795f69647810051800220d616767726567617465645f747322086170705f6e616d65220f736572766963655f6c6174656e637930013005300f380b38023803380438064000400040014a10080010001a00200028003000380040005a00680f7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005acd010a116370755f73716c5f6e616e6f735f69647810061800220d616767726567617465645f747322086170705f6e616d65220d6370755f73716c5f6e616e6f73300130053010380b38023803380438064000400040014a10080010001a00200028003000380040005a0068107a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ad1010a13636f6e74656e74696f6e5f74696d655f69647810071800220d616767726567617465645f747322086170705f6e616d65220f636f6e74656e74696f6e5f74696d65300130053011380b38023803380438064000400040014a10080010001a00200028003000380040005a0068117a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005aef010a22746f74616c5f657374696d617465645f657865637574696f6e5f74696d655f69647810081800220d616767726567617465645f747322086170705f6e616d65221e746f74616c5f657374696d617465645f657865637574696f6e5f74696d65300130053012380b38023803380438064000400040014a10080010001a00200028003000380040005a0068127a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ac9010a0f7039395f6c6174656e63795f69647810091800220d616767726567617465645f747322086170705f6e616d65220b7039395f6c6174656e6379300130053013380b38023803380438064000400040014a10080010001a00200028003000380040005a0068137a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e9010000000000000000600a6a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100a201b9020abc01637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f3820494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e543829126e636865636b5f637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f381800280b300038014002b201a4030a077072696d61727910001a68637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f706c616e5f686173685f7472616e73616374696f6e5f66696e6765727072696e745f69645f73686172645f381a0d616767726567617465645f74731a0e66696e6765727072696e745f69641a1a7472616e73616374696f6e5f66696e6765727072696e745f69641a09706c616e5f686173681a086170705f6e616d651a076e6f64655f69641a0c6167675f696e74657276616c1a086d657461646174611a0a737461746973746963731a04706c616e1a15696e6465785f7265636f6d6d656e646174696f6e731a0f657865637574696f6e5f636f756e741a0f736572766963655f6c6174656e63791a0d6370755f73716c5f6e616e6f731a0f636f6e74656e74696f6e5f74696d651a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d651a0b7039395f6c6174656e6379200b200120022003200420052006200720082009200a200c200e200f20102011201220132800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b38a89","value":"030a95200a167472616e73616374696f6e5f73746174697374696373182b200128013a0042330a0d616767726567617465645f747310011a0d080910001800300050a00960002000300068007000780080010088010098010042330a0e66696e6765727072696e745f696410021a0c08081000180030005011600020003000680070007800800100880100980100422d0a086170705f6e616d6510031a0c08071000180030005019600020003000680070007800800100880100980100422c0a076e6f64655f696410041a0c0801104018003000501460002000300068007000780080010088010098010042380a0c6167675f696e74657276616c10051a13080610001800300050a20960006a040800100020003000680070007800800100880100980100422e0a086d6574616461746110061a0d081210001800300050da1d60002000300068007000780080010088010098010042300a0a7374617469737469637310071a0d081210001800300050da1d60002000300068007000780080010088010098010042cf010a43637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f3810081a0c080110201800300050176000200030015a656d6f6428666e76333228637264625f696e7465726e616c2e646174756d735f746f5f627974657328616767726567617465645f74732c206170705f6e616d652c2066696e6765727072696e745f69642c206e6f64655f696429292c20383a3a3a494e54382968007000780080010088010098010042710a0f657865637574696f6e5f636f756e7410091a0c080110401800300050146000200130005a3b2828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e27636e74273a3a3a535452494e47293a3a494e5438680070007800800100880100980100428a010a0f736572766963655f6c6174656e6379100a1a0d080210401800300050bd056000200130005a53282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e277376634c6174273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f4154386800700078008001008801009801004297010a0d6370755f73716c5f6e616e6f73100b1a0d080210401800300050bd056000200130005a62282828737461746973746963732d3e27657865637574696f6e5f73746174697374696373273a3a3a535452494e47292d3e2763707553514c4e616e6f73273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100429c010a0f636f6e74656e74696f6e5f74696d65100c1a0d080210401800300050bd056000200130005a65282828737461746973746963732d3e27657865637574696f6e5f73746174697374696373273a3a3a535452494e47292d3e27636f6e74656e74696f6e54696d65273a3a3a535452494e47292d3e276d65616e273a3a3a535452494e47293a3a464c4f41543868007000780080010088010098010042dc010a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d65100d1a0d080210401800300050bd056000200130005a95012828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e3e27636e74273a3a3a535452494e47293a3a464c4f415438202a20282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e277376634c6174273a3a3a535452494e47292d3e3e276d65616e273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100428a010a0b7039395f6c6174656e6379100e1a0d080210401800300050bd056000200130005a57282828737461746973746963732d3e2773746174697374696373273a3a3a535452494e47292d3e276c6174656e6379496e666f273a3a3a535452494e47292d3e27703939273a3a3a535452494e47293a3a464c4f415438680070007800800100880100980100480f5280040a077072696d617279100118012243637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f38220d616767726567617465645f7473220e66696e6765727072696e745f696422086170705f6e616d6522076e6f64655f69642a0c6167675f696e74657276616c2a086d657461646174612a0a737461746973746963732a0f657865637574696f6e5f636f756e742a0f736572766963655f6c6174656e63792a0d6370755f73716c5f6e616e6f732a0f636f6e74656e74696f6e5f74696d652a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d652a0b7039395f6c6174656e637930083001300230033004400040004000400040004a10080010001a00200028003000380040005a007005700670077009700a700b700c700d700e7a0408002000800100880100900104980101a2017b08011243637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f381808220d616767726567617465645f747322086170705f6e616d65220e66696e6765727072696e745f696422076e6f64655f6964a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a85010a1566696e6765727072696e745f73746174735f69647810021800220e66696e6765727072696e745f69643002380838013803380440004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005acb010a13657865637574696f6e5f636f756e745f69647810031800220d616767726567617465645f747322086170705f6e616d65220f657865637574696f6e5f636f756e743001300330093808380238044000400040014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005acd010a13736572766963655f6c6174656e63795f69647810041800220d616767726567617465645f747322086170705f6e616d65220f736572766963655f6c6174656e637930013003300a3808380238044000400040014a10080010001a00200028003000380040005a00680a7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ac9010a116370755f73716c5f6e616e6f735f69647810051800220d616767726567617465645f747322086170705f6e616d65220d6370755f73716c5f6e616e6f7330013003300b3808380238044000400040014a10080010001a00200028003000380040005a00680b7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005acd010a13636f6e74656e74696f6e5f74696d655f69647810061800220d616767726567617465645f747322086170705f6e616d65220f636f6e74656e74696f6e5f74696d6530013003300c3808380238044000400040014a10080010001a00200028003000380040005a00680c7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005aeb010a22746f74616c5f657374696d617465645f657865637574696f6e5f74696d655f69647810071800220d616767726567617465645f747322086170705f6e616d65221e746f74616c5f657374696d617465645f657865637574696f6e5f74696d6530013003300d3808380238044000400040014a10080010001a00200028003000380040005a00680d7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e90100000000000000005ac5010a0f7039395f6c6174656e63795f69647810081800220d616767726567617465645f747322086170705f6e616d65220b7039395f6c6174656e637930013003300e3808380238044000400040014a10080010001a00200028003000380040005a00680e7a0408002000800100880100900103980100a20106080012001800a80100b20100ba01286170705f6e616d65204e4f54204c494b4520272420696e7465726e616c25273a3a3a535452494e47c00100c80100d00100e00100e901000000000000000060096a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100a201ef010a9701637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f3820494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e5438291249636865636b5f637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f3818002808300038014002b201b3020a077072696d61727910001a43637264625f696e7465726e616c5f616767726567617465645f74735f6170705f6e616d655f66696e6765727072696e745f69645f6e6f64655f69645f73686172645f381a0d616767726567617465645f74731a0e66696e6765727072696e745f69641a086170705f6e616d651a076e6f64655f69641a0c6167675f696e74657276616c1a086d657461646174611a0a737461746973746963731a0f657865637574696f6e5f636f756e741a0f736572766963655f6c6174656e63791a0d6370755f73716c5f6e616e6f731a0f636f6e74656e74696f6e5f74696d651a1e746f74616c5f657374696d617465645f657865637574696f6e5f74696d651a0b7039395f6c6174656e6379200820012002200320042005200620072009200a200b200c200d200e2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b48a89","value":"030af3050a1664617461626173655f726f6c655f73657474696e6773182c200128013a0042300a0b64617461626173655f696410011a0c080c100018003000501a600020003000680070007800800100880100980100422e0a09726f6c655f6e616d6510021a0c08071000180030005019600020003000680070007800800100880100980100423e0a0873657474696e677310031a1d080f100018003000380750f1075a0c080710001800300050196000600020003000680070007800800100880100980100422c0a07726f6c655f696410041a0c080c100018003000501a60002000300068007000780080010088010098010048055292010a077072696d61727910011801220b64617461626173655f69642209726f6c655f6e616d652a0873657474696e67732a07726f6c655f696430013002400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005aae010a2e64617461626173655f726f6c655f73657474696e67735f64617461626173655f69645f726f6c655f69645f6b657910021801220b64617461626173655f69642207726f6c655f69642a0873657474696e6773300130043802400040004a10080010001a00200028003000380040005a0070037a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201400a077072696d61727910001a0b64617461626173655f69641a09726f6c655f6e616d651a0873657474696e67731a07726f6c655f696420012002200320042800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b58a89","value":"030ac00b0a0c74656e616e745f7573616765182d200128013a00422e0a0974656e616e745f696410011a0c0801104018003000501460002000300068007000780080010088010098010042300a0b696e7374616e63655f696410021a0c0801104018003000501460002000300068007000780080010088010098010042350a106e6578745f696e7374616e63655f696410031a0c0801104018003000501460002000300068007000780080010088010098010042310a0b6c6173745f75706461746510041a0d080510001800300050da0860002000300068007000780080010088010098010042340a0e72755f62757273745f6c696d697410051a0d080210401800300050bd0560002001300068007000780080010088010098010042340a0e72755f726566696c6c5f7261746510061a0d080210401800300050bd0560002001300068007000780080010088010098010042300a0a72755f63757272656e7410071a0d080210401800300050bd0560002001300068007000780080010088010098010042370a1163757272656e745f73686172655f73756d10081a0d080210401800300050bd0560002001300068007000780080010088010098010042360a11746f74616c5f636f6e73756d7074696f6e10091a0c0808100018003000501160002001300068007000780080010088010098010042330a0e696e7374616e63655f6c65617365100a1a0c0808100018003000501160002001300068007000780080010088010098010042310a0c696e7374616e63655f736571100b1a0c0801104018003000501460002001300068007000780080010088010098010042350a0f696e7374616e63655f736861726573100c1a0d080210401800300050bd0560002001300068007000780080010088010098010042320a0d63757272656e745f7261746573100d1a0c08081000180030005011600020013000680070007800800100880100980100422f0a0a6e6578745f7261746573100e1a0c08081000180030005011600020013000680070007800800100880100980100480f52ce020a077072696d61727910011801220974656e616e745f6964220b696e7374616e63655f69642a106e6578745f696e7374616e63655f69642a0b6c6173745f7570646174652a0e72755f62757273745f6c696d69742a0e72755f726566696c6c5f726174652a0a72755f63757272656e742a1163757272656e745f73686172655f73756d2a11746f74616c5f636f6e73756d7074696f6e2a0e696e7374616e63655f6c656173652a0c696e7374616e63655f7365712a0f696e7374616e63655f7368617265732a0d63757272656e745f72617465732a0a6e6578745f726174657330013002400040004a10080010001a00200028003000380040005a007003700470057006700770087009700a700b700c700d700e7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201fc010a077072696d61727910001a0974656e616e745f69641a0b696e7374616e63655f69641a106e6578745f696e7374616e63655f69641a0b6c6173745f7570646174651a0e72755f62757273745f6c696d69741a0e72755f726566696c6c5f726174651a0a72755f63757272656e741a1163757272656e745f73686172655f73756d1a11746f74616c5f636f6e73756d7074696f6e1a0e696e7374616e63655f6c656173651a0c696e7374616e63655f7365711a0f696e7374616e63655f7368617265731a0d63757272656e745f72617465731a0a6e6578745f7261746573200120022003200420052006200720082009200a200b200c200d200e2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b68a89","value":"030ac8060a0d73716c5f696e7374616e636573182e200128013a0042270a02696410011a0c0801104018003000501460002000300068007000780080010088010098010042290a046164647210021a0c08071000180030005019600020013000680070007800800100880100980100422f0a0a73657373696f6e5f696410031a0c08081000180030005011600020013000680070007800800100880100980100422e0a086c6f63616c69747910041a0d081210001800300050da1d600020013000680070007800800100880100980100422d0a0873716c5f6164647210051a0c0807100018003000501960002001300068007000780080010088010098010042300a0b637264625f726567696f6e10061a0c0808100018003000501160002000300068007000780080010088010098010042330a0e62696e6172795f76657273696f6e10071a0c0807100018003000501960002001300068007000780080010088010098010042300a0b69735f647261696e696e6710081a0c08001000180030005010600020013000680070007800800100880100980100480952c3010a077072696d61727910021801220b637264625f726567696f6e220269642a04616464722a0a73657373696f6e5f69642a086c6f63616c6974792a0873716c5f616464722a0e62696e6172795f76657273696f6e2a0b69735f647261696e696e6730063001400040004a10080010001a00200028003000380040005a007002700370047005700770087a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201710a077072696d61727910001a0269641a04616464721a0a73657373696f6e5f69641a086c6f63616c6974791a0873716c5f616464721a0b637264625f726567696f6e1a0e62696e6172795f76657273696f6e1a0b69735f647261696e696e67200120022003200420052006200720082800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b78a89","value":"030a87040a137370616e5f636f6e66696775726174696f6e73182f200128013a00422e0a0973746172745f6b657910011a0c08081000180030005011600020003000680070007800800100880100980100422c0a07656e645f6b657910021a0c08081000180030005011600020003000680070007800800100880100980100422b0a06636f6e66696710031a0c080810001800300050116000200030006800700078008001008801009801004804527f0a077072696d61727910011801220973746172745f6b65792a07656e645f6b65792a06636f6e666967300140004a10080010001a00200028003000380040005a00700270037a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a2012f0a1373746172745f6b6579203c20656e645f6b6579120c636865636b5f626f756e6473180028012802300038004002b2012f0a077072696d61727910001a0973746172745f6b65791a07656e645f6b65791a06636f6e6669672001200220032800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800301880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89b88a89","value":"030ad9020a0b726f6c655f69645f7365711830200128013a00422a0a0576616c756510011a0c08011040180030005014600020003000680070007800800100880100980100480052660a077072696d61727910011800220576616c7565300140004a10080010001a00200028003000380040005a007a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060006a250a0d0a0561646d696e10a00618a0060a0c0a04726f6f7410a00618a00612046e6f64651803800100880103980100b201160a077072696d61727910001a0576616c756520012801b80100c20100e2011a0801106418ffffffff0720642800320408001000380142004800e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880300a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ba8a89","value":"030af0050a0f74656e616e745f73657474696e67731832200128013a00422e0a0974656e616e745f696410011a0c0801104018003000501460002000300068007000780080010088010098010042290a046e616d6510021a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510031a0c0807100018003000501960002000300068007000780080010088010098010042450a0c6c6173745f7570646174656410041a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100422f0a0a76616c75655f7479706510051a0c08071000180030005019600020003000680070007800800100880100980100422b0a06726561736f6e10061a0c08071000180030005019600020013000680070007800800100880100980100480752a5010a077072696d61727910011801220974656e616e745f696422046e616d652a0576616c75652a0c6c6173745f757064617465642a0a76616c75655f747970652a06726561736f6e30013002400040004a10080010001a00200028003000380040005a0070037004700570067a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b20185010a3966616d5f305f74656e616e745f69645f6e616d655f76616c75655f6c6173745f757064617465645f76616c75655f747970655f726561736f6e10001a0974656e616e745f69641a046e616d651a0576616c75651a0c6c6173745f757064617465641a0a76616c75655f747970651a06726561736f6e2001200220032004200520062800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89bb8a89","value":"030abe030a0a7370616e5f636f756e741833200128013a0042340a0973696e676c65746f6e10011a0c08001000180030005010600020002a04747275653000680070007800800100880100980100422f0a0a7370616e5f636f756e7410021a0c08011040180030005014600020003000680070007800800100880100980100480352780a077072696d61727910011801220973696e676c65746f6e2a0a7370616e5f636f756e74300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a201210a0973696e676c65746f6e120a73696e676c655f726f7718002801300038004002b201280a077072696d61727910001a0973696e676c65746f6e1a0a7370616e5f636f756e74200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89bc8a89","value":"030adf070a0a70726976696c656765731834200128013a00422d0a08757365726e616d6510011a0c0807100018003000501960002000300068007000780080010088010098010042290a047061746810021a0c0807100018003000501960002000300068007000780080010088010098010042400a0a70726976696c6567657310031a1d080f100018003000380750f1075a0c08071000180030005019600060002000300068007000780080010088010098010042430a0d6772616e745f6f7074696f6e7310041a1d080f100018003000380750f1075a0c080710001800300050196000600020003000680070007800800100880100980100422c0a07757365725f696410051a0c080c100018003000501a6000200030006800700078008001008801009801004806529d010a077072696d617279100118012208757365726e616d652204706174682a0a70726976696c656765732a0d6772616e745f6f7074696f6e732a07757365725f696430013002400040004a10080010001a00200028003000380040005a007003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00103e00100e90100000000000000005aa7010a1b70726976696c656765735f706174685f757365725f69645f6b6579100218012204706174682207757365725f69642a0a70726976696c656765732a0d6772616e745f6f7074696f6e73300230053801400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005aa7010a1c70726976696c656765735f706174685f757365726e616d655f6b6579100318012204706174682208757365726e616d652a0a70726976696c656765732a0d6772616e745f6f7074696f6e7330023001400040004a10080010001a00200028003000380040005a00700370047a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e901000000000000000060046a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2014b0a077072696d61727910001a08757365726e616d651a04706174681a0a70726976696c656765731a0d6772616e745f6f7074696f6e731a07757365725f6964200120022003200420052800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880304a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89bd8a89","value":"030ada060a1465787465726e616c5f636f6e6e656374696f6e731835200128013a0042340a0f636f6e6e656374696f6e5f6e616d6510011a0c0807100018003000501960002000300068007000780080010088010098010042400a076372656174656410021a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d50300068007000780080010088010098010042400a077570646174656410031a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d50300068007000780080010088010098010042340a0f636f6e6e656374696f6e5f7479706510041a0c0807100018003000501960002000300068007000780080010088010098010042370a12636f6e6e656374696f6e5f64657461696c7310051a0c08081000180030005011600020003000680070007800800100880100980100422a0a056f776e657210061a0c08071000180030005019600020003000680070007800800100880100980100422d0a086f776e65725f696410071a0c080c100018003000501a600020003000680070007800800100880100980100480852c4010a077072696d61727910011801220f636f6e6e656374696f6e5f6e616d652a07637265617465642a07757064617465642a0f636f6e6e656374696f6e5f747970652a12636f6e6e656374696f6e5f64657461696c732a056f776e65722a086f776e65725f6964300140004a10080010001a00200028003000380040005a007002700370047005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201740a077072696d61727910001a0f636f6e6e656374696f6e5f6e616d651a07637265617465641a07757064617465641a0f636f6e6e656374696f6e5f747970651a12636f6e6e656374696f6e5f64657461696c731a056f776e65721a086f776e65725f696420012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89be8a89","value":"030aa0040a086a6f625f696e666f1836200128013a00422b0a066a6f625f696410011a0c08011040180030005014600020003000680070007800800100880100980100422d0a08696e666f5f6b657910021a0c0807100018003000501960002000300068007000780080010088010098010042420a077772697474656e10031a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422a0a0576616c756510041a0c080810001800300050116000200130006800700078008001008801009801004805528b010a077072696d6172791001180122066a6f625f69642208696e666f5f6b657922077772697474656e2a0576616c75653001300230034000400040014a10080010001a00200028003000380040005a0070047a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201370a077072696d61727910001a066a6f625f69641a08696e666f5f6b65791a077772697474656e1a0576616c756520012002200320042804b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89bf8a89","value":"030a9c040a167370616e5f73746174735f756e697175655f6b6579731837200128013a00423b0a02696410011a0d080e100018003000508617600020002a1167656e5f72616e646f6d5f7575696428293000680070007800800100880100980100422e0a096b65795f627974657310021a0c08081000180030005011600020013000680070007800800100880100980100480352700a077072696d61727910011801220269642a096b65795f6279746573300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a7e0a19756e697175655f6b6579735f6b65795f62797465735f6964781002180122096b65795f62797465733002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201200a077072696d61727910001a0269641a096b65795f6279746573200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c08a89","value":"030aff050a127370616e5f73746174735f6275636b6574731838200128013a00423b0a02696410011a0d080e100018003000508617600020002a1167656e5f72616e646f6d5f7575696428293000680070007800800100880100980100422f0a0973616d706c655f696410021a0d080e10001800300050861760002000300068007000780080010088010098010042320a0c73746172745f6b65795f696410031a0d080e10001800300050861760002000300068007000780080010088010098010042300a0a656e645f6b65795f696410041a0d080e100018003000508617600020003000680070007800800100880100980100422d0a08726571756573747310051a0c080110401800300050146000200030006800700078008001008801009801004806529a010a077072696d61727910011801220269642a0973616d706c655f69642a0c73746172745f6b65795f69642a0a656e645f6b65795f69642a087265717565737473300140004a10080010001a00200028003000380040005a0070027003700470057a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a7a0a156275636b6574735f73616d706c655f69645f69647810021800220973616d706c655f69643002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2014a0a077072696d61727910001a0269641a0973616d706c655f69641a0c73746172745f6b65795f69641a0a656e645f6b65795f69641a087265717565737473200120022003200420052800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c18a89","value":"030ab2040a127370616e5f73746174735f73616d706c65731839200128013a00423b0a02696410011a0d080e100018003000508617600020002a1167656e5f72616e646f6d5f757569642829300068007000780080010088010098010042440a0b73616d706c655f74696d6510021a0d080510001800300050da08600020002a116e6f7728293a3a3a54494d455354414d503000680070007800800100880100980100480352720a077072696d61727910011801220269642a0b73616d706c655f74696d65300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00102e00100e90100000000000000005a7e0a1773616d706c65735f73616d706c655f74696d655f69647810021801220b73616d706c655f74696d653002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060036a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201220a077072696d61727910001a0269641a0b73616d706c655f74696d65200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c28a89","value":"030aa6030a1c7370616e5f73746174735f74656e616e745f626f756e646172696573183a200128013a00422e0a0974656e616e745f696410011a0c08011040180030005014600020003000680070007800800100880100980100422f0a0a626f756e64617269657310021a0c08081000180030005011600020003000680070007800800100880100980100480352780a077072696d61727910011801220974656e616e745f69642a0a626f756e646172696573300140004a10080010001a00200028003000380040005a0070027a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201280a077072696d61727910001a0974656e616e745f69641a0a626f756e646172696573200120022802b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c38a89","value":"030aae060a0d7461736b5f7061796c6f616473183b200128013a0042270a02696410011a0c0807100018003000501960002000300068007000780080010088010098010042420a076372656174656410021a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422a0a056f776e657210031a0c08071000180030005019600020003000680070007800800100880100980100422d0a086f776e65725f696410041a0c080c100018003000501a60002000300068007000780080010088010098010042300a0b6d696e5f76657273696f6e10051a0c0807100018003000501960002000300068007000780080010088010098010042300a0b6465736372697074696f6e10061a0c0807100018003000501960002001300068007000780080010088010098010042290a047479706510071a0c08071000180030005019600020003000680070007800800100880100980100422a0a0576616c756510081a0c08081000180030005011600020003000680070007800800100880100980100480952b2010a077072696d61727910011801220269642a07637265617465642a056f776e65722a086f776e65725f69642a0b6d696e5f76657273696f6e2a0b6465736372697074696f6e2a04747970652a0576616c7565300140004a10080010001a00200028003000380040005a0070027003700470057006700770087a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b201620a077072696d61727910001a0269641a07637265617465641a056f776e65721a086f776e65725f69641a0b6d696e5f76657273696f6e1a0b6465736372697074696f6e1a04747970651a0576616c7565200120022003200420052006200720082800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c48a89","value":"030aff050a0c74656e616e745f7461736b73183c200128013a00422e0a0974656e616e745f696410011a0c08011040180030005014600020003000680070007800800100880100980100422b0a0669737375657210021a0c08071000180030005019600020003000680070007800800100880100980100422c0a077461736b5f696410031a0c0801104018003000501460002000300068007000780080010088010098010042420a076372656174656410041a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422f0a0a7061796c6f61645f696410051a0c08071000180030005019600020003000680070007800800100880100980100422a0a056f776e657210061a0c08071000180030005019600020003000680070007800800100880100980100422d0a086f776e65725f696410071a0c080c100018003000501a600020003000680070007800800100880100980100480852b1010a077072696d61727910011801220974656e616e745f6964220669737375657222077461736b5f69642a07637265617465642a0a7061796c6f61645f69642a056f776e65722a086f776e65725f69643001300230034000400040004a10080010001a00200028003000380040005a0070047005700670077a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100b2015d0a077072696d61727910001a0974656e616e745f69641a066973737565721a077461736b5f69641a07637265617465641a0a7061796c6f61645f69641a056f776e65721a086f776e65725f696420012002200320042005200620072800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c58a89","value":"030af1180a1273746174656d656e745f6163746976697479183d200128013a0042330a0d616767726567617465645f747310011a0d080910001800300050a00960002000300068007000780080010088010098010042330a0e66696e6765727072696e745f696410021a0c08081000180030005011600020003000680070007800800100880100980100423f0a1a7472616e73616374696f6e5f66696e6765727072696e745f696410031a0c08081000180030005011600020003000680070007800800100880100980100422e0a09706c616e5f6861736810041a0c08081000180030005011600020003000680070007800800100880100980100422d0a086170705f6e616d6510051a0c0807100018003000501960002000300068007000780080010088010098010042380a0c6167675f696e74657276616c10061a13080610001800300050a20960006a040800100020003000680070007800800100880100980100422e0a086d6574616461746110071a0d081210001800300050da1d60002000300068007000780080010088010098010042300a0a7374617469737469637310081a0d081210001800300050da1d600020003000680070007800800100880100980100422a0a04706c616e10091a0d081210001800300050da1d600020003000680070007800800100880100980100425f0a15696e6465785f7265636f6d6d656e646174696f6e73100a1a1d080f100018003000380750f1075a0c080710001800300050196000600020002a1241525241595b5d3a3a3a535452494e475b5d300068007000780080010088010098010042340a0f657865637574696f6e5f636f756e74100b1a0c08011040180030005014600020003000680070007800800100880100980100423d0a17657865637574696f6e5f746f74616c5f7365636f6e6473100c1a0d080210401800300050bd0560002000300068007000780080010088010098010042450a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e6473100d1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e6473100e1a0d080210401800300050bd0560002000300068007000780080010088010098010042370a116370755f73716c5f6176675f6e616e6f73100f1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b736572766963655f6c6174656e63795f6176675f7365636f6e647310101a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b736572766963655f6c6174656e63795f7039395f7365636f6e647310111a0d080210401800300050bd05600020003000680070007800800100880100980100481252cd030a077072696d61727910011801220d616767726567617465645f7473220e66696e6765727072696e745f6964221a7472616e73616374696f6e5f66696e6765727072696e745f69642209706c616e5f6861736822086170705f6e616d652a0c6167675f696e74657276616c2a086d657461646174612a0a737461746973746963732a04706c616e2a15696e6465785f7265636f6d6d656e646174696f6e732a0f657865637574696f6e5f636f756e742a17657865637574696f6e5f746f74616c5f7365636f6e64732a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e64732a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64732a116370755f73716c5f6176675f6e616e6f732a1b736572766963655f6c6174656e63795f6176675f7365636f6e64732a1b736572766963655f6c6174656e63795f7039395f7365636f6e647330013002300330043005400040004000400040004a10080010001a00200028003000380040005a007006700770087009700a700b700c700d700e700f701070117a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005aa0010a1266696e6765727072696e745f69645f69647810021800220e66696e6765727072696e745f6964221a7472616e73616374696f6e5f66696e6765727072696e745f696430023003380138043805400040004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a97010a13657865637574696f6e5f636f756e745f69647810031800220d616767726567617465645f7473220f657865637574696f6e5f636f756e743001300b3802380338043805400040014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aa9010a1b657865637574696f6e5f746f74616c5f7365636f6e64735f69647810041800220d616767726567617465645f74732217657865637574696f6e5f746f74616c5f7365636f6e64733001300c3802380338043805400040014a10080010001a00200028003000380040005a00680c7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab1010a1f636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64735f69647810051800220d616767726567617465645f7473221b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64733001300e3802380338043805400040014a10080010001a00200028003000380040005a00680e7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a9d010a156370755f73716c5f6176675f6e616e6f735f69647810061800220d616767726567617465645f747322116370755f73716c5f6176675f6e616e6f733001300f3802380338043805400040014a10080010001a00200028003000380040005a00680f7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab1010a1f736572766963655f6c6174656e63795f6176675f7365636f6e64735f69647810071800220d616767726567617465645f7473221b736572766963655f6c6174656e63795f6176675f7365636f6e6473300130103802380338043805400040014a10080010001a00200028003000380040005a0068107a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab1010a1f736572766963655f6c6174656e63795f7039395f7365636f6e64735f69647810081800220d616767726567617465645f7473221b736572766963655f6c6174656e63795f7039395f7365636f6e6473300130113802380338043805400040014a10080010001a00200028003000380040005a0068117a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060096a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b201f5020a077072696d61727910001a0d616767726567617465645f74731a0e66696e6765727072696e745f69641a1a7472616e73616374696f6e5f66696e6765727072696e745f69641a09706c616e5f686173681a086170705f6e616d651a0c6167675f696e74657276616c1a086d657461646174611a0a737461746973746963731a04706c616e1a15696e6465785f7265636f6d6d656e646174696f6e731a0f657865637574696f6e5f636f756e741a17657865637574696f6e5f746f74616c5f7365636f6e64731a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e64731a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64731a116370755f73716c5f6176675f6e616e6f731a1b736572766963655f6c6174656e63795f6176675f7365636f6e64731a1b736572766963655f6c6174656e63795f7039395f7365636f6e6473200120022003200420052006200720082009200a200b200c200d200e200f201020112800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c68a89","value":"030adc150a147472616e73616374696f6e5f6163746976697479183e200128013a0042330a0d616767726567617465645f747310011a0d080910001800300050a00960002000300068007000780080010088010098010042330a0e66696e6765727072696e745f696410021a0c08081000180030005011600020003000680070007800800100880100980100422d0a086170705f6e616d6510031a0c0807100018003000501960002000300068007000780080010088010098010042380a0c6167675f696e74657276616c10041a13080610001800300050a20960006a040800100020003000680070007800800100880100980100422e0a086d6574616461746110051a0d081210001800300050da1d60002000300068007000780080010088010098010042300a0a7374617469737469637310061a0d081210001800300050da1d600020003000680070007800800100880100980100422a0a05717565727910071a0c0807100018003000501960002000300068007000780080010088010098010042340a0f657865637574696f6e5f636f756e7410081a0c08011040180030005014600020003000680070007800800100880100980100423d0a17657865637574696f6e5f746f74616c5f7365636f6e647310091a0d080210401800300050bd0560002000300068007000780080010088010098010042450a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e6473100a1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e6473100b1a0d080210401800300050bd0560002000300068007000780080010088010098010042370a116370755f73716c5f6176675f6e616e6f73100c1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b736572766963655f6c6174656e63795f6176675f7365636f6e6473100d1a0d080210401800300050bd0560002000300068007000780080010088010098010042410a1b736572766963655f6c6174656e63795f7039395f7365636f6e6473100e1a0d080210401800300050bd05600020003000680070007800800100880100980100480f5286030a077072696d61727910011801220d616767726567617465645f7473220e66696e6765727072696e745f696422086170705f6e616d652a0c6167675f696e74657276616c2a086d657461646174612a0a737461746973746963732a0571756572792a0f657865637574696f6e5f636f756e742a17657865637574696f6e5f746f74616c5f7365636f6e64732a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e64732a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64732a116370755f73716c5f6176675f6e616e6f732a1b736572766963655f6c6174656e63795f6176675f7365636f6e64732a1b736572766963655f6c6174656e63795f7039395f7365636f6e64733001300230034000400040004a10080010001a00200028003000380040005a00700470057006700770087009700a700b700c700d700e7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a7e0a1266696e6765727072696e745f69645f69647810021800220e66696e6765727072696e745f696430023801380340004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a93010a13657865637574696f6e5f636f756e745f69647810031800220d616767726567617465645f7473220f657865637574696f6e5f636f756e743001300838023803400040014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aa5010a1b657865637574696f6e5f746f74616c5f7365636f6e64735f69647810041800220d616767726567617465645f74732217657865637574696f6e5f746f74616c5f7365636f6e64733001300938023803400040014a10080010001a00200028003000380040005a0068097a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aad010a1f636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64735f69647810051800220d616767726567617465645f7473221b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64733001300b38023803400040014a10080010001a00200028003000380040005a00680b7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a99010a156370755f73716c5f6176675f6e616e6f735f69647810061800220d616767726567617465645f747322116370755f73716c5f6176675f6e616e6f733001300c38023803400040014a10080010001a00200028003000380040005a00680c7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aad010a1f736572766963655f6c6174656e63795f6176675f7365636f6e64735f69647810071800220d616767726567617465645f7473221b736572766963655f6c6174656e63795f6176675f7365636f6e64733001300d38023803400040014a10080010001a00200028003000380040005a00680d7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005aad010a1f736572766963655f6c6174656e63795f7039395f7365636f6e64735f69647810081800220d616767726567617465645f7473221b736572766963655f6c6174656e63795f7039395f7365636f6e64733001300e38023803400040014a10080010001a00200028003000380040005a00680e7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060096a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800101880103980100b201b2020a077072696d61727910001a0d616767726567617465645f74731a0e66696e6765727072696e745f69641a086170705f6e616d651a0c6167675f696e74657276616c1a086d657461646174611a0a737461746973746963731a0571756572791a0f657865637574696f6e5f636f756e741a17657865637574696f6e5f746f74616c5f7365636f6e64731a1f657865637574696f6e5f746f74616c5f636c75737465725f7365636f6e64731a1b636f6e74656e74696f6e5f74696d655f6176675f7365636f6e64731a116370755f73716c5f6176675f6e616e6f731a1b736572766963655f6c6174656e63795f6176675f7365636f6e64731a1b736572766963655f6c6174656e63795f7039395f7365636f6e6473200120022003200420052006200720082009200a200b200c200d200e2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880302a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c78a89","value":"030adb020a0d74656e616e745f69645f736571183f200128013a00422a0a0576616c756510011a0c08011040180030005014600020003000680070007800800100880100980100480052660a077072696d61727910011800220576616c7565300140004a10080010001a00200028003000380040005a007a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060006a210a0b0a0561646d696e102018200a0a0a04726f6f741020182012046e6f64651803800100880103980100b201160a077072696d61727910001a0576616c756520012801b80100c20100e2011e0801100118ffffffffffffffff7f20012800320408001000380142004800e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880300a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c88a89","value":"030ac50a0a0f6d7663635f737461746973746963731840200128013a0042450a0a637265617465645f617410011a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a300068007000780080010088010098010042300a0b64617461626173655f696410021a0c08011040180030005014600020003000680070007800800100880100980100422d0a087461626c655f696410031a0c08011040180030005014600020003000680070007800800100880100980100422d0a08696e6465785f696410041a0c0801104018003000501460002000300068007000780080010088010098010042300a0a7374617469737469637310051a0d081210001800300050da1d60002000300068007000780080010088010098010042ab010a3f637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f313610061a0c080110201800300050176000200030015a456d6f6428666e763332286d643528637264625f696e7465726e616c2e646174756d735f746f5f627974657328637265617465645f61742929292c2031363a3a3a494e543829680070007800800101880100980100480752e4020a146d7663635f737461746973746963735f706b657910011801223f637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f3136220a637265617465645f6174220b64617461626173655f696422087461626c655f69642208696e6465785f69642a0a7374617469737469637330063001300230033004400040004000400040004a10080010001a00200028003000380040005a0070057a0408002000800100880100900104980101a201720801123f637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f31361810220a637265617465645f6174220b64617461626173655f69642208696e6465785f696422087461626c655f6964a80100b20100ba0100c00100c80100d00101e00100e901000000000000000060026a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a201bd020ae901637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f313620494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e54382c20383a3a3a494e54382c20393a3a3a494e54382c2031303a3a3a494e54382c2031313a3a3a494e54382c2031323a3a3a494e54382c2031333a3a3a494e54382c2031343a3a3a494e54382c2031353a3a3a494e5438291245636865636b5f637264625f696e7465726e616c5f637265617465645f61745f64617461626173655f69645f696e6465785f69645f7461626c655f69645f73686172645f313618002806300038014002b201500a077072696d61727910001a0a637265617465645f61741a0b64617461626173655f69641a087461626c655f69641a08696e6465785f69641a0a73746174697374696373200120022003200420052805b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89c98a89","value":"030abb170a1e7472616e73616374696f6e5f657865637574696f6e5f696e7369676874731841200128013a0042340a0e7472616e73616374696f6e5f696410011a0d080e100018003000508617600020003000680070007800800100880100980100423f0a1a7472616e73616374696f6e5f66696e6765727072696e745f696410021a0c0808100018003000501160002000300068007000780080010088010098010042320a0d71756572795f73756d6d61727910031a0c0807100018003000501960002001300068007000780080010088010098010042310a0c696d706c696369745f74786e10041a0c08001000180030005010600020013000680070007800800100880100980100422f0a0a73657373696f6e5f696410051a0c0807100018003000501960002000300068007000780080010088010098010042300a0a73746172745f74696d6510061a0d080910001800300050a009600020013000680070007800800100880100980100422e0a08656e645f74696d6510071a0d080910001800300050a009600020013000680070007800800100880100980100422e0a09757365725f6e616d6510081a0c08071000180030005019600020013000680070007800800100880100980100422d0a086170705f6e616d6510091a0c0807100018003000501960002001300068007000780080010088010098010042320a0d757365725f7072696f72697479100a1a0c08071000180030005019600020013000680070007800800100880100980100422c0a0772657472696573100b1a0c0801104018003000501460002001300068007000780080010088010098010042360a116c6173745f72657472795f726561736f6e100c1a0c08071000180030005019600020013000680070007800800100880100980100423e0a0870726f626c656d73100d1a1d080f104018003000380150f8075a0c080110401800300050146000600020013000680070007800800100880100980100423c0a06636175736573100e1a1d080f104018003000380150f8075a0c08011040180030005014600060002001300068007000780080010088010098010042480a1273746d745f657865637574696f6e5f696473100f1a1d080f100018003000380750f1075a0c08071000180030005019600060002001300068007000780080010088010098010042320a0d6370755f73716c5f6e616e6f7310101a0c0801104018003000501460002001300068007000780080010088010098010042340a0f6c6173745f6572726f725f636f646510111a0c08071000180030005019600020013000680070007800800100880100980100422b0a0673746174757310121a0c08011040180030005014600020013000680070007800800100880100980100423b0a0f636f6e74656e74696f6e5f74696d6510131a13080610001800300050a20960006a04080010002001300068007000780080010088010098010042350a0f636f6e74656e74696f6e5f696e666f10141a0d081210001800300050da1d600020013000680070007800800100880100980100422d0a0764657461696c7310151a0d081210001800300050da1d60002001300068007000780080010088010098010042420a076372656174656410161a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a300068007000780080010088010098010042a0010a2a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313610171a0c080110201800300050176000200030015a4f6d6f6428666e763332286d643528637264625f696e7465726e616c2e646174756d735f746f5f627974657328656e645f74696d652c2073746172745f74696d652929292c2031363a3a3a494e543829680070007800800101880100980100481852b6030a077072696d61727910011801220e7472616e73616374696f6e5f69642a1a7472616e73616374696f6e5f66696e6765727072696e745f69642a0d71756572795f73756d6d6172792a0c696d706c696369745f74786e2a0a73657373696f6e5f69642a0a73746172745f74696d652a08656e645f74696d652a09757365725f6e616d652a086170705f6e616d652a0d757365725f7072696f726974792a07726574726965732a116c6173745f72657472795f726561736f6e2a0870726f626c656d732a066361757365732a1273746d745f657865637574696f6e5f6964732a0d6370755f73716c5f6e616e6f732a0f6c6173745f6572726f725f636f64652a067374617475732a0f636f6e74656e74696f6e5f74696d652a0f636f6e74656e74696f6e5f696e666f2a0764657461696c732a0763726561746564300140004a10080010001a00200028003000380040005a0070027003700470057006700770087009700a700b700c700d700e700f70107011701270137014701570167a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a94010a1e7472616e73616374696f6e5f66696e6765727072696e745f69645f69647810021800221a7472616e73616374696f6e5f66696e6765727072696e745f69643002380140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005af2010a0e74696d655f72616e67655f69647810031800222a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f3136220a73746172745f74696d652208656e645f74696d6530173006300738014000400140014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a201460801122a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313618102208656e645f74696d65220a73746172745f74696d65a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060046a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a20193020ad401637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313620494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e54382c20383a3a3a494e54382c20393a3a3a494e54382c2031303a3a3a494e54382c2031313a3a3a494e54382c2031323a3a3a494e54382c2031333a3a3a494e54382c2031343a3a3a494e54382c2031353a3a3a494e5438291230636865636b5f637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313618002817300038014002b201e6020a077072696d61727910001a0e7472616e73616374696f6e5f69641a1a7472616e73616374696f6e5f66696e6765727072696e745f69641a0d71756572795f73756d6d6172791a0c696d706c696369745f74786e1a0a73657373696f6e5f69641a0a73746172745f74696d651a08656e645f74696d651a09757365725f6e616d651a086170705f6e616d651a0d757365725f7072696f726974791a07726574726965731a116c6173745f72657472795f726561736f6e1a0870726f626c656d731a066361757365731a1273746d745f657865637574696f6e5f6964731a0d6370755f73716c5f6e616e6f731a0f6c6173745f6572726f725f636f64651a067374617475731a0f636f6e74656e74696f6e5f74696d651a0f636f6e74656e74696f6e5f696e666f1a0764657461696c731a0763726561746564200120022003200420052006200720082009200a200b200c200d200e200f20102011201220132014201520162800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89ca8a89","value":"030a861e0a1c73746174656d656e745f657865637574696f6e5f696e7369676874731842200128013a00422f0a0a73657373696f6e5f696410011a0c0807100018003000501960002000300068007000780080010088010098010042340a0e7472616e73616374696f6e5f696410021a0d080e100018003000508617600020003000680070007800800100880100980100423f0a1a7472616e73616374696f6e5f66696e6765727072696e745f696410031a0c0808100018003000501160002000300068007000780080010088010098010042310a0c73746174656d656e745f696410041a0c08071000180030005019600020003000680070007800800100880100980100423d0a1873746174656d656e745f66696e6765727072696e745f696410051a0c08081000180030005011600020003000680070007800800100880100980100422c0a0770726f626c656d10061a0c08011040180030005014600020013000680070007800800100880100980100423c0a0663617573657310071a1d080f104018003000380150f8075a0c080110401800300050146000600020013000680070007800800100880100980100422a0a05717565727910081a0c08071000180030005019600020013000680070007800800100880100980100422b0a0673746174757310091a0c0801104018003000501460002001300068007000780080010088010098010042300a0a73746172745f74696d65100a1a0d080910001800300050a009600020013000680070007800800100880100980100422e0a08656e645f74696d65100b1a0d080910001800300050a009600020013000680070007800800100880100980100422e0a0966756c6c5f7363616e100c1a0c08001000180030005010600020013000680070007800800100880100980100422e0a09757365725f6e616d65100d1a0c08071000180030005019600020013000680070007800800100880100980100422d0a086170705f6e616d65100e1a0c0807100018003000501960002001300068007000780080010088010098010042320a0d757365725f7072696f72697479100f1a0c0807100018003000501960002001300068007000780080010088010098010042320a0d64617461626173655f6e616d6510101a0c08071000180030005019600020013000680070007800800100880100980100422e0a09706c616e5f6769737410111a0c08071000180030005019600020013000680070007800800100880100980100422c0a077265747269657310121a0c0801104018003000501460002001300068007000780080010088010098010042360a116c6173745f72657472795f726561736f6e10131a0c0807100018003000501960002001300068007000780080010088010098010042480a12657865637574696f6e5f6e6f64655f69647310141a1d080f104018003000380150f8075a0c080110401800300050146000600020013000680070007800800100880100980100424b0a15696e6465785f7265636f6d6d656e646174696f6e7310151a1d080f100018003000380750f1075a0c08071000180030005019600060002001300068007000780080010088010098010042310a0c696d706c696369745f74786e10161a0c0800100018003000501060002001300068007000780080010088010098010042320a0d6370755f73716c5f6e616e6f7310171a0c08011040180030005014600020013000680070007800800100880100980100422f0a0a6572726f725f636f646510181a0c08071000180030005019600020013000680070007800800100880100980100423b0a0f636f6e74656e74696f6e5f74696d6510191a13080610001800300050a20960006a04080010002001300068007000780080010088010098010042350a0f636f6e74656e74696f6e5f696e666f101a1a0d081210001800300050da1d600020013000680070007800800100880100980100422d0a0764657461696c73101b1a0d081210001800300050da1d60002001300068007000780080010088010098010042420a0763726561746564101c1a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a300068007000780080010088010098010042a0010a2a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f3136101d1a0c080110201800300050176000200030015a4f6d6f6428666e763332286d643528637264625f696e7465726e616c2e646174756d735f746f5f627974657328656e645f74696d652c2073746172745f74696d652929292c2031363a3a3a494e543829680070007800800101880100980100481e529a040a077072696d61727910011801220c73746174656d656e745f6964220e7472616e73616374696f6e5f69642a0a73657373696f6e5f69642a1a7472616e73616374696f6e5f66696e6765727072696e745f69642a1873746174656d656e745f66696e6765727072696e745f69642a0770726f626c656d2a066361757365732a0571756572792a067374617475732a0a73746172745f74696d652a08656e645f74696d652a0966756c6c5f7363616e2a09757365725f6e616d652a086170705f6e616d652a0d757365725f7072696f726974792a0d64617461626173655f6e616d652a09706c616e5f676973742a07726574726965732a116c6173745f72657472795f726561736f6e2a12657865637574696f6e5f6e6f64655f6964732a15696e6465785f7265636f6d6d656e646174696f6e732a0c696d706c696369745f74786e2a0d6370755f73716c5f6e616e6f732a0a6572726f725f636f64652a0f636f6e74656e74696f6e5f74696d652a0f636f6e74656e74696f6e5f696e666f2a0764657461696c732a076372656174656430043002400040004a10080010001a00200028003000380040005a007001700370057006700770087009700a700b700c700d700e700f7010701170127013701470157016701770187019701a701b701c7a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005a7c0a127472616e73616374696f6e5f69645f69647810021800220e7472616e73616374696f6e5f69643002380440004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab4010a1e7472616e73616374696f6e5f66696e6765727072696e745f69645f69647810031800221a7472616e73616374696f6e5f66696e6765727072696e745f6964220a73746172745f74696d652208656e645f74696d653003300a300b380438024000400140014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005ab0010a1c73746174656d656e745f66696e6765727072696e745f69645f69647810041800221873746174656d656e745f66696e6765727072696e745f6964220a73746172745f74696d652208656e645f74696d653005300a300b380438024000400140014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005af4010a0e74696d655f72616e67655f69647810051800222a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f3136220a73746172745f74696d652208656e645f74696d65301d300a300b380438024000400140014a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a201460801122a637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313618102208656e645f74696d65220a73746172745f74696d65a80100b20100ba0100c00100c80100d00100e00100e901000000000000000060066a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a20193020ad401637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f313620494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e54382c20383a3a3a494e54382c20393a3a3a494e54382c2031303a3a3a494e54382c2031313a3a3a494e54382c2031323a3a3a494e54382c2031333a3a3a494e54382c2031343a3a3a494e54382c2031353a3a3a494e5438291230636865636b5f637264625f696e7465726e616c5f656e645f74696d655f73746172745f74696d655f73686172645f31361800281d300038014002b201c8030a077072696d61727910001a0a73657373696f6e5f69641a0e7472616e73616374696f6e5f69641a1a7472616e73616374696f6e5f66696e6765727072696e745f69641a0c73746174656d656e745f69641a1873746174656d656e745f66696e6765727072696e745f69641a0770726f626c656d1a066361757365731a0571756572791a067374617475731a0a73746172745f74696d651a08656e645f74696d651a0966756c6c5f7363616e1a09757365725f6e616d651a086170705f6e616d651a0d757365725f7072696f726974791a0d64617461626173655f6e616d651a09706c616e5f676973741a07726574726965731a116c6173745f72657472795f726561736f6e1a12657865637574696f6e5f6e6f64655f6964731a15696e6465785f7265636f6d6d656e646174696f6e731a0c696d706c696369745f74786e1a0d6370755f73716c5f6e616e6f731a0a6572726f725f636f64651a0f636f6e74656e74696f6e5f74696d651a0f636f6e74656e74696f6e5f696e666f1a0764657461696c731a0763726561746564200120022003200420052006200720082009200a200b200c200d200e200f2010201120122013201420152016201720182019201a201b201c2800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8b89cb8a89","value":"030ad31c0a0e7461626c655f6d657461646174611843200128013a00422a0a0564625f696410011a0c08011040180030005014600020003000680070007800800100880100980100422d0a087461626c655f696410021a0c08011040180030005014600020003000680070007800800100880100980100422c0a0764625f6e616d6510031a0c0807100018003000501960002000300068007000780080010088010098010042300a0b736368656d615f6e616d6510041a0c08071000180030005019600020003000680070007800800100880100980100422f0a0a7461626c655f6e616d6510051a0c0807100018003000501960002000300068007000780080010088010098010042320a0d746f74616c5f636f6c756d6e7310061a0c0801104018003000501460002000300068007000780080010088010098010042320a0d746f74616c5f696e646578657310071a0c08011040180030005014600020003000680070007800800100880100980100423f0a0973746f72655f69647310081a1d080f104018003000380150f8075a0c080110401800300050146000600020003000680070007800800100880100980100423b0a167265706c69636174696f6e5f73697a655f627974657310091a0c0801104018003000501460002000300068007000780080010088010098010042310a0c746f74616c5f72616e676573100a1a0c08011040180030005014600020003000680070007800800100880100980100423a0a15746f74616c5f6c6976655f646174615f6279746573100b1a0c0801104018003000501460002000300068007000780080010088010098010042350a10746f74616c5f646174615f6279746573100c1a0c0801104018003000501460002000300068007000780080010088010098010042340a0e706572635f6c6976655f64617461100d1a0d080210401800300050bd0560002000300068007000780080010088010098010042360a116c6173745f7570646174655f6572726f72100e1a0c0807100018003000501960002001300068007000780080010088010098010042470a0c6c6173745f75706461746564100f1a0d080910001800300050a009600020002a136e6f7728293a3a3a54494d455354414d50545a3000680070007800800100880100980100422f0a0a7461626c655f7479706510101a0c08071000180030005019600020003000680070007800800100880100980100422d0a0764657461696c7310111a0d081210001800300050da1d60002000300068007000780080010088010098010042a4010a2c637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f313610121a0c080110201800300050176000200030015a516d6f6428666e763332286d643528637264625f696e7465726e616c2e646174756d735f746f5f6279746573287461626c655f69642c206c6173745f757064617465642929292c2031363a3a3a494e543829680070007800800101880100980100481352f2020a077072696d61727910011801220564625f696422087461626c655f69642a0764625f6e616d652a0b736368656d615f6e616d652a0a7461626c655f6e616d652a0d746f74616c5f636f6c756d6e732a0d746f74616c5f696e64657865732a0973746f72655f6964732a167265706c69636174696f6e5f73697a655f62797465732a0c746f74616c5f72616e6765732a15746f74616c5f6c6976655f646174615f62797465732a10746f74616c5f646174615f62797465732a0e706572635f6c6976655f646174612a116c6173745f7570646174655f6572726f722a0c6c6173745f757064617465642a0a7461626c655f747970652a0764657461696c7330013002400040004a10080010001a00200028003000380040005a007003700470057006700770087009700a700b700c700d700e700f701070117a0408002000800100880100900104980101a20106080012001800a80100b20100ba0100c00100c80100d00101e00100e90100000000000000005aa3010a237265706c69636174696f6e5f73697a655f62797465735f7461626c655f69645f6964781002180022167265706c69636174696f6e5f73697a655f627974657322087461626c655f6964300930023801400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a8f010a19746f74616c5f72616e6765735f7461626c655f69645f69647810031800220c746f74616c5f72616e67657322087461626c655f6964300a30023801400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a91010a1a746f74616c5f636f6c756d6e735f7461626c655f69645f69647810041800220d746f74616c5f636f6c756d6e7322087461626c655f6964300630023801400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a91010a1a746f74616c5f696e64657865735f7461626c655f69645f69647810051800220d746f74616c5f696e646578657322087461626c655f6964300730023801400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a8f010a15706572635f6c6976655f646174615f69645f69647810061800220e706572635f6c6976655f6461746122087461626c655f6964300d30023801400140004a10080010001a00200028003000380040005a00680d7a0408002000800100880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005afc010a106c6173745f757064617465645f69647810071800222c637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f3136220c6c6173745f7570646174656422087461626c655f69643012300f300238014000400140004a10080010001a00200028003000380040005a007a0408002000800100880100900103980100a2014a0801122c637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f31361810220c6c6173745f7570646174656422087461626c655f6964a80100b20100ba0100c00100c80100d00100e00100e90100000000000000005a730a0b64625f6e616d655f67696e10081800220764625f6e616d6530033801380240004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80101e00100e90100000000000000005a790a0e7461626c655f6e616d655f67696e10091800220a7461626c655f6e616d6530053801380240004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80101e00100e90100000000000000005a7b0a0f736368656d615f6e616d655f67696e100a1800220b736368656d615f6e616d6530043801380240004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80101e00100e90100000000000000005a770a0d73746f72655f6964735f67696e100b1800220973746f72655f69647330083801380240004a10080010001a00200028003000380040005a007a0408002000800101880100900103980100a20106080012001800a80100b20100ba0100c00100c80100d00100d80100e00100e9010000000000000000600c6a250a0d0a0561646d696e10e00318e0030a0c0a04726f6f7410e00318e00312046e6f64651803800101880103980100a20197020ad601637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f313620494e2028303a3a3a494e54382c20313a3a3a494e54382c20323a3a3a494e54382c20333a3a3a494e54382c20343a3a3a494e54382c20353a3a3a494e54382c20363a3a3a494e54382c20373a3a3a494e54382c20383a3a3a494e54382c20393a3a3a494e54382c2031303a3a3a494e54382c2031313a3a3a494e54382c2031323a3a3a494e54382c2031333a3a3a494e54382c2031343a3a3a494e54382c2031353a3a3a494e5438291232636865636b5f637264625f696e7465726e616c5f6c6173745f757064617465645f7461626c655f69645f73686172645f313618002812300038014002b201a0020a077072696d61727910001a0564625f69641a087461626c655f69641a0764625f6e616d651a0b736368656d615f6e616d651a0a7461626c655f6e616d651a0d746f74616c5f636f6c756d6e731a0d746f74616c5f696e64657865731a0973746f72655f6964731a167265706c69636174696f6e5f73697a655f62797465731a0c746f74616c5f72616e6765731a15746f74616c5f6c6976655f646174615f62797465731a10746f74616c5f646174615f62797465731a0e706572635f6c6976655f646174611a116c6173745f7570646174655f6572726f721a0c6c6173745f757064617465641a0a7461626c655f747970651a0764657461696c73200120022003200420052006200720082009200a200b200c200d200e200f201020112800b80101c20100e80100f2010408001200f801008002009202009a0200b20200b80200c0021dc80200e00200800300880303a80300b00300d00300d80300e00300f80300880400"} +,{"key":"8d89888a89","value":"031080808040188080808002220308c0702803500058007801"} +,{"key":"8f898888","value":"01c801"} +,{"key":"90898988","value":"0a2a160c080110001a0020002a004200160673797374656d13021304"} +,{"key":"908a1273797374656d000188","value":"0389"} +,{"key":"908b8a8988","value":"03"} +,{"key":"a68988881273797374656d00018c89","value":"0102"} +,{"key":"a6898988127075626c696300018c89","value":"013a"} +,{"key":"a68989a512636f6d6d656e747300018c89","value":"0130"} +,{"key":"a68989a51264617461626173655f726f6c655f73657474696e677300018c89","value":"0158"} +,{"key":"a68989a51264657363726970746f7200018c89","value":"0106"} +,{"key":"a68989a51264657363726970746f725f69645f73657100018c89","value":"010e"} +,{"key":"a68989a5126576656e746c6f6700018c89","value":"0118"} +,{"key":"a68989a51265787465726e616c5f636f6e6e656374696f6e7300018c89","value":"016a"} +,{"key":"a68989a5126a6f625f696e666f00018c89","value":"016c"} +,{"key":"a68989a5126a6f627300018c89","value":"011e"} +,{"key":"a68989a5126a6f696e5f746f6b656e7300018c89","value":"0152"} +,{"key":"a68989a5126c6561736500018c89","value":"0116"} +,{"key":"a68989a5126c6f636174696f6e7300018c89","value":"012a"} +,{"key":"a68989a5126d6967726174696f6e7300018c89","value":"0150"} +,{"key":"a68989a5126d7663635f7374617469737469637300018c89","value":"018001"} +,{"key":"a68989a5126e616d65737061636500018c89","value":"013c"} +,{"key":"a68989a51270726976696c6567657300018c89","value":"0168"} +,{"key":"a68989a51270726f7465637465645f74735f6d65746100018c89","value":"013e"} +,{"key":"a68989a51270726f7465637465645f74735f7265636f72647300018c89","value":"0140"} +,{"key":"a68989a51272616e67656c6f6700018c89","value":"011a"} +,{"key":"a68989a512726567696f6e5f6c6976656e65737300018c89","value":"0112"} +,{"key":"a68989a5127265706c69636174696f6e5f636f6e73747261696e745f737461747300018c89","value":"0132"} +,{"key":"a68989a5127265706c69636174696f6e5f637269746963616c5f6c6f63616c697469657300018c89","value":"0134"} +,{"key":"a68989a5127265706c69636174696f6e5f737461747300018c89","value":"0136"} +,{"key":"a68989a5127265706f7274735f6d65746100018c89","value":"0138"} +,{"key":"a68989a512726f6c655f69645f73657100018c89","value":"0160"} +,{"key":"a68989a512726f6c655f6d656d6265727300018c89","value":"012e"} +,{"key":"a68989a512726f6c655f6f7074696f6e7300018c89","value":"0142"} +,{"key":"a68989a5127363686564756c65645f6a6f627300018c89","value":"014a"} +,{"key":"a68989a51273657474696e677300018c89","value":"010c"} +,{"key":"a68989a5127370616e5f636f6e66696775726174696f6e7300018c89","value":"015e"} +,{"key":"a68989a5127370616e5f636f756e7400018c89","value":"0166"} +,{"key":"a68989a5127370616e5f73746174735f6275636b65747300018c89","value":"0170"} +,{"key":"a68989a5127370616e5f73746174735f73616d706c657300018c89","value":"0172"} +,{"key":"a68989a5127370616e5f73746174735f74656e616e745f626f756e64617269657300018c89","value":"0174"} +,{"key":"a68989a5127370616e5f73746174735f756e697175655f6b65797300018c89","value":"016e"} +,{"key":"a68989a51273716c5f696e7374616e63657300018c89","value":"015c"} +,{"key":"a68989a51273716c6c6976656e65737300018c89","value":"014e"} +,{"key":"a68989a51273746174656d656e745f616374697669747900018c89","value":"017a"} +,{"key":"a68989a51273746174656d656e745f62756e646c655f6368756e6b7300018c89","value":"0144"} +,{"key":"a68989a51273746174656d656e745f646961676e6f737469637300018c89","value":"0148"} +,{"key":"a68989a51273746174656d656e745f646961676e6f73746963735f726571756573747300018c89","value":"0146"} +,{"key":"a68989a51273746174656d656e745f657865637574696f6e5f696e73696768747300018c89","value":"018401"} +,{"key":"a68989a51273746174656d656e745f7374617469737469637300018c89","value":"0154"} +,{"key":"a68989a5127461626c655f6d6574616461746100018c89","value":"018601"} +,{"key":"a68989a5127461626c655f7374617469737469637300018c89","value":"0128"} +,{"key":"a68989a5127461736b5f7061796c6f61647300018c89","value":"0176"} +,{"key":"a68989a51274656e616e745f69645f73657100018c89","value":"017e"} +,{"key":"a68989a51274656e616e745f73657474696e677300018c89","value":"0164"} +,{"key":"a68989a51274656e616e745f7461736b7300018c89","value":"0178"} +,{"key":"a68989a51274656e616e745f757361676500018c89","value":"015a"} +,{"key":"a68989a51274656e616e747300018c89","value":"0110"} +,{"key":"a68989a5127472616e73616374696f6e5f616374697669747900018c89","value":"017c"} +,{"key":"a68989a5127472616e73616374696f6e5f657865637574696f6e5f696e73696768747300018c89","value":"018201"} +,{"key":"a68989a5127472616e73616374696f6e5f7374617469737469637300018c89","value":"0156"} +,{"key":"a68989a512756900018c89","value":"011c"} +,{"key":"a68989a512757365727300018c89","value":"0108"} +,{"key":"a68989a5127765625f73657373696f6e7300018c89","value":"0126"} +,{"key":"a68989a5127a6f6e657300018c89","value":"010a"} +,{"key":"b8898888","value":"01c801"} +,{"key":"c7898888","value":"0102"} +] \ No newline at end of file diff --git a/pkg/sql/catalog/bootstrap/data/24_3_tenant.sha256 b/pkg/sql/catalog/bootstrap/data/24_3_tenant.sha256 new file mode 100644 index 000000000000..7b36cbe809c9 --- /dev/null +++ b/pkg/sql/catalog/bootstrap/data/24_3_tenant.sha256 @@ -0,0 +1 @@ +5666976007ad4ced2d419d4d7ce12c9b4c1001265be851645209ef3823b02a35 \ No newline at end of file diff --git a/pkg/sql/catalog/bootstrap/initial_values.go b/pkg/sql/catalog/bootstrap/initial_values.go index 64dbd04f7290..871ffa47f46f 100644 --- a/pkg/sql/catalog/bootstrap/initial_values.go +++ b/pkg/sql/catalog/bootstrap/initial_values.go @@ -64,6 +64,12 @@ type initialValuesFactoryFn = func(opts InitialValuesOpts) ( var initialValuesFactoryByKey = map[clusterversion.Key]initialValuesFactoryFn{ clusterversion.Latest: buildLatestInitialValues, + clusterversion.V24_3: hardCodedInitialValues{ + system: v24_3_system_keys, + systemHash: v24_3_system_sha256, + nonSystem: v24_3_tenant_keys, + nonSystemHash: v24_3_tenant_sha256, + }.build, clusterversion.V24_2: hardCodedInitialValues{ system: v24_2_system_keys, systemHash: v24_2_system_sha256, @@ -157,3 +163,15 @@ var v24_2_tenant_keys string //go:embed data/24_2_tenant.sha256 var v24_2_tenant_sha256 string + +//go:embed data/24_3_system.keys +var v24_3_system_keys string + +//go:embed data/24_3_system.sha256 +var v24_3_system_sha256 string + +//go:embed data/24_3_tenant.keys +var v24_3_tenant_keys string + +//go:embed data/24_3_tenant.sha256 +var v24_3_tenant_sha256 string diff --git a/pkg/sql/logictest/logictestbase/logictestbase.go b/pkg/sql/logictest/logictestbase/logictestbase.go index 2cb5685e0031..00705dded375 100644 --- a/pkg/sql/logictest/logictestbase/logictestbase.go +++ b/pkg/sql/logictest/logictestbase/logictestbase.go @@ -589,8 +589,7 @@ var ( "fakedist-vec-off", "fakedist-disk", "local-mixed-24.2", - // TODO(radu): enable this. - //"local-mixed-24.3", + "local-mixed-24.3", } // FiveNodeDefaultConfigName is a special alias for all 5 node configs. FiveNodeDefaultConfigName = "5node-default-configs" diff --git a/pkg/sql/logictest/testdata/logic_test/alter_column_type b/pkg/sql/logictest/testdata/logic_test/alter_column_type index b46cb3bb6523..3779e431c84b 100644 --- a/pkg/sql/logictest/testdata/logic_test/alter_column_type +++ b/pkg/sql/logictest/testdata/logic_test/alter_column_type @@ -1437,14 +1437,14 @@ ALTER TABLE stored1 ALTER COLUMN comp1 SET DATA TYPE TEXT; # Convert the type to something compatible, but specify a custom value for the # column with the USING expression. This will force a type conversion with a backfill. -skipif config local-legacy-schema-changer local-mixed-24.1 local-mixed-24.2 +skipif config local-legacy-schema-changer local-mixed-24.1 local-mixed-24.2 local-mixed-24.3 statement ok ALTER TABLE stored1 ALTER COLUMN comp1 SET DATA TYPE INT2 USING -1; statement ok INSERT INTO stored1 VALUES (-1000); -skipif config local-legacy-schema-changer local-mixed-24.1 local-mixed-24.2 +skipif config local-legacy-schema-changer local-mixed-24.1 local-mixed-24.2 local-mixed-24.3 query TT SHOW CREATE TABLE stored1; ---- @@ -1455,7 +1455,7 @@ stored1 CREATE TABLE public.stored1 ( FAMILY f1 (a, comp1) ) -skipif config local-legacy-schema-changer local-mixed-24.1 local-mixed-24.2 +skipif config local-legacy-schema-changer local-mixed-24.1 local-mixed-24.2 local-mixed-24.3 query II SELECT * FROM stored1 ORDER BY A; ---- @@ -1467,7 +1467,7 @@ SELECT * FROM stored1 ORDER BY A; 2147483647 -1 # Attempt to drop stored along with changing the column type -skipif config local-legacy-schema-changer local-mixed-24.1 local-mixed-24.2 +skipif config local-legacy-schema-changer local-mixed-24.1 local-mixed-24.2 local-mixed-24.3 statement error pq: unimplemented: ALTER COLUMN TYPE cannot be used in combination with other ALTER TABLE commands ALTER TABLE stored1 ALTER COLUMN comp1 SET DATA TYPE INT4 USING -1, ALTER COLUMN comp1 drop stored; diff --git a/pkg/sql/logictest/testdata/logic_test/event_log b/pkg/sql/logictest/testdata/logic_test/event_log index c2616f187ac3..04147e502f1e 100644 --- a/pkg/sql/logictest/testdata/logic_test/event_log +++ b/pkg/sql/logictest/testdata/logic_test/event_log @@ -532,9 +532,7 @@ ALTER INDEX a@bar CONFIGURE ZONE USING gc.ttlseconds = 15000 # verify zone config changes are logged ################## -skipif config 3node-tenant-default-configs -skipif config local-mixed-24.1 -skipif config local-mixed-24.2 +skipif config 3node-tenant-default-configs local-mixed-24.1 local-mixed-24.2 local-mixed-24.3 query IT SELECT "reportingID", "info"::JSONB - 'Timestamp' - 'DescriptorID' - 'Statement' FROM system.eventlog diff --git a/pkg/sql/logictest/testdata/logic_test/zone_config b/pkg/sql/logictest/testdata/logic_test/zone_config index 1daad113f83d..151fa020c225 100644 --- a/pkg/sql/logictest/testdata/logic_test/zone_config +++ b/pkg/sql/logictest/testdata/logic_test/zone_config @@ -295,19 +295,19 @@ CREATE VIEW v (x, y) AS SELECT a, b FROM zc; ALTER TABLE v CONFIGURE ZONE USING user root -onlyif config local-legacy-schema-changer +onlyif config local-legacy-schema-changer local-mixed-24.2 local-mixed-24.3 statement error pq: user root does not have CREATE or ZONECONFIG privilege on relation pg_type ALTER TABLE pg_catalog.pg_type CONFIGURE ZONE USING gc.ttlseconds = 100000 -onlyif config local-legacy-schema-changer +onlyif config local-legacy-schema-changer local-mixed-24.2 local-mixed-24.3 statement error pq: user root does not have CREATE or ZONECONFIG privilege on relation columns ALTER TABLE information_schema.columns CONFIGURE ZONE USING gc.ttlseconds = 100000 -skipif config local-legacy-schema-changer local-mixed-24.2 +skipif config local-legacy-schema-changer local-mixed-24.2 local-mixed-24.3 statement error pq: pg_type is a system catalog ALTER TABLE pg_catalog.pg_type CONFIGURE ZONE USING gc.ttlseconds = 100000 -skipif config local-legacy-schema-changer local-mixed-24.2 +skipif config local-legacy-schema-changer local-mixed-24.2 local-mixed-24.3 statement error pq: columns is a virtual object and cannot be modified ALTER TABLE information_schema.columns CONFIGURE ZONE USING gc.ttlseconds = 100000 diff --git a/pkg/sql/logictest/tests/local-mixed-24.3/BUILD.bazel b/pkg/sql/logictest/tests/local-mixed-24.3/BUILD.bazel new file mode 100644 index 000000000000..4d23d538c257 --- /dev/null +++ b/pkg/sql/logictest/tests/local-mixed-24.3/BUILD.bazel @@ -0,0 +1,30 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_test") + +go_test( + name = "local-mixed-24_3_test", + size = "enormous", + srcs = ["generated_test.go"], + data = [ + "//c-deps:libgeos", # keep + "//pkg/sql/logictest:testdata", # keep + ], + exec_properties = select({ + "//build/toolchains:is_heavy": {"test.Pool": "heavy"}, + "//conditions:default": {"test.Pool": "large"}, + }), + shard_count = 48, + tags = ["cpu:1"], + deps = [ + "//pkg/base", + "//pkg/build/bazel", + "//pkg/security/securityassets", + "//pkg/security/securitytest", + "//pkg/server", + "//pkg/sql/logictest", + "//pkg/testutils/serverutils", + "//pkg/testutils/skip", + "//pkg/testutils/testcluster", + "//pkg/util/leaktest", + "//pkg/util/randutil", + ], +) diff --git a/pkg/sql/logictest/tests/local-mixed-24.3/generated_test.go b/pkg/sql/logictest/tests/local-mixed-24.3/generated_test.go new file mode 100644 index 000000000000..c020171e4247 --- /dev/null +++ b/pkg/sql/logictest/tests/local-mixed-24.3/generated_test.go @@ -0,0 +1,2601 @@ +// Copyright 2022 The Cockroach Authors. +// +// Use of this software is governed by the CockroachDB Software License +// included in the /LICENSE file. + +// Code generated by generate-logictest, DO NOT EDIT. + +package testlocal_mixed_243 + +import ( + "os" + "path/filepath" + "testing" + + "github.com/cockroachdb/cockroach/pkg/base" + "github.com/cockroachdb/cockroach/pkg/build/bazel" + "github.com/cockroachdb/cockroach/pkg/security/securityassets" + "github.com/cockroachdb/cockroach/pkg/security/securitytest" + "github.com/cockroachdb/cockroach/pkg/server" + "github.com/cockroachdb/cockroach/pkg/sql/logictest" + "github.com/cockroachdb/cockroach/pkg/testutils/serverutils" + "github.com/cockroachdb/cockroach/pkg/testutils/skip" + "github.com/cockroachdb/cockroach/pkg/testutils/testcluster" + "github.com/cockroachdb/cockroach/pkg/util/leaktest" + "github.com/cockroachdb/cockroach/pkg/util/randutil" +) + +const configIdx = 21 + +var logicTestDir string + +func init() { + if bazel.BuiltWithBazel() { + var err error + logicTestDir, err = bazel.Runfile("pkg/sql/logictest/testdata/logic_test") + if err != nil { + panic(err) + } + } else { + logicTestDir = "../../../../sql/logictest/testdata/logic_test" + } +} + +func TestMain(m *testing.M) { + securityassets.SetLoader(securitytest.EmbeddedAssets) + randutil.SeedForTests() + serverutils.InitTestServerFactory(server.TestServerFactory) + serverutils.InitTestClusterFactory(testcluster.TestClusterFactory) + + defer serverutils.TestingSetDefaultTenantSelectionOverride( + base.TestIsForStuffThatShouldWorkWithSecondaryTenantsButDoesntYet(76378), + )() + + os.Exit(m.Run()) +} + +func runLogicTest(t *testing.T, file string) { + skip.UnderDeadlock(t, "times out and/or hangs") + logictest.RunLogicTest(t, logictest.TestServerArgs{}, configIdx, filepath.Join(logicTestDir, file)) +} + +// TestLogic_tmp runs any tests that are prefixed with "_", in which a dedicated +// test is not generated for. This allows developers to create and run temporary +// test files that are not checked into the repository, without repeatedly +// regenerating and reverting changes to this file, generated_test.go. +// +// TODO(mgartner): Add file filtering so that individual files can be run, +// instead of all files with the "_" prefix. +func TestLogic_tmp(t *testing.T) { + defer leaktest.AfterTest(t)() + var glob string + glob = filepath.Join(logicTestDir, "_*") + logictest.RunLogicTests(t, logictest.TestServerArgs{}, configIdx, glob) +} + +func TestLogic_aggregate( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "aggregate") +} + +func TestLogic_alias_types( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alias_types") +} + +func TestLogic_alter_column_type( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_column_type") +} + +func TestLogic_alter_database_convert_to_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_database_convert_to_schema") +} + +func TestLogic_alter_database_owner( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_database_owner") +} + +func TestLogic_alter_default_privileges_for_all_roles( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_default_privileges_for_all_roles") +} + +func TestLogic_alter_default_privileges_for_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_default_privileges_for_schema") +} + +func TestLogic_alter_default_privileges_for_sequence( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_default_privileges_for_sequence") +} + +func TestLogic_alter_default_privileges_for_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_default_privileges_for_table") +} + +func TestLogic_alter_default_privileges_for_type( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_default_privileges_for_type") +} + +func TestLogic_alter_default_privileges_in_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_default_privileges_in_schema") +} + +func TestLogic_alter_default_privileges_with_grant_option( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_default_privileges_with_grant_option") +} + +func TestLogic_alter_primary_key( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_primary_key") +} + +func TestLogic_alter_role( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_role") +} + +func TestLogic_alter_role_set( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_role_set") +} + +func TestLogic_alter_schema_owner( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_schema_owner") +} + +func TestLogic_alter_sequence( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_sequence") +} + +func TestLogic_alter_sequence_owner( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_sequence_owner") +} + +func TestLogic_alter_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_table") +} + +func TestLogic_alter_table_owner( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_table_owner") +} + +func TestLogic_alter_type( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_type") +} + +func TestLogic_alter_type_owner( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_type_owner") +} + +func TestLogic_alter_view_owner( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "alter_view_owner") +} + +func TestLogic_and_or( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "and_or") +} + +func TestLogic_apply_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "apply_join") +} + +func TestLogic_array( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "array") +} + +func TestLogic_as_of( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "as_of") +} + +func TestLogic_asyncpg( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "asyncpg") +} + +func TestLogic_auto_span_config_reconciliation_job( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "auto_span_config_reconciliation_job") +} + +func TestLogic_bit( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "bit") +} + +func TestLogic_bpchar( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "bpchar") +} + +func TestLogic_builtin_function( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "builtin_function") +} + +func TestLogic_builtin_function_notenant( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "builtin_function_notenant") +} + +func TestLogic_bytes( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "bytes") +} + +func TestLogic_cascade( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "cascade") +} + +func TestLogic_case_sensitive_names( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "case_sensitive_names") +} + +func TestLogic_cast( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "cast") +} + +func TestLogic_ccl( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "ccl") +} + +func TestLogic_check_constraints( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "check_constraints") +} + +func TestLogic_cluster_settings( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "cluster_settings") +} + +func TestLogic_collatedstring( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "collatedstring") +} + +func TestLogic_collatedstring_constraint( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "collatedstring_constraint") +} + +func TestLogic_collatedstring_index1( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "collatedstring_index1") +} + +func TestLogic_collatedstring_index2( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "collatedstring_index2") +} + +func TestLogic_collatedstring_normalization( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "collatedstring_normalization") +} + +func TestLogic_collatedstring_nullinindex( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "collatedstring_nullinindex") +} + +func TestLogic_collatedstring_uniqueindex1( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "collatedstring_uniqueindex1") +} + +func TestLogic_collatedstring_uniqueindex2( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "collatedstring_uniqueindex2") +} + +func TestLogic_comment_on( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "comment_on") +} + +func TestLogic_composite_types( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "composite_types") +} + +func TestLogic_computed( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "computed") +} + +func TestLogic_conditional( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "conditional") +} + +func TestLogic_connect_privilege( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "connect_privilege") +} + +func TestLogic_crdb_internal( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "crdb_internal") +} + +func TestLogic_crdb_internal_catalog( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "crdb_internal_catalog") +} + +func TestLogic_crdb_internal_default_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "crdb_internal_default_privileges") +} + +func TestLogic_create_as( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "create_as") +} + +func TestLogic_create_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "create_index") +} + +func TestLogic_create_statements( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "create_statements") +} + +func TestLogic_create_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "create_table") +} + +func TestLogic_cross_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "cross_join") +} + +func TestLogic_cursor( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "cursor") +} + +func TestLogic_custom_escape_character( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "custom_escape_character") +} + +func TestLogic_dangerous_statements( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "dangerous_statements") +} + +func TestLogic_database( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "database") +} + +func TestLogic_datetime( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "datetime") +} + +func TestLogic_decimal( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "decimal") +} + +func TestLogic_default( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "default") +} + +func TestLogic_delete( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "delete") +} + +func TestLogic_delete_batch( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "delete_batch") +} + +func TestLogic_dependencies( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "dependencies") +} + +func TestLogic_discard( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "discard") +} + +func TestLogic_disjunction_in_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "disjunction_in_join") +} + +func TestLogic_distinct( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "distinct") +} + +func TestLogic_distinct_on( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "distinct_on") +} + +func TestLogic_distsql_automatic_partial_stats( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "distsql_automatic_partial_stats") +} + +func TestLogic_distsql_automatic_stats( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "distsql_automatic_stats") +} + +func TestLogic_distsql_event_log( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "distsql_event_log") +} + +func TestLogic_distsql_expr( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "distsql_expr") +} + +func TestLogic_distsql_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "distsql_join") +} + +func TestLogic_distsql_srfs( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "distsql_srfs") +} + +func TestLogic_drop_database( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_database") +} + +func TestLogic_drop_function( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_function") +} + +func TestLogic_drop_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_index") +} + +func TestLogic_drop_owned_by( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_owned_by") +} + +func TestLogic_drop_procedure( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_procedure") +} + +func TestLogic_drop_role_with_default_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_role_with_default_privileges") +} + +func TestLogic_drop_role_with_default_privileges_in_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_role_with_default_privileges_in_schema") +} + +func TestLogic_drop_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_schema") +} + +func TestLogic_drop_sequence( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_sequence") +} + +func TestLogic_drop_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_table") +} + +func TestLogic_drop_temp( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_temp") +} + +func TestLogic_drop_type( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_type") +} + +func TestLogic_drop_user( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_user") +} + +func TestLogic_drop_view( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "drop_view") +} + +func TestLogic_edge( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "edge") +} + +func TestLogic_enums( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "enums") +} + +func TestLogic_errors( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "errors") +} + +func TestLogic_event_log( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "event_log") +} + +func TestLogic_exclude_data_from_backup( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "exclude_data_from_backup") +} + +func TestLogic_experimental_distsql_planning( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "experimental_distsql_planning") +} + +func TestLogic_explain_analyze( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "explain_analyze") +} + +func TestLogic_export( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "export") +} + +func TestLogic_expression_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "expression_index") +} + +func TestLogic_external_connection_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "external_connection_privileges") +} + +func TestLogic_family( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "family") +} + +func TestLogic_fk( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "fk") +} + +func TestLogic_float( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "float") +} + +func TestLogic_format( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "format") +} + +func TestLogic_function_lookup( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "function_lookup") +} + +func TestLogic_fuzzystrmatch( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "fuzzystrmatch") +} + +func TestLogic_geospatial( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "geospatial") +} + +func TestLogic_geospatial_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "geospatial_index") +} + +func TestLogic_geospatial_meta( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "geospatial_meta") +} + +func TestLogic_geospatial_regression( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "geospatial_regression") +} + +func TestLogic_geospatial_zm( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "geospatial_zm") +} + +func TestLogic_grant_database( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "grant_database") +} + +func TestLogic_grant_in_txn( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "grant_in_txn") +} + +func TestLogic_grant_on_all_sequences_in_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "grant_on_all_sequences_in_schema") +} + +func TestLogic_grant_on_all_tables_in_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "grant_on_all_tables_in_schema") +} + +func TestLogic_grant_revoke_with_grant_option( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "grant_revoke_with_grant_option") +} + +func TestLogic_grant_role( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "grant_role") +} + +func TestLogic_grant_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "grant_schema") +} + +func TestLogic_group_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "group_join") +} + +func TestLogic_hash_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "hash_join") +} + +func TestLogic_hash_sharded_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "hash_sharded_index") +} + +func TestLogic_hidden_columns( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "hidden_columns") +} + +func TestLogic_impure( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "impure") +} + +func TestLogic_index_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "index_join") +} + +func TestLogic_inet( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inet") +} + +func TestLogic_inflight_trace_spans( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inflight_trace_spans") +} + +func TestLogic_information_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "information_schema") +} + +func TestLogic_inner_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inner-join") +} + +func TestLogic_insert( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "insert") +} + +func TestLogic_int_size( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "int_size") +} + +func TestLogic_internal_executor( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "internal_executor") +} + +func TestLogic_interval( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "interval") +} + +func TestLogic_inverted_filter_geospatial( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inverted_filter_geospatial") +} + +func TestLogic_inverted_filter_json_array( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inverted_filter_json_array") +} + +func TestLogic_inverted_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inverted_index") +} + +func TestLogic_inverted_index_multi_column( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inverted_index_multi_column") +} + +func TestLogic_inverted_join_geospatial( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inverted_join_geospatial") +} + +func TestLogic_inverted_join_json_array( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inverted_join_json_array") +} + +func TestLogic_inverted_join_multi_column( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "inverted_join_multi_column") +} + +func TestLogic_jobs( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "jobs") +} + +func TestLogic_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "join") +} + +func TestLogic_json( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "json") +} + +func TestLogic_json_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "json_builtins") +} + +func TestLogic_json_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "json_index") +} + +func TestLogic_kv_builtin_functions( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "kv_builtin_functions") +} + +func TestLogic_limit( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "limit") +} + +func TestLogic_locality( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "locality") +} + +func TestLogic_lock_timeout( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "lock_timeout") +} + +func TestLogic_lookup_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "lookup_join") +} + +func TestLogic_lookup_join_spans( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "lookup_join_spans") +} + +func TestLogic_manual_retry( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "manual_retry") +} + +func TestLogic_materialized_view( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "materialized_view") +} + +func TestLogic_merge_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "merge_join") +} + +func TestLogic_multi_statement( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "multi_statement") +} + +func TestLogic_name_escapes( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "name_escapes") +} + +func TestLogic_namespace( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "namespace") +} + +func TestLogic_new_schema_changer( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "new_schema_changer") +} + +func TestLogic_no_primary_key( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "no_primary_key") +} + +func TestLogic_notice( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "notice") +} + +func TestLogic_numeric_references( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "numeric_references") +} + +func TestLogic_on_update( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "on_update") +} + +func TestLogic_operator( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "operator") +} + +func TestLogic_optimizer_timeout( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "optimizer_timeout") +} + +func TestLogic_order_by( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "order_by") +} + +func TestLogic_ordinal_references( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "ordinal_references") +} + +func TestLogic_ordinality( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "ordinality") +} + +func TestLogic_overflow( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "overflow") +} + +func TestLogic_overlaps( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "overlaps") +} + +func TestLogic_owner( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "owner") +} + +func TestLogic_parallel_stmts_compat( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "parallel_stmts_compat") +} + +func TestLogic_partial_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "partial_index") +} + +func TestLogic_partial_txn_commit( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "partial_txn_commit") +} + +func TestLogic_partitioning( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "partitioning") +} + +func TestLogic_pg_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "pg_builtins") +} + +func TestLogic_pg_catalog_pg_default_acl( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "pg_catalog_pg_default_acl") +} + +func TestLogic_pg_catalog_pg_default_acl_with_grant_option( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "pg_catalog_pg_default_acl_with_grant_option") +} + +func TestLogic_pg_extension( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "pg_extension") +} + +func TestLogic_pg_lsn( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "pg_lsn") +} + +func TestLogic_pgcrypto_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "pgcrypto_builtins") +} + +func TestLogic_pgoidtype( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "pgoidtype") +} + +func TestLogic_plpgsql_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "plpgsql_builtins") +} + +func TestLogic_poison_after_push( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "poison_after_push") +} + +func TestLogic_postgres_jsonb( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "postgres_jsonb") +} + +func TestLogic_postgresjoin( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "postgresjoin") +} + +func TestLogic_privilege_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "privilege_builtins") +} + +func TestLogic_privileges_comments( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "privileges_comments") +} + +func TestLogic_privileges_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "privileges_table") +} + +func TestLogic_proc_invokes_proc( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "proc_invokes_proc") +} + +func TestLogic_procedure( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "procedure") +} + +func TestLogic_procedure_deps( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "procedure_deps") +} + +func TestLogic_procedure_params( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "procedure_params") +} + +func TestLogic_procedure_polymorphic( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "procedure_polymorphic") +} + +func TestLogic_procedure_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "procedure_privileges") +} + +func TestLogic_procedure_schema_change( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "procedure_schema_change") +} + +func TestLogic_propagate_input_ordering( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "propagate_input_ordering") +} + +func TestLogic_reassign_owned_by( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "reassign_owned_by") +} + +func TestLogic_record( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "record") +} + +func TestLogic_redact_descriptor( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "redact_descriptor") +} + +func TestLogic_rename_atomic( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rename_atomic") +} + +func TestLogic_rename_column( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rename_column") +} + +func TestLogic_rename_constraint( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rename_constraint") +} + +func TestLogic_rename_database( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rename_database") +} + +func TestLogic_rename_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rename_index") +} + +func TestLogic_rename_sequence( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rename_sequence") +} + +func TestLogic_rename_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rename_table") +} + +func TestLogic_rename_view( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rename_view") +} + +func TestLogic_reset( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "reset") +} + +func TestLogic_retry( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "retry") +} + +func TestLogic_returning( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "returning") +} + +func TestLogic_routine_schema_change( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "routine_schema_change") +} + +func TestLogic_row_level_ttl( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "row_level_ttl") +} + +func TestLogic_rows_from( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "rows_from") +} + +func TestLogic_run_control( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "run_control") +} + +func TestLogic_save_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "save_table") +} + +func TestLogic_savepoints( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "savepoints") +} + +func TestLogic_scale( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "scale") +} + +func TestLogic_scatter( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "scatter") +} + +func TestLogic_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "schema") +} + +func TestLogic_schema_change_feature_flags( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "schema_change_feature_flags") +} + +func TestLogic_schema_change_in_txn( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "schema_change_in_txn") +} + +func TestLogic_schema_change_logical_replication( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "schema_change_logical_replication") +} + +func TestLogic_schema_change_retry( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "schema_change_retry") +} + +func TestLogic_schema_locked( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "schema_locked") +} + +func TestLogic_schema_repair( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "schema_repair") +} + +func TestLogic_scrub( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "scrub") +} + +func TestLogic_secondary_index_column_families( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "secondary_index_column_families") +} + +func TestLogic_select( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "select") +} + +func TestLogic_select_for_share( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "select_for_share") +} + +func TestLogic_select_for_update( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "select_for_update") +} + +func TestLogic_select_index( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "select_index") +} + +func TestLogic_select_index_flags( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "select_index_flags") +} + +func TestLogic_select_search_path( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "select_search_path") +} + +func TestLogic_select_table_alias( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "select_table_alias") +} + +func TestLogic_sequences( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "sequences") +} + +func TestLogic_sequences_distsql( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "sequences_distsql") +} + +func TestLogic_sequences_regclass( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "sequences_regclass") +} + +func TestLogic_serial( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "serial") +} + +func TestLogic_serializable_eager_restart( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "serializable_eager_restart") +} + +func TestLogic_set_local( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "set_local") +} + +func TestLogic_set_role( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "set_role") +} + +func TestLogic_set_schema( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "set_schema") +} + +func TestLogic_set_time_zone( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "set_time_zone") +} + +func TestLogic_shift( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "shift") +} + +func TestLogic_show_commit_timestamp( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_commit_timestamp") +} + +func TestLogic_show_completions( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_completions") +} + +func TestLogic_show_create( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_create") +} + +func TestLogic_show_create_all_schemas( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_create_all_schemas") +} + +func TestLogic_show_create_all_tables( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_create_all_tables") +} + +func TestLogic_show_create_all_tables_builtin( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_create_all_tables_builtin") +} + +func TestLogic_show_create_all_types( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_create_all_types") +} + +func TestLogic_show_create_redact( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_create_redact") +} + +func TestLogic_show_default_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_default_privileges") +} + +func TestLogic_show_external_connections( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_external_connections") +} + +func TestLogic_show_fingerprints( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_fingerprints") +} + +func TestLogic_show_grants_on_virtual_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_grants_on_virtual_table") +} + +func TestLogic_show_grants_synthetic( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_grants_synthetic") +} + +func TestLogic_show_indexes( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_indexes") +} + +func TestLogic_show_tenant_fingerprints( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_tenant_fingerprints") +} + +func TestLogic_show_transfer_state( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_transfer_state") +} + +func TestLogic_show_var( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "show_var") +} + +func TestLogic_span_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "span_builtins") +} + +func TestLogic_split_at( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "split_at") +} + +func TestLogic_sqllite( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "sqllite") +} + +func TestLogic_sqlliveness( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "sqlliveness") +} + +func TestLogic_sqlsmith( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "sqlsmith") +} + +func TestLogic_srfs( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "srfs") +} + +func TestLogic_statement_source( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "statement_source") +} + +func TestLogic_statement_statistics_errors( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "statement_statistics_errors") +} + +func TestLogic_statement_statistics_errors_redacted( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "statement_statistics_errors_redacted") +} + +func TestLogic_stats( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "stats") +} + +func TestLogic_storing( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "storing") +} + +func TestLogic_strict_ddl_atomicity( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "strict_ddl_atomicity") +} + +func TestLogic_suboperators( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "suboperators") +} + +func TestLogic_subquery( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "subquery") +} + +func TestLogic_subquery_correlated( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "subquery_correlated") +} + +func TestLogic_synthetic_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "synthetic_privileges") +} + +func TestLogic_system( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "system") +} + +func TestLogic_system_columns( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "system_columns") +} + +func TestLogic_system_namespace( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "system_namespace") +} + +func TestLogic_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "table") +} + +func TestLogic_target_names( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "target_names") +} + +func TestLogic_temp_table( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "temp_table") +} + +func TestLogic_temp_table_txn( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "temp_table_txn") +} + +func TestLogic_tenant( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "tenant") +} + +func TestLogic_tenant_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "tenant_builtins") +} + +func TestLogic_time( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "time") +} + +func TestLogic_timestamp( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "timestamp") +} + +func TestLogic_timetz( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "timetz") +} + +func TestLogic_trigram_builtins( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "trigram_builtins") +} + +func TestLogic_trigram_indexes( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "trigram_indexes") +} + +func TestLogic_truncate( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "truncate") +} + +func TestLogic_truncate_with_concurrent_mutation( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "truncate_with_concurrent_mutation") +} + +func TestLogic_tsvector( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "tsvector") +} + +func TestLogic_tuple( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "tuple") +} + +func TestLogic_tuple_local( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "tuple_local") +} + +func TestLogic_txn( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "txn") +} + +func TestLogic_txn_as_of( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "txn_as_of") +} + +func TestLogic_txn_retry( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "txn_retry") +} + +func TestLogic_txn_stats( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "txn_stats") +} + +func TestLogic_type_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "type_privileges") +} + +func TestLogic_typing( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "typing") +} + +func TestLogic_udf( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf") +} + +func TestLogic_udf_calling_udf( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_calling_udf") +} + +func TestLogic_udf_delete( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_delete") +} + +func TestLogic_udf_deps( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_deps") +} + +func TestLogic_udf_fk( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_fk") +} + +func TestLogic_udf_in_column_defaults( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_in_column_defaults") +} + +func TestLogic_udf_in_constraints( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_in_constraints") +} + +func TestLogic_udf_insert( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_insert") +} + +func TestLogic_udf_observability( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_observability") +} + +func TestLogic_udf_oid_ref( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_oid_ref") +} + +func TestLogic_udf_options( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_options") +} + +func TestLogic_udf_params( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_params") +} + +func TestLogic_udf_polymorphic( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_polymorphic") +} + +func TestLogic_udf_prepare( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_prepare") +} + +func TestLogic_udf_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_privileges") +} + +func TestLogic_udf_privileges_mutations( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_privileges_mutations") +} + +func TestLogic_udf_procedure_mix( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_procedure_mix") +} + +func TestLogic_udf_record( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_record") +} + +func TestLogic_udf_regressions( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_regressions") +} + +func TestLogic_udf_rewrite( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_rewrite") +} + +func TestLogic_udf_schema_change( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_schema_change") +} + +func TestLogic_udf_security( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_security") +} + +func TestLogic_udf_setof( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_setof") +} + +func TestLogic_udf_star( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_star") +} + +func TestLogic_udf_subquery( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_subquery") +} + +func TestLogic_udf_unsupported( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_unsupported") +} + +func TestLogic_udf_update( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_update") +} + +func TestLogic_udf_upsert( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "udf_upsert") +} + +func TestLogic_union( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "union") +} + +func TestLogic_unique( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "unique") +} + +func TestLogic_update( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "update") +} + +func TestLogic_update_from( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "update_from") +} + +func TestLogic_upgrade_skip_version( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "upgrade_skip_version") +} + +func TestLogic_upsert( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "upsert") +} + +func TestLogic_upsert_non_metamorphic( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "upsert_non_metamorphic") +} + +func TestLogic_uuid( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "uuid") +} + +func TestLogic_values( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "values") +} + +func TestLogic_vectorize_agg( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "vectorize_agg") +} + +func TestLogic_vectorize_overloads( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "vectorize_overloads") +} + +func TestLogic_vectorize_shutdown( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "vectorize_shutdown") +} + +func TestLogic_vectorize_types( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "vectorize_types") +} + +func TestLogic_vectorize_unsupported( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "vectorize_unsupported") +} + +func TestLogic_vectoross( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "vectoross") +} + +func TestLogic_views( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "views") +} + +func TestLogic_virtual_columns( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "virtual_columns") +} + +func TestLogic_virtual_table_privileges( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "virtual_table_privileges") +} + +func TestLogic_void( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "void") +} + +func TestLogic_where( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "where") +} + +func TestLogic_window( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "window") +} + +func TestLogic_with( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "with") +} + +func TestLogic_workload_indexrecs( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "workload_indexrecs") +} + +func TestLogic_zero( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "zero") +} + +func TestLogic_zigzag_join( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "zigzag_join") +} + +func TestLogic_zone_config( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "zone_config") +} + +func TestLogic_zone_config_system_tenant( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runLogicTest(t, "zone_config_system_tenant") +} diff --git a/pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.3/BUILD.bazel b/pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.3/BUILD.bazel new file mode 100644 index 000000000000..c2e2f25aa25e --- /dev/null +++ b/pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.3/BUILD.bazel @@ -0,0 +1,31 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_test") + +go_test( + name = "local-mixed-24_3_test", + size = "enormous", + srcs = ["generated_test.go"], + data = [ + "//c-deps:libgeos", # keep + "//pkg/sql/opt/exec/execbuilder:testdata", # keep + ], + exec_properties = select({ + "//build/toolchains:is_heavy": {"test.Pool": "heavy"}, + "//conditions:default": {"test.Pool": "large"}, + }), + shard_count = 1, + tags = ["cpu:1"], + deps = [ + "//pkg/base", + "//pkg/build/bazel", + "//pkg/security/securityassets", + "//pkg/security/securitytest", + "//pkg/server", + "//pkg/sql", + "//pkg/sql/logictest", + "//pkg/testutils/serverutils", + "//pkg/testutils/skip", + "//pkg/testutils/testcluster", + "//pkg/util/leaktest", + "//pkg/util/randutil", + ], +) diff --git a/pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.3/generated_test.go b/pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.3/generated_test.go new file mode 100644 index 000000000000..3fcef1d3e528 --- /dev/null +++ b/pkg/sql/opt/exec/execbuilder/tests/local-mixed-24.3/generated_test.go @@ -0,0 +1,93 @@ +// Copyright 2022 The Cockroach Authors. +// +// Use of this software is governed by the CockroachDB Software License +// included in the /LICENSE file. + +// Code generated by generate-logictest, DO NOT EDIT. + +package testlocal_mixed_243 + +import ( + "os" + "path/filepath" + "testing" + + "github.com/cockroachdb/cockroach/pkg/base" + "github.com/cockroachdb/cockroach/pkg/build/bazel" + "github.com/cockroachdb/cockroach/pkg/security/securityassets" + "github.com/cockroachdb/cockroach/pkg/security/securitytest" + "github.com/cockroachdb/cockroach/pkg/server" + "github.com/cockroachdb/cockroach/pkg/sql" + "github.com/cockroachdb/cockroach/pkg/sql/logictest" + "github.com/cockroachdb/cockroach/pkg/testutils/serverutils" + "github.com/cockroachdb/cockroach/pkg/testutils/skip" + "github.com/cockroachdb/cockroach/pkg/testutils/testcluster" + "github.com/cockroachdb/cockroach/pkg/util/leaktest" + "github.com/cockroachdb/cockroach/pkg/util/randutil" +) + +const configIdx = 21 + +var execBuildLogicTestDir string + +func init() { + if bazel.BuiltWithBazel() { + var err error + execBuildLogicTestDir, err = bazel.Runfile("pkg/sql/opt/exec/execbuilder/testdata") + if err != nil { + panic(err) + } + } else { + execBuildLogicTestDir = "../../../../../../sql/opt/exec/execbuilder/testdata" + } +} + +func TestMain(m *testing.M) { + securityassets.SetLoader(securitytest.EmbeddedAssets) + randutil.SeedForTests() + serverutils.InitTestServerFactory(server.TestServerFactory) + serverutils.InitTestClusterFactory(testcluster.TestClusterFactory) + + defer serverutils.TestingSetDefaultTenantSelectionOverride( + base.TestIsForStuffThatShouldWorkWithSecondaryTenantsButDoesntYet(76378), + )() + + os.Exit(m.Run()) +} + +func runExecBuildLogicTest(t *testing.T, file string) { + defer sql.TestingOverrideExplainEnvVersion("CockroachDB execbuilder test version")() + skip.UnderDeadlock(t, "times out and/or hangs") + serverArgs := logictest.TestServerArgs{ + DisableWorkmemRandomization: true, + ForceProductionValues: true, + // Disable the direct scans in order to keep the output of EXPLAIN (VEC) + // deterministic. + DisableDirectColumnarScans: true, + } + logictest.RunLogicTest(t, serverArgs, configIdx, filepath.Join(execBuildLogicTestDir, file)) +} + +// TestLogic_tmp runs any tests that are prefixed with "_", in which a dedicated +// test is not generated for. This allows developers to create and run temporary +// test files that are not checked into the repository, without repeatedly +// regenerating and reverting changes to this file, generated_test.go. +// +// TODO(mgartner): Add file filtering so that individual files can be run, +// instead of all files with the "_" prefix. +func TestLogic_tmp(t *testing.T) { + defer leaktest.AfterTest(t)() + var glob string + glob = filepath.Join(execBuildLogicTestDir, "_*") + serverArgs := logictest.TestServerArgs{ + DisableWorkmemRandomization: true, + } + logictest.RunLogicTests(t, serverArgs, configIdx, glob) +} + +func TestExecBuild_geospatial( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runExecBuildLogicTest(t, "geospatial") +} diff --git a/pkg/sql/schemachanger/scbuild/internal/scbuildstmt/process.go b/pkg/sql/schemachanger/scbuild/internal/scbuildstmt/process.go index 1a35d847d2ee..198a4a09d1ba 100644 --- a/pkg/sql/schemachanger/scbuild/internal/scbuildstmt/process.go +++ b/pkg/sql/schemachanger/scbuild/internal/scbuildstmt/process.go @@ -63,9 +63,9 @@ var supportedStatements = map[reflect.Type]supportedStatement{ reflect.TypeOf((*tree.CreateSchema)(nil)): {fn: CreateSchema, statementTags: []string{tree.CreateSchemaTag}, on: true, checks: nil}, reflect.TypeOf((*tree.CreateSequence)(nil)): {fn: CreateSequence, statementTags: []string{tree.CreateSequenceTag}, on: true, checks: isV241Active}, reflect.TypeOf((*tree.CreateDatabase)(nil)): {fn: CreateDatabase, statementTags: []string{tree.CreateDatabaseTag}, on: true, checks: isV241Active}, - reflect.TypeOf((*tree.SetZoneConfig)(nil)): {fn: SetZoneConfig, statementTags: []string{tree.ConfigureZoneTag}, on: true, checks: isV243Active}, reflect.TypeOf((*tree.CreateTrigger)(nil)): {fn: CreateTrigger, statementTags: []string{tree.CreateTriggerTag}, on: true, checks: isV243Active}, reflect.TypeOf((*tree.DropTrigger)(nil)): {fn: DropTrigger, statementTags: []string{tree.DropTriggerTag}, on: true, checks: isV243Active}, + reflect.TypeOf((*tree.SetZoneConfig)(nil)): {fn: SetZoneConfig, statementTags: []string{tree.ConfigureZoneTag}, on: true, checks: isV251Active}, } // supportedStatementTags tracks statement tags which are implemented @@ -216,3 +216,7 @@ var isV242Active = func(_ tree.NodeFormatter, _ sessiondatapb.NewSchemaChangerMo var isV243Active = func(_ tree.NodeFormatter, _ sessiondatapb.NewSchemaChangerMode, activeVersion clusterversion.ClusterVersion) bool { return activeVersion.IsActive(clusterversion.V24_3) } + +var isV251Active = func(_ tree.NodeFormatter, _ sessiondatapb.NewSchemaChangerMode, activeVersion clusterversion.ClusterVersion) bool { + return activeVersion.IsActive(clusterversion.V25_1) +} diff --git a/pkg/sql/sqlitelogictest/tests/local-mixed-24.3/BUILD.bazel b/pkg/sql/sqlitelogictest/tests/local-mixed-24.3/BUILD.bazel new file mode 100644 index 000000000000..868c4f0420a6 --- /dev/null +++ b/pkg/sql/sqlitelogictest/tests/local-mixed-24.3/BUILD.bazel @@ -0,0 +1,28 @@ +load("@io_bazel_rules_go//go:def.bzl", "go_test") + +go_test( + name = "local-mixed-24_3_test", + size = "enormous", + srcs = ["generated_test.go"], + data = [ + "//c-deps:libgeos", # keep + "@com_github_cockroachdb_sqllogictest//:testfiles", # keep + ], + exec_properties = {"test.Pool": "default"}, + shard_count = 48, + tags = ["cpu:1"], + deps = [ + "//pkg/base", + "//pkg/build/bazel", + "//pkg/security/securityassets", + "//pkg/security/securitytest", + "//pkg/server", + "//pkg/sql/logictest", + "//pkg/sql/sqlitelogictest", + "//pkg/testutils/serverutils", + "//pkg/testutils/skip", + "//pkg/testutils/testcluster", + "//pkg/util/leaktest", + "//pkg/util/randutil", + ], +) diff --git a/pkg/sql/sqlitelogictest/tests/local-mixed-24.3/generated_test.go b/pkg/sql/sqlitelogictest/tests/local-mixed-24.3/generated_test.go new file mode 100644 index 000000000000..674939782812 --- /dev/null +++ b/pkg/sql/sqlitelogictest/tests/local-mixed-24.3/generated_test.go @@ -0,0 +1,1434 @@ +// Copyright 2022 The Cockroach Authors. +// +// Use of this software is governed by the CockroachDB Software License +// included in the /LICENSE file. + +// Code generated by generate-logictest, DO NOT EDIT. + +package testlocal_mixed_243 + +import ( + "flag" + "os" + "path/filepath" + "testing" + + "github.com/cockroachdb/cockroach/pkg/base" + "github.com/cockroachdb/cockroach/pkg/build/bazel" + "github.com/cockroachdb/cockroach/pkg/security/securityassets" + "github.com/cockroachdb/cockroach/pkg/security/securitytest" + "github.com/cockroachdb/cockroach/pkg/server" + "github.com/cockroachdb/cockroach/pkg/sql/logictest" + "github.com/cockroachdb/cockroach/pkg/sql/sqlitelogictest" + "github.com/cockroachdb/cockroach/pkg/testutils/serverutils" + "github.com/cockroachdb/cockroach/pkg/testutils/skip" + "github.com/cockroachdb/cockroach/pkg/testutils/testcluster" + "github.com/cockroachdb/cockroach/pkg/util/leaktest" + "github.com/cockroachdb/cockroach/pkg/util/randutil" +) + +const configIdx = 21 + +var sqliteLogicTestDir string + +func init() { +} + +func TestMain(m *testing.M) { + flag.Parse() + if *logictest.Bigtest { + if bazel.BuiltWithBazel() { + var err error + sqliteLogicTestDir, err = bazel.Runfile("external/com_github_cockroachdb_sqllogictest") + if err != nil { + panic(err) + } + } else { + var err error + sqliteLogicTestDir, err = sqlitelogictest.FindLocalLogicTestClone() + if err != nil { + panic(err) + } + } + } + securityassets.SetLoader(securitytest.EmbeddedAssets) + randutil.SeedForTests() + serverutils.InitTestServerFactory(server.TestServerFactory) + serverutils.InitTestClusterFactory(testcluster.TestClusterFactory) + + defer serverutils.TestingSetDefaultTenantSelectionOverride( + base.TestIsForStuffThatShouldWorkWithSecondaryTenantsButDoesntYet(76378), + )() + + os.Exit(m.Run()) +} + +func runSqliteLogicTest(t *testing.T, file string) { + skip.UnderDeadlock(t, "times out and/or hangs") + if !*logictest.Bigtest { + skip.IgnoreLint(t, "-bigtest flag must be specified to run this test") + } + // SQLLite logic tests can be very memory intensive, so we give them larger + // limit than other logic tests get. Also some of the 'delete' files become + // extremely slow when MVCC range tombstones are enabled for point deletes, + // so we disable that. + serverArgs := logictest.TestServerArgs{ + MaxSQLMemoryLimit: 512 << 20, // 512 MiB + DisableUseMVCCRangeTombstonesForPointDeletes: true, + // Some sqlite tests with very low bytes limit value are too slow, so + // ensure 3 KiB lower bound. + BatchBytesLimitLowerBound: 3 << 10, // 3 KiB + } + logictest.RunLogicTest(t, serverArgs, configIdx, filepath.Join(sqliteLogicTestDir, file)) +} + +func TestSqlLiteLogic_testindexbetween1slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/1/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexbetween10slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/10/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexbetween10slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/10/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexbetween10slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/10/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexbetween10slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/10/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexbetween10slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/10/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexbetween10slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/10/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexbetween100slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/100/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexbetween100slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/100/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexbetween100slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/100/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexbetween100slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/100/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexbetween100slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/100/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexbetween1000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/between/1000/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_10_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_10.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_11_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_11.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_12_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_12.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_13_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_13.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_14_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_14.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_15_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_15.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_16_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_16.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_17_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_17.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_18_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_18.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_19_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_19.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_20_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_20.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_21_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_21.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_22_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_22.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_23_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_23.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_24_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_24.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_25_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_25.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_26_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_26.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_27_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_27.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_28_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_28.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_29_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_29.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_30_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_30.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_31_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_31.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_32_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_32.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_33_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_33.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_34_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_34.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_6_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_6.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_7_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_7.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_8_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_8.test") +} + +func TestSqlLiteLogic_testindexcommute10slt_good_9_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/10/slt_good_9.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_10_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_10.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_11_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_11.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_12_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_12.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_6_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_6.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_7_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_7.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_8_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_8.test") +} + +func TestSqlLiteLogic_testindexcommute100slt_good_9_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/100/slt_good_9.test") +} + +func TestSqlLiteLogic_testindexcommute1000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/1000/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexcommute1000slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/1000/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexcommute1000slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/1000/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexcommute1000slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/commute/1000/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexdelete1slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/1/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexdelete10slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/10/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexdelete10slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/10/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexdelete10slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/10/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexdelete10slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/10/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexdelete10slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/10/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexdelete10slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/10/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexdelete100slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/100/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexdelete100slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/100/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexdelete100slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/100/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexdelete100slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/100/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexdelete1000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/1000/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexdelete1000slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/1000/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexdelete10000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/delete/10000/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexin10slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/10/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexin10slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/10/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexin10slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/10/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexin10slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/10/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexin10slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/10/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexin10slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/10/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexin100slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/100/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexin100slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/100/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexin100slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/100/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexin100slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/100/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexin100slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/100/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexin1000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/1000/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexin1000slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/in/1000/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_10_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_10.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_11_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_11.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_12_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_12.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_13_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_13.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_14_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_14.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_15_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_15.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_16_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_16.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_17_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_17.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_18_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_18.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_19_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_19.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_20_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_20.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_21_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_21.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_22_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_22.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_23_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_23.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_24_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_24.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_25_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_25.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_6_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_6.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_7_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_7.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_8_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_8.test") +} + +func TestSqlLiteLogic_testindexorderby10slt_good_9_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/10/slt_good_9.test") +} + +func TestSqlLiteLogic_testindexorderby100slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/100/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexorderby100slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/100/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexorderby100slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/100/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexorderby100slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/100/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexorderby1000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby/1000/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_10_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_10.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_11_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_11.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_12_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_12.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_13_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_13.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_14_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_14.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_15_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_15.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_16_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_16.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_17_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_17.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_18_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_18.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_19_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_19.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_20_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_20.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_21_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_21.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_22_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_22.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_23_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_23.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_24_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_24.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_25_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_25.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_26_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_26.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_27_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_27.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_28_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_28.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_29_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_29.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_30_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_30.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_31_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_31.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_32_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_32.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_33_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_33.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_34_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_34.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_35_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_35.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_36_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_36.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_37_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_37.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_38_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_38.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_39_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_39.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_6_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_6.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_7_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_7.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_8_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_8.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort10slt_good_9_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/10/slt_good_9.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort100slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/100/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort100slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/100/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort100slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/100/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort100slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/100/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort100slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/100/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort100slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/100/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort100slt_good_6_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/100/slt_good_6.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort1000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/1000/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexorderby_nosort1000slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/orderby_nosort/1000/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexview10slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexview10slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexview10slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexview10slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexview10slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexview10slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexview10slt_good_6_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10/slt_good_6.test") +} + +func TestSqlLiteLogic_testindexview10slt_good_7_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10/slt_good_7.test") +} + +func TestSqlLiteLogic_testindexview100slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/100/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexview100slt_good_1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/100/slt_good_1.test") +} + +func TestSqlLiteLogic_testindexview100slt_good_2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/100/slt_good_2.test") +} + +func TestSqlLiteLogic_testindexview100slt_good_3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/100/slt_good_3.test") +} + +func TestSqlLiteLogic_testindexview100slt_good_4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/100/slt_good_4.test") +} + +func TestSqlLiteLogic_testindexview100slt_good_5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/100/slt_good_5.test") +} + +func TestSqlLiteLogic_testindexview1000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/1000/slt_good_0.test") +} + +func TestSqlLiteLogic_testindexview10000slt_good_0_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/index/view/10000/slt_good_0.test") +} + +func TestSqlLiteLogic_testselect1_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/select1.test") +} + +func TestSqlLiteLogic_testselect2_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/select2.test") +} + +func TestSqlLiteLogic_testselect3_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/select3.test") +} + +func TestSqlLiteLogic_testselect4_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/select4.test") +} + +func TestSqlLiteLogic_testselect5_test( + t *testing.T, +) { + defer leaktest.AfterTest(t)() + runSqliteLogicTest(t, "/test/select5.test") +}