SQLite format 3@ 'ØGPKG ._öûö  š h ¶ k~ w=8뤂DU-„triggergpkg_tile_matrix_matrix_width_insertgpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_matrix_width_insert' BEFORE INSERT ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'insert on table ''gpkg_tile_matrix'' violates constraint: matrix_width cannot be less than 1') WHERE (NEW.matrix_width < 1); END‚JQ-„!triggergpkg_tile_matrix_zoom_level_updategpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_zoom_level_update' BEFORE UPDATE of zoom_level ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'update on table ''gpkg_tile_matrix'' violates constraint: zoom_level cannot be less than 0') WHERE (NEW.zoom_level < 0); END‚<Q-„triggergpkg_tile_matrix_zoom_level_insertgpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_zoom_level_insert' BEFORE INSERT ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'insert on table ''gpkg_tile_matrix'' violates constraint: zoom_level cannot be less than 0') WHERE (NEW.zoom_level < 0); ENDƒC --†9tablegpkg_tile_matrixgpkg_tile_matrix CREATE TABLE gpkg_tile_matrix (table_name TEXT NOT NULL,zoom_level INTEGER NOT NULL,matrix_width INTEGER NOT NULL,matrix_height INTEGER NOT NULL,tile_width INTEGER NOT NULL,tile_height INTEGER NOT NULL,pixel_x_size DOUBLE NOT NULL,pixel_y_size DOUBLE NOT NULL,CONSTRAINT pk_ttm PRIMARY KEY (table_name, zoom_level),CONSTRAINT fk_tmm_table_name FOREIGN KEY (table_name) REFERENCES gpkg_contents(table_name))? S-indexsqlite_autoindex_gpkg_tile_matrix_1gpkg_tile_matrixƒ 55…_tablegpkg_tile_matrix_setgpkg_tile_matrix_set CREATE TABLE gpkg_tile_matrix_set (table_name TEXT NOT NULL PRIMARY KEY,srs_id INTEGER NOT NULL,min_x DOUBLE NOT NULL,min_y DOUBLE NOT NULL,max_x DOUBLE NOT NULL,max_y DOUBLE NOT NULL,CONSTRAINT fk_gtms_table_name FOREIGN KEY (table_name) REFERENCES gpkg_contents(table_name),CONSTRAINT fk_gtms_srs FOREIGN KEY (srs_id) REFERENCES gpkg_spatial_ref_sys (srs_id))G [5indexsqlite_autoindex_gpkg_tile_matrix_set_1gpkg_tile_matrix_set „77‡tablegpkg_geometry_columnsgpkg_geometry_columnsCREATE TABLE gpkg_geometry_columns (table_name TEXT NOT NULL,column_name TEXT NOT NULL,geometry_type_name TEXT NOT NULL,srs_id INTEGER NOT NULL,z TINYINT NOT NULL,m TINYINT NOT NULL,CONSTRAINT pk_geom_cols PRIMARY KEY (table_name, column_name),CONSTRAINT uk_gc_table_name UNIQUE (table_name),CONSTRAINT fk_gc_tn FOREIGN KEY (table_name) REFERENCES gpkg_contents(table_name),CONSTRAINT fk_gc_srs FOREIGN KEY (srs_id) REFERENCES gpkg_spatial_ref_sys (srs_id))I ]7indexsqlite_autoindex_gpkg_geometry_columns_2gpkg_geometry_columns I]7indexsqlite_autoindex_gpkg_geometry_columns_1gpkg_geometry_columns //[tablegpkg_ogr_contentsgpkg_ogr_contentsCREATE TABLE gpkg_ogr_contents(table_name TEXT NOT NULL PRIMARY KEY,feature_count INTEGER DEFAULT NULL)AU/indexsqlite_autoindex_gpkg_ogr_contents_1gpkg_ogr_contentsƒ''…wtablegpkg_contentsgpkg_contentsCREATE TABLE gpkg_contents (table_name TEXT NOT NULL PRIMARY KEY,data_type TEXT NOT NULL,identifier TEXT UNIQUE,description TEXT DEFAULT '',last_change DATETIME NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now')),min_x DOUBLE, min_y DOUBLE,max_x DOUBLE, max_y DOUBLE,srs_id INTEGER,CONSTRAINT fk_gc_r_srs_id FOREIGN KEY (srs_id) REFERENCES gpkg_spatial_ref_sys(srs_id))9M'indexsqlite_autoindex_gpkg_contents_2gpkg_contents9M'indexsqlite_autoindex_gpkg_contents_1gpkg_contents‚55ƒ)tablegpkg_spatial_ref_sysgpkg_spatial_ref_sysCREATE TABLE gpkg_spatial_ref_sys (srs_name TEXT NOT NULL,srs_id INTEGER NOT NULL PRIMARY KEY,organization TEXT NOT NULL,organization_coordsys_id INTEGER NOT NULL,definition TEXT NOT NULL,descrip  Ò ¥h ÒN† _‚9Undefined Cartesian SRS with unknown unitNONE† LOCAL_CS["Undefined Cartesian SRS with unknown unit",LOCAL_DATUM["Unknown engineering datum",32767],UNIT["unknown",0],AXIS["X",OTHER],AXIS["Y",OTHER]]\=mUndefined geographic SRSNONEundefinedundefined geographic coordinate reference system[ÿÿÿÿÿÿÿÿÿ;kUndefined Cartesian SRSNONEÿundefinedundefined Cartesian coordinate reference systemƒ¡f +„iWGS 84 geodeticEPSGæGEOGCS["WGS 84",DATUM["WGS_1984",SPHEROID["WGS 84",6378137,298.257223563,AUTHORITY["EPSG","7030"]],AUTHORITY["EPSG","6326"]],PRIMEM["Greenwich",0,AUTHORITY["EPSG","8901"]],UNIT["degree",0.0174532925199433,AUTHORITY["EPSG","9122"]],AXIS["Latitude",NORTH],AXIS["Longitude",EAST],AUTHORITY["EPSG","4326"]]longitude/latitude coordinates in decimal degrees on the WGS 84 spheroid ¤¤Z 55 =example-multipolygonfeaturesexample-multipolygon2023-09-28T13:22:57.312Z--†  èè5 example-multipolygon èè5 example-multipolygon ææ5example-multipolygon èè5 example-multipolygon ÐÐ.5%example-multipolygongeomMULTIPOLYGON†  ãã5 example-multipolygongeom èè5 example-multipolygon     òëú Ý·|  š h ¶ k~ ¸w8ë¤MòžU-„1triggergpkg_tile_matrix_matrix_width_updategpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_matrix_width_update' BEFORE UPDATE OF matrix_width ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'update on table ''gpkg_tile_matrix'' violates constraint: matrix_width cannot be less than 1') WHERE (NEW.matrix_width < 1); END‚DU-„triggergpkg_tile_matrix_matrix_width_insertgpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_matrix_width_insert' BEFORE INSERT ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'insert on table ''gpkg_tile_matrix'' violates constraint: matrix_width cannot be less than 1') WHERE (NEW.matrix_width < 1); END‚JQ-„!triggergpkg_tile_matrix_zoom_level_updategpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_zoom_level_update' BEFORE UPDATE of zoom_level ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'update on table ''gpkg_tile_matrix'' violates constraint: zoom_level cannot be less than 0') WHERE (NEW.zoom_level < 0); END‚<Q-„triggergpkg_tile_matrix_zoom_level_insertgpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_zoom_level_insert' BEFORE INSERT ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'insert on table ''gpkg_tile_matrix'' violates constraint: zoom_level cannot be less than 0') WHERE (NEW.zoom_level < 0); END? S-indexsqlite_autoindex_gpkg_tile_matrix_1gpkg_tile_matrixƒC --†9tablegpkg_tile_matrixgpkg_tile_matrix CREATE TABLE gpkg_tile_matrix (table_name TEXT NOT NULL,zoom_level INTEGER NOT NULL,matrix_width INTEGER NOT NULL,matrix_height INTEGER NOT NULL,tile_width INTEGER NOT NULL,tile_height INTEGER NOT NULL,pixel_x_size DOUBLE NOT NULL,pixel_y_size DOUBLE NOT NULL,CONSTRAINT pk_ttm PRIMARY KEY (table_name, zoom_level),CONSTRAINT fk_tmm_table_name FOREIGN KEY (table_name) REFERENCES gpkg_contents(table_name))ƒ 55…_tablegpkg_tile_matrix_setgpkg_tile_matrix_set CREATE TABLE gpkg_tile_matrix_set (table_name TEXT NOT NULL PRIMARY KEY,srs_id INTEGER NOT NULL,min_x DOUBLE NOT NULL,min_y DOUBLE NOT NULL,max_x DOUBLE NOT NULL,max_y DOUBLE NOT NULL,CONSTRAINT fk_gtms_table_name FOREIGN KEY (table_name) REFERENCES gpkg_contents(table_name),CONSTRAINT fk_gtms_srs FOREIGN KEY (srs_id) REFERENCES gpkg_spatial_ref_sys (srs_id))G [5indexsqlite_autoindex_gpkg_tile_matrix_set_1gpkg_tile_matrix_set „77‡tablegpkg_geometry_columnsgpkg_geometry_columnsCREATE TABLE gpkg_geometry_columns (table_name TEXT NOT NULL,column_name TEXT NOT NULL,geometry_type_name TEXT NOT NULL,srs_id INTEGER NOT NULL,z TINYINT NOT NULL,m TINYINT NOT NULL,CONSTRAINT pk_geom_cols PRIMARY KEY (table_name, column_name),CONSTRAINT uk_gc_table_name UNIQUE (table_name),CONSTRAINT fk_gc_tn FOREIGN KEY (table_name) REFERENCES gpkg_contents(table_name),CONSTRAINT fk_gc_srs FOREIGN KEY (srs_id) REFERENCES gpkg_spatial_ref_sys (srs_id))I ]7indexsqlite_autoindex_gpkg_geometry_columns_2gpkg_geometry_columns I]7indexsqlite_autoindex_gpkg_geometry_columns_1gpkg_geometry_columns //[tablegpkg_ogr_contentsgpkg_ogr_contentsCREATE TABLE gpkg_ogr_contents(table_name TEXT NOT NULL PRIMARY KEY,feature_count INTEGER DEFAULT NULL)AU/indexsqlite_autoindex_gpkg_ogr_contents_1gpkg_ogr_contentsƒ''…wtablegpkg_contentsgpkg_contentsCREATE TABLE gpkg_contents (table_name TEXT NOT NULL PRIMARY KEY,data_type TEXT NOT NULL,identifier TEXT UNIQUE,description TEXT DEFAULT '',last_change DATETIME NOT NULL DEFAULT (strftime('%Y-%m-%dT%H:%M:%fZ','now')),min_x DOUBLE, min_y DOUBLE,max_x DOUBLE, max_y DOUBLE,srs_id INTEGER,CONSTRAINT fk_gc_r_srs_id FOREIGN KEY (srs_id) REFERENCES gpkg_spatial_ref_sys(srs_id))9M'indexsqlite_autoindex_gpkg_contents_2gpkg_contents9M'indexsqlite_autoindex_gpkg_contents_1gpkg_contents‚55ƒ)tablegpkg_spatial_ref_sysgpkg_spatial_ref_sysCREATE TABLE gpkg_spatial_ref_sys (srs_name TEXT NOT NULL,srs_id INTEGER NOT NULL PRIMARY KEY,organization TEXT NOT NULL,organization_coordsys_id INTEGER NOT NULL,definition TEXT NOT NULL,description TEXT) * 3 ý ¦ßƒ7Û3D p9 1 † Ö * *²YYEtablertree_example-multipolygon_geom_parentrtree_example-multipolygon_geom_parentCREATE TABLE "rtree_example-multipolygon_geom_parent"(nodeno INTEGER PRIMARY KEY,parentnode) *ú++ƒ%tablegpkg_extensionsgpkg_extensionsCREATE TABLE gpkg_extensions (table_name TEXT,column_name TEXT,extension_name TEXT NOT NULL,definition TEXT NOT NULL,scope TEXT NOT NULL,CONSTRAINT ge_tce UNIQUE (table_name, column_name, extension_name))‚YU-„;triggergpkg_tile_matrix_pixel_y_size_updategpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_pixel_y_size_update' BEFORE UPDATE OF pixel_y_size ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'update on table ''gpkg_tile_matrix'' violates constraint: pixel_y_size must be greater than 0') WHERE NOT (NEW.pixel_y_size > 0); END‚IU-„triggergpkg_tile_matrix_pixel_y_size_insertgpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_pixel_y_size_insert' BEFORE INSERT ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'insert on table ''gpkg_tile_matrix'' violates constraint: pixel_y_size must be greater than 0') WHERE NOT (NEW.pixel_y_size > 0); END‚YU-„;triggergpkg_tile_matrix_pixel_x_size_updategpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_pixel_x_size_update' BEFORE UPDATE OF pixel_x_size ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'update on table ''gpkg_tile_matrix'' violates constraint: pixel_x_size must be greater than 0') WHERE NOT (NEW.pixel_x_size > 0); END‚IU-„triggergpkg_tile_matrix_pixel_x_size_insertgpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_pixel_x_size_insert' BEFORE INSERT ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'insert on table ''gpkg_tile_matrix'' violates constraint: pixel_x_size must be greater than 0') WHERE NOT (NEW.pixel_x_size > 0); END‚YW-„9triggergpkg_tile_matrix_matrix_height_updategpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_matrix_height_update' BEFORE UPDATE OF matrix_height ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'update on table ''gpkg_tile_matrix'' violates constraint: matrix_height cannot be less than 1') WHERE (NEW.matrix_height < 1); END‚HW-„triggergpkg_tile_matrix_matrix_height_insertgpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_matrix_height_insert' BEFORE INSERT ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'insert on table ''gpkg_tile_matrix'' violates constraint: matrix_height cannot be less than 1') WHERE (NEW.matrix_height < 1); END|UU5tablertree_example-multipolygon_geom_nodertree_example-multipolygon_geom_nodeCREATE TABLE "rtree_example-multipolygon_geom_node"(nodeno INTEGER PRIMARY KEY,data)-WW9tablertree_example-multipolygon_geom_rowidrtree_example-multipolygon_geom_rowidCREATE TABLE "rtree_example-multipolygon_geom_rowid"(rowid INTEGER PRIMARY KEY,nodeno)(KKItablertree_example-multipolygon_geomrtree_example-multipolygon_geomCREATE VIRTUAL TABLE "rtree_example-multipolygon_geom" USING rtree(id, minx, maxx, miny, maxy)=Q+indexsqlite_autoindex_gpkg_extensions_1gpkg_extensionsÔo5ƒctriggertrigger_delete_feature_count_example-‚TU-„1triggergpkg_tile_matrix_matrix_width_updategpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_matrix_width_update' BEFORE UPDATE OF matrix_width ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'update on table ''gpkg_tile_matrix'' violates constraint: matrix_width cannot be less than 1') WHERE (NEW.matrix_width < 1); END‚DU-„triggergpkg_tile_matrix_matrix_width_insertgpkg_tile_matrixCREATE TRIGGER 'gpkg_tile_matrix_matrix_width_insert' BEFORE INSERT ON 'gpkg_tile_matrix' FOR EACH ROW BEGIN SELECT RAISE(ABORT, 'insert on table ''gpkg_tile_matrix'' violates constraint: matrix_width cannot be less than 1') WHERE (NEW.matrix_width < 1); END955‚tableexample-multipolygonexample-multipolygonCREATE TABLE "example-multipolygon" ( "fid" INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL, "geom" MULTIPOLYGON, "row_number" MEDIUMINT)  j† N 6 .GP †.GP †‚5„jGP †$@€F@@€F@D@D@4@€F@€F@>@D@D@4@€A@$@>@$@$@>@@€F@4@4@€A@>@4@4@.@4@9@>@4@aƒBGP †@€F@@D@>@4@€F@D@$@D@>@4@.@@D@$@$@4@@$@.@@‚( GP †$@D@$@D@>@$@D@D@4@D@$@4@>@$@ ææ5example-multipolygon ””j5-q!example-multipolygongeomgpkg_rtree_indexhttp://www.geopackage.org/spec120/#extension_rtreewrite-only ÒÒ-5- example-multipolygongeomgpkg_rtree_index ñûöñ    - -‰P“$A B A B @ B4@ B A B4@ B4  V®m , 2 ó H ˜ ì 4¨÷§»fV‚ 'Y5ƒtriggerrtree_example-multipolygon_geom_deleteexample-multipolygonCREATE TRIGGER "rtree_example-multipolygon_geom_delete" AFTER DELETE ON "example-multipolygon" WHEN old."geom" NOT NULL BEGIN DELETE FROM "rtree_example-multipolygon_geom" WHERE id = OLD."fid"; END‚R&[5„triggerrtree_example-multipolygon_geom_update4example-multipolygonCREATE TRIGGER "rtree_example-multipolygon_geom_update4" AFTER UPDATE ON "example-multipolygon" WHEN OLD."fid" != NEW."fid" AND (NEW."geom" ISNULL OR ST_IsEmpty(NEW."geom")) BEGIN DELETE FROM "rtree_example-multipolygon_geom" WHERE id IN (OLD."fid", NEW."fid"); ENDƒi%[5†Mtriggerrtree_example-multipolygon_geom_update3example-multipolygonCREATE TRIGGER "rtree_example-multipolygon_geom_update3" AFTER UPDATE ON "example-multipolygon" WHEN OLD."fid" != NEW."fid" AND (NEW."geom" NOTNULL AND NOT ST_IsEmpty(NEW."geom")) BEGIN DELETE FROM "rtree_example-multipolygon_geom" WHERE id = OLD."fid"; INSERT OR REPLACE INTO "rtree_example-multipolygon_geom" VALUES (NEW."fid",ST_MinX(NEW."geom"), ST_MaxX(NEW."geom"),ST_MinY(NEW."geom"), ST_MaxY(NEW."geom")); END‚M$[5„triggerrtree_example-multipolygon_geom_update2example-multipolygonCREATE TRIGGER "rtree_example-multipolygon_geom_update2" AFTER UPDATE OF "geom" ON "example-multipolygon" WHEN OLD."fid" = NEW."fid" AND (NEW."geom" ISNULL OR ST_IsEmpty(NEW."geom")) BEGIN DELETE FROM "rtree_example-multipolygon_geom" WHERE id = OLD."fid"; ENDƒ.#[5…Wtriggerrtree_example-multipolygon_geom_update1example-multipolygonCREATE TRIGGER "rtree_example-multipolygon_geom_update1" AFTER UPDATE OF "geom" ON "example-multipolygon" WHEN OLD."fid" = NEW."fid" AND (NEW."geom" NOTNULL AND NOT ST_IsEmpty(NEW."geom")) BEGIN INSERT OR REPLACE INTO "rtree_example-multipolygon_geom" VALUES (NEW."fid",ST_MinX(NEW."geom"), ST_MaxX(NEW."geom"),ST_MinY(NEW."geom"), ST_MaxY(NEW."geom")); ENDƒ "Y5…triggerrtree_example-multipolygon_geom_insertexample-multipolygonCREATE TRIGGER "rtree_example-multipolygon_geom_insert" AFTER INSERT ON "example-multipolygon" WHEN (new."geom" NOT NULL AND NOT ST_IsEmpty(NEW."geom")) BEGIN INSERT OR REPLACE INTO "rtree_example-multipolygon_geom" VALUES (NEW."fid",ST_MinX(NEW."geom"), ST_MaxX(NEW."geom"),ST_MinY(NEW."geom"), ST_MaxY(NEW."geom")); END5!YYEtablertree_example-multipolygon_geom_parentrtree_example-multipolygon_geom_parentCREATE TABLE "rtree_example-multipolygon_geom_parent"(nodeno INTEGER PRIMARY KEY,parentnode)) UU5tablertree_example-multipolygon_geom_nodertree_example-multipolygon_geom_nodeCREATE TABLE "rtree_example-multipolygon_geom_node"(nodeno INTEGER PRIMARY KEY,data)-WW9tablertree_example-multipolygon_geom_rowidrtree_example-multipolygon_geom_rowidCREATE TABLE "rtree_example-multipolygon_geom_rowid"(rowid INTEGER PRIMARY KEY,nodeno)(KKItablertree_example-multipolygon_geomrtree_example-multipolygon_geomCREATE VIRTUAL TABLE "rtree_example-multipolygon_geom" USING rtree(id, minx, maxx, miny, maxy)=Q+indexsqlite_autoindex_gpkg_extensions_1gpkg_extensionsw++ƒ%tablegpkg_extensionsgpkg_extensionsCREATE TABLE gpkg_extensions (table_name TEXT,column_name TEXT,extension_name TEXT NOT NULL,definition TEXT NOT NULL,scope TEXT NOT NULL,CONSTRAINT ge_tce UNIQUE (table_name, column_name, extension_name))‚>o5ƒctriggertrigger_delete_feature_count_example-multipolygonexample-multipolygonCREATE TRIGGER "trigger_delete_feature_count_example-multipolygon" AFTER DELETE ON "example-multipolygon" BEGIN UPDATE gpkg_ogr_contents SET feature_count = feature_count - 1 WHERE lower(table_name) = lower('example-multipolygon'); END‚>o5ƒctriggertrigger_insert_feature_count_example-multipolygonexample-multipolygonCREATE TRIGGER "trigger_insert_feature_count_example-multipolygon" AFTER INSERT ON "example-multipolygon" BEGIN UPDATE gpkg_ogr_contents SET feature_count = feature_count + 1 WHERE lower(table_name) = lower('example-multipolygon'); ENDP++Ytablesqlite_sequencesqlite_sequenceCREATE TABLE sqlite_sequence(name,seq)