Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
19 changes: 0 additions & 19 deletions api/models/arabidopsis_NIE_umap.py

This file was deleted.

59 changes: 59 additions & 0 deletions api/models/umap_dynamic.py
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
"""Every SUPeR Viewer UMAP database exposes the same umap_coords and umap_expression
tables, so instead of hand-writing a model file per database we generate them here."""

from api import db

# Every UMAP database and the species its gene ids belong to. UMAP databases have no
# catalog entry, so the species that selects the gene id pattern is declared here.
UMAP_DATABASES = {
"arabidopsis_NIE_umap": "arabidopsis",
"arabidopsis_flower_lee_umap": "arabidopsis",
"arabidopsis_root_shahan_umap": "arabidopsis",
"arabidopsis_rosette_21d_lee_umap": "arabidopsis",
"arabidopsis_rosette_30d_lee_umap": "arabidopsis",
"arabidopsis_seed_0d_lee_umap": "arabidopsis",
"arabidopsis_seed_martin_umap": "arabidopsis",
"arabidopsis_seedling_12d_lee_umap": "arabidopsis",
"arabidopsis_seedling_3d_lee_umap": "arabidopsis",
"arabidopsis_seedling_6d_lee_umap": "arabidopsis",
"arabidopsis_shoot_zhang_umap": "arabidopsis",
"arabidopsis_silique_lee_umap": "arabidopsis",
"arabidopsis_stem_lee_umap": "arabidopsis",
"rice_OW_umap": "rice",
}


def _class_prefix(database):
return "".join(part.capitalize() for part in database.split("_"))


def _umap_coords_model(database):
return type(
_class_prefix(database) + "UmapCoords",
(db.Model,),
{
"__bind_key__": database,
"__tablename__": "umap_coords",
"cell_id": db.mapped_column(db.Integer, nullable=False, primary_key=True),
"umap_1": db.mapped_column(db.Float, nullable=False),
"umap_2": db.mapped_column(db.Float, nullable=False),
"cell_type": db.mapped_column(db.String(128), nullable=False),
},
)


def _umap_expression_model(database):
return type(
_class_prefix(database) + "UmapExpression",
(db.Model,),
{
"__bind_key__": database,
"__tablename__": "umap_expression",
"gene_id": db.mapped_column(db.String(32), nullable=False, primary_key=True),
"expression": db.mapped_column(db.JSON, nullable=False),
},
)


UMAP_COORDS_MODELS = {database: _umap_coords_model(database) for database in UMAP_DATABASES}
UMAP_EXPRESSION_MODELS = {database: _umap_expression_model(database) for database in UMAP_DATABASES}
15 changes: 7 additions & 8 deletions api/resources/umap_gene_expression.py
Original file line number Diff line number Diff line change
@@ -1,8 +1,7 @@
from flask_restx import Namespace, Resource
from markupsafe import escape
from api import db
from api.models.arabidopsis_NIE_umap import UmapCoords as ArabidopsisNIEUmapCoords
from api.models.arabidopsis_NIE_umap import UmapExpression as ArabidopsisNIEUmapExpression
from api.models.umap_dynamic import UMAP_COORDS_MODELS, UMAP_DATABASES, UMAP_EXPRESSION_MODELS
from api.utils.bar_utils import BARUtils, load_combined_master

umap_gene_expression = Namespace(
Expand All @@ -20,14 +19,14 @@ def get_tables(database):
:return: dict with the coordinates table, expression table and species
"""
# Set database
if database == "arabidopsis_NIE_umap":
coords_table = ArabidopsisNIEUmapCoords
expression_table = ArabidopsisNIEUmapExpression
species = "arabidopsis"

else:
database = str(database)
if database not in UMAP_DATABASES:
return {"success": False, "error": "Invalid database", "error_code": 400}

coords_table = UMAP_COORDS_MODELS[database]
expression_table = UMAP_EXPRESSION_MODELS[database]
species = UMAP_DATABASES[database]

return {"success": True, "coords_table": coords_table, "expression_table": expression_table, "species": species}


Expand Down
26 changes: 26 additions & 0 deletions config/BAR_API.cfg
Original file line number Diff line number Diff line change
Expand Up @@ -12,8 +12,32 @@ SQLALCHEMY_TRACK_MODIFICATIONS = False
SQLALCHEMY_BINDS = {
'annotations_lookup': 'mysql://root:root@localhost/annotations_lookup',
'arabidopsis_ecotypes': 'mysql://root:root@localhost/arabidopsis_ecotypes',
'arabidopsis_flower_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_flower_lee_pseudobulk',
'arabidopsis_flower_lee_umap': 'mysql://root:root@localhost/arabidopsis_flower_lee_umap',
'arabidopsis_NIE_pseudobulk': 'mysql://root:root@localhost/arabidopsis_NIE_pseudobulk',
'arabidopsis_NIE_umap': 'mysql://root:root@localhost/arabidopsis_NIE_umap',
'arabidopsis_root_shahan_pseudobulk': 'mysql://root:root@localhost/arabidopsis_root_shahan_pseudobulk',
'arabidopsis_root_shahan_umap': 'mysql://root:root@localhost/arabidopsis_root_shahan_umap',
'arabidopsis_rosette_21d_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_rosette_21d_lee_pseudobulk',
'arabidopsis_rosette_21d_lee_umap': 'mysql://root:root@localhost/arabidopsis_rosette_21d_lee_umap',
'arabidopsis_rosette_30d_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_rosette_30d_lee_pseudobulk',
'arabidopsis_rosette_30d_lee_umap': 'mysql://root:root@localhost/arabidopsis_rosette_30d_lee_umap',
'arabidopsis_seed_0d_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_seed_0d_lee_pseudobulk',
'arabidopsis_seed_0d_lee_umap': 'mysql://root:root@localhost/arabidopsis_seed_0d_lee_umap',
'arabidopsis_seed_martin_pseudobulk': 'mysql://root:root@localhost/arabidopsis_seed_martin_pseudobulk',
'arabidopsis_seed_martin_umap': 'mysql://root:root@localhost/arabidopsis_seed_martin_umap',
'arabidopsis_seedling_12d_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_seedling_12d_lee_pseudobulk',
'arabidopsis_seedling_12d_lee_umap': 'mysql://root:root@localhost/arabidopsis_seedling_12d_lee_umap',
'arabidopsis_seedling_3d_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_seedling_3d_lee_pseudobulk',
'arabidopsis_seedling_3d_lee_umap': 'mysql://root:root@localhost/arabidopsis_seedling_3d_lee_umap',
'arabidopsis_seedling_6d_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_seedling_6d_lee_pseudobulk',
'arabidopsis_seedling_6d_lee_umap': 'mysql://root:root@localhost/arabidopsis_seedling_6d_lee_umap',
'arabidopsis_shoot_zhang_pseudobulk': 'mysql://root:root@localhost/arabidopsis_shoot_zhang_pseudobulk',
'arabidopsis_shoot_zhang_umap': 'mysql://root:root@localhost/arabidopsis_shoot_zhang_umap',
'arabidopsis_silique_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_silique_lee_pseudobulk',
'arabidopsis_silique_lee_umap': 'mysql://root:root@localhost/arabidopsis_silique_lee_umap',
'arabidopsis_stem_lee_pseudobulk': 'mysql://root:root@localhost/arabidopsis_stem_lee_pseudobulk',
'arabidopsis_stem_lee_umap': 'mysql://root:root@localhost/arabidopsis_stem_lee_umap',
'arachis': 'mysql://root:root@localhost/arachis',
'cannabis': 'mysql://root:root@localhost/cannabis',
'canola_nssnp' : 'mysql://root:root@localhost/canola_nssnp',
Expand All @@ -35,6 +59,8 @@ SQLALCHEMY_BINDS = {
'physcomitrella_db' : 'mysql://root:root@localhost/physcomitrella_db',
'poplar_nssnp' : 'mysql://root:root@localhost/poplar_nssnp',
'rice_interactions': 'mysql://root:root@localhost/rice_interactions',
'rice_OW_pseudobulk': 'mysql://root:root@localhost/rice_OW_pseudobulk',
'rice_OW_umap': 'mysql://root:root@localhost/rice_OW_umap',
'selaginella': 'mysql://root:root@localhost/selaginella',
'shoot_apex': 'mysql://root:root@localhost/shoot_apex',
'silique': 'mysql://root:root@localhost/silique',
Expand Down
59 changes: 59 additions & 0 deletions config/databases/arabidopsis_flower_lee_pseudobulk_dump.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,59 @@
-- MySQL dump 10.13 Distrib 9.4.0, for Linux (x86_64)
--
-- Host: localhost Database: arabidopsis_flower_lee_pseudobulk
-- ------------------------------------------------------
-- Server version 9.4.0

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!50503 SET NAMES utf8mb4 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Current Database: `arabidopsis_flower_lee_pseudobulk`
--

CREATE DATABASE /*!32312 IF NOT EXISTS*/ `arabidopsis_flower_lee_pseudobulk` /*!40100 DEFAULT CHARACTER SET latin1 */ /*!80016 DEFAULT ENCRYPTION='N' */;

USE `arabidopsis_flower_lee_pseudobulk`;

--
-- Table structure for table `sample_data`
--

DROP TABLE IF EXISTS `sample_data`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `sample_data` (
`data_probeset_id` varchar(16) NOT NULL,
`data_signal` float DEFAULT '0',
`data_signal_std` float DEFAULT '0',
`data_bot_id` varchar(64) NOT NULL,
KEY `data_probeset_id` (`data_probeset_id`,`data_bot_id`,`data_signal`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `sample_data`
--

LOCK TABLES `sample_data` WRITE;
/*!40000 ALTER TABLE `sample_data` DISABLE KEYS */;
INSERT INTO `sample_data` VALUES ('AT1G01010',0.00849616,0.149845,'Unknown'),('AT1G01010',0.00382709,0.0747515,'Tapetum'),('AT1G01010',0.00555427,0.11437,'Gynoecium and developing ovule'),('AT1G01010',0.0165317,0.193183,'Anther'),('AT1G01010',0.0168979,0.204127,'Epidermal'),('AT1G01010',0.0129372,0.163582,'Male meiocyte'),('AT1G01010',0.00575536,0.116394,'Pollen'),('AT1G01010',0.0666808,0.380699,'Vascular'),('AT1G01010',0,0,'Developing ovule'),('AT1G01010',0.0116959,0.167702,'Mean_CTRL'),('AT1G01020',0.0269661,0.272391,'Unknown'),('AT1G01020',0.0461319,0.33191,'Tapetum'),('AT1G01020',0.0293728,0.20296,'Gynoecium and developing ovule'),('AT1G01020',0.0247412,0.224438,'Anther'),('AT1G01020',0.00594706,0.115624,'Epidermal'),('AT1G01020',0.0889595,0.422899,'Male meiocyte'),('AT1G01020',0.0318393,0.28948,'Pollen'),('AT1G01020',0.0792938,0.40418,'Vascular'),('AT1G01020',0.0426172,0.292169,'Developing ovule'),('AT1G01020',0.03165,0.277587,'Mean_CTRL'),('AT1G01030',0.0345644,0.306613,'Unknown'),('AT1G01030',0.0224953,0.231296,'Tapetum'),('AT1G01030',0.0265322,0.225368,'Gynoecium and developing ovule'),('AT1G01030',0.0483986,0.335871,'Anther'),('AT1G01030',0.0118251,0.163059,'Epidermal'),('AT1G01030',0.0297713,0.270059,'Male meiocyte'),('AT1G01030',0.0856332,0.416266,'Pollen'),('AT1G01030',0.047488,0.339749,'Vascular'),('AT1G01030',0.0739971,0.359961,'Developing ovule'),('AT1G01030',0.0373011,0.306399,'Mean_CTRL');
/*!40000 ALTER TABLE `sample_data` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2026-07-30 00:24:07
83 changes: 83 additions & 0 deletions config/databases/arabidopsis_flower_lee_umap.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
-- MySQL dump 10.13 Distrib 9.4.0, for Linux (x86_64)
--
-- Host: localhost Database: arabidopsis_flower_lee_umap
-- ------------------------------------------------------
-- Server version 9.4.0

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!50503 SET NAMES utf8mb4 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Current Database: `arabidopsis_flower_lee_umap`
--

CREATE DATABASE /*!32312 IF NOT EXISTS*/ `arabidopsis_flower_lee_umap` /*!40100 DEFAULT CHARACTER SET latin1 */ /*!80016 DEFAULT ENCRYPTION='N' */;

USE `arabidopsis_flower_lee_umap`;

--
-- Table structure for table `umap_coords`
--

DROP TABLE IF EXISTS `umap_coords`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `umap_coords` (
`cell_id` INT NOT NULL,
`umap_1` FLOAT NOT NULL,
`umap_2` FLOAT NOT NULL,
`cell_type` VARCHAR(128) NOT NULL,
PRIMARY KEY (`cell_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `umap_coords`
--

LOCK TABLES `umap_coords` WRITE;
/*!40000 ALTER TABLE `umap_coords` DISABLE KEYS */;
INSERT INTO `umap_coords` VALUES (4,-3.454307,0.662751,'Unknown'),(45,-3.101461,1.666404,'Unknown'),(71,2.584931,-6.196103,'Gynoecium and developing ovule'),(157,-4.351600,1.759395,'Unknown'),(329,-0.016035,4.015458,'Male meiocyte'),(359,-4.663122,1.347665,'Unknown'),(685,-3.734362,1.471752,'Unknown'),(817,-3.904004,-0.424860,'Unknown');
/*!40000 ALTER TABLE `umap_coords` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `umap_expression`
--

DROP TABLE IF EXISTS `umap_expression`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `umap_expression` (
`gene_id` VARCHAR(32) NOT NULL,
`expression` JSON NOT NULL,
PRIMARY KEY (`gene_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `umap_expression`
--

LOCK TABLES `umap_expression` WRITE;
/*!40000 ALTER TABLE `umap_expression` DISABLE KEYS */;
INSERT INTO `umap_expression` VALUES ('AT1G01010','{\"157\": 2.640544, \"685\": 2.787718, \"817\": 2.576473}'),('AT1G01020','{\"71\": 1.386144, \"329\": 2.122614, \"359\": 3.014546}'),('AT1G01030','{\"4\": 2.117453, \"45\": 3.218108}');
/*!40000 ALTER TABLE `umap_expression` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2026-07-30 01:27:00
59 changes: 59 additions & 0 deletions config/databases/arabidopsis_root_shahan_pseudobulk_dump.sql

Large diffs are not rendered by default.

83 changes: 83 additions & 0 deletions config/databases/arabidopsis_root_shahan_umap.sql
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
-- MySQL dump 10.13 Distrib 9.4.0, for Linux (x86_64)
--
-- Host: localhost Database: arabidopsis_root_shahan_umap
-- ------------------------------------------------------
-- Server version 9.4.0

/*!40101 SET @OLD_CHARACTER_SET_CLIENT=@@CHARACTER_SET_CLIENT */;
/*!40101 SET @OLD_CHARACTER_SET_RESULTS=@@CHARACTER_SET_RESULTS */;
/*!40101 SET @OLD_COLLATION_CONNECTION=@@COLLATION_CONNECTION */;
/*!50503 SET NAMES utf8mb4 */;
/*!40103 SET @OLD_TIME_ZONE=@@TIME_ZONE */;
/*!40103 SET TIME_ZONE='+00:00' */;
/*!40014 SET @OLD_UNIQUE_CHECKS=@@UNIQUE_CHECKS, UNIQUE_CHECKS=0 */;
/*!40014 SET @OLD_FOREIGN_KEY_CHECKS=@@FOREIGN_KEY_CHECKS, FOREIGN_KEY_CHECKS=0 */;
/*!40101 SET @OLD_SQL_MODE=@@SQL_MODE, SQL_MODE='NO_AUTO_VALUE_ON_ZERO' */;
/*!40111 SET @OLD_SQL_NOTES=@@SQL_NOTES, SQL_NOTES=0 */;

--
-- Current Database: `arabidopsis_root_shahan_umap`
--

CREATE DATABASE /*!32312 IF NOT EXISTS*/ `arabidopsis_root_shahan_umap` /*!40100 DEFAULT CHARACTER SET latin1 */ /*!80016 DEFAULT ENCRYPTION='N' */;

USE `arabidopsis_root_shahan_umap`;

--
-- Table structure for table `umap_coords`
--

DROP TABLE IF EXISTS `umap_coords`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `umap_coords` (
`cell_id` INT NOT NULL,
`umap_1` FLOAT NOT NULL,
`umap_2` FLOAT NOT NULL,
`cell_type` VARCHAR(128) NOT NULL,
PRIMARY KEY (`cell_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `umap_coords`
--

LOCK TABLES `umap_coords` WRITE;
/*!40000 ALTER TABLE `umap_coords` DISABLE KEYS */;
INSERT INTO `umap_coords` VALUES (3,-5.369063,13.085638,'col0_Root endodermis'),(16,-2.009994,7.254005,'col0_Phloem'),(36,-0.523138,2.255024,'col0_Phloem pole pericycle'),(44,-0.023207,2.463476,'col0_Phloem pole pericycle'),(62,6.431638,11.482953,'col0_Metaxylem'),(82,-4.284084,-11.077536,'col0_Root hair'),(89,5.733176,3.742696,'col0_Lateral root cap'),(159,-0.406075,15.254973,'col0_Root endodermis');
/*!40000 ALTER TABLE `umap_coords` ENABLE KEYS */;
UNLOCK TABLES;

--
-- Table structure for table `umap_expression`
--

DROP TABLE IF EXISTS `umap_expression`;
/*!40101 SET @saved_cs_client = @@character_set_client */;
/*!50503 SET character_set_client = utf8mb4 */;
CREATE TABLE `umap_expression` (
`gene_id` VARCHAR(32) NOT NULL,
`expression` JSON NOT NULL,
PRIMARY KEY (`gene_id`)
) ENGINE=InnoDB DEFAULT CHARSET=latin1;
/*!40101 SET character_set_client = @saved_cs_client */;

--
-- Dumping data for table `umap_expression`
--

LOCK TABLES `umap_expression` WRITE;
/*!40000 ALTER TABLE `umap_expression` DISABLE KEYS */;
INSERT INTO `umap_expression` VALUES ('AT1G01010','{\"3\": 2.205624, \"16\": 0.762018, \"44\": 1.738013, \"159\": 0.902622}'),('AT1G01020','{\"36\": 1.82633, \"62\": 0.80323, \"82\": 0.967385, \"89\": 1.572109}'),('AT1G01030','{\"89\": 1.572109, \"159\": 0.549872}');
/*!40000 ALTER TABLE `umap_expression` ENABLE KEYS */;
UNLOCK TABLES;
/*!40103 SET TIME_ZONE=@OLD_TIME_ZONE */;
/*!40101 SET SQL_MODE=@OLD_SQL_MODE */;
/*!40014 SET FOREIGN_KEY_CHECKS=@OLD_FOREIGN_KEY_CHECKS */;
/*!40014 SET UNIQUE_CHECKS=@OLD_UNIQUE_CHECKS */;
/*!40101 SET CHARACTER_SET_CLIENT=@OLD_CHARACTER_SET_CLIENT */;
/*!40101 SET CHARACTER_SET_RESULTS=@OLD_CHARACTER_SET_RESULTS */;
/*!40101 SET COLLATION_CONNECTION=@OLD_COLLATION_CONNECTION */;
/*!40111 SET SQL_NOTES=@OLD_SQL_NOTES */;
-- Dump completed on 2026-08-12 01:40:46
Loading
Loading