### Database Schema:
CREATE TABLE connected (
	atom_id	TEXT	NOT NULL	PRIMARY KEY,
	atom_id2	TEXT	NOT NULL	PRIMARY KEY,
	bond_id	TEXT	NULL	DEFAULT NULL,
	foreign key (atom_id2) references atom (atom_id),
	foreign key (atom_id) references atom (atom_id),
	foreign key (bond_id) references bond (bond_id)
);

CREATE TABLE atom (
	atom_id	TEXT	NOT NULL	PRIMARY KEY,
	molecule_id	TEXT	NULL	DEFAULT NULL,
	element	TEXT	NULL	DEFAULT NULL,
	foreign key (molecule_id) references molecule (molecule_id)
);

CREATE TABLE bond (
	bond_id	TEXT	NOT NULL	PRIMARY KEY,
	molecule_id	TEXT	NULL	DEFAULT NULL,
	bond_type	TEXT	NULL	DEFAULT NULL,
	foreign key (molecule_id) references molecule (molecule_id)
);

CREATE TABLE molecule (
	molecule_id	TEXT	NOT NULL	PRIMARY KEY,
	label	TEXT	NULL	DEFAULT NULL
);

### User's Query:
Among all the atoms from 21 to 25, list all the molecules that are carcinogenic.

### Extra Knowledge:
atoms from 21 to 25 refers to SUBSTR(atom_id, 7, 2) between '21' and '25'; label = '+' mean molecules are carcinogenic
SELECT DISTINCT T2.molecule_id FROM atom AS T1 INNER JOIN molecule AS T2 ON T1.molecule_id = T2.molecule_id WHERE SUBSTR(T1.atom_id, -2) BETWEEN '21' AND '25' AND T2.label = '+'