PFASGroups 3.2.2__py3-none-any.whl
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- HalogenGroups/__init__.py +246 -0
- PFASGroups/ComponentsSolverModel.py +977 -0
- PFASGroups/HalogenGroupModel.py +810 -0
- PFASGroups/PFASDefinitionModel.py +393 -0
- PFASGroups/PFASEmbeddings.py +3315 -0
- PFASGroups/__init__.py +21 -0
- PFASGroups/cli.py +618 -0
- PFASGroups/core.py +415 -0
- PFASGroups/data/Halogen_groups_smarts.json +9024 -0
- PFASGroups/data/PFAS_definitions_smarts.json +170 -0
- PFASGroups/data/component_smarts.json +4 -0
- PFASGroups/data/component_smarts_halogens.json +142 -0
- PFASGroups/data/diatomic_bonds_dict.json +12802 -0
- PFASGroups/draw_mols.py +374 -0
- PFASGroups/embeddings.py +150 -0
- PFASGroups/fragmentation.py +548 -0
- PFASGroups/generate_homologues.py +256 -0
- PFASGroups/generate_mol.py +656 -0
- PFASGroups/generate_paper_figures.py +266 -0
- PFASGroups/getter.py +111 -0
- PFASGroups/homologue_series.py +473 -0
- PFASGroups/parser.py +942 -0
- PFASGroups/prioritise.py +439 -0
- pfasgroups-3.2.2.dist-info/METADATA +724 -0
- pfasgroups-3.2.2.dist-info/RECORD +28 -0
- pfasgroups-3.2.2.dist-info/WHEEL +5 -0
- pfasgroups-3.2.2.dist-info/entry_points.txt +3 -0
- pfasgroups-3.2.2.dist-info/top_level.txt +2 -0
|
@@ -0,0 +1,170 @@
|
|
|
1
|
+
[
|
|
2
|
+
{
|
|
3
|
+
"id": 1,
|
|
4
|
+
"name": "OECD Definition",
|
|
5
|
+
"smarts": [
|
|
6
|
+
"[#6X4!$([#6H1])!$([#6][#17,#35,#53])](F)F"
|
|
7
|
+
],
|
|
8
|
+
"fluorineRatio": null,
|
|
9
|
+
"description": "At least one CF₃ or CF₂ group (not bonded to H, Cl, Br, I)",
|
|
10
|
+
"test": {
|
|
11
|
+
"category": "definition",
|
|
12
|
+
"examples": {
|
|
13
|
+
"positives": [
|
|
14
|
+
"C(F)(F)(F)C(F)(F)C(F)(F)F",
|
|
15
|
+
"OC(=O)C(F)(F)C(F)(F)C(F)(F)F",
|
|
16
|
+
"C(F)(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)F",
|
|
17
|
+
"S(=O)(=O)(O)C(F)(F)C(F)(F)C(F)(F)C(F)(F)F",
|
|
18
|
+
"C(F)(F)(F)C(F)(F)OC(F)(F)C(F)(F)F",
|
|
19
|
+
"C(C(F)(F)F)(F)C(F)(F)C(F)(F)F"
|
|
20
|
+
],
|
|
21
|
+
"negatives": [
|
|
22
|
+
"CCCCCC",
|
|
23
|
+
"C(F)CC",
|
|
24
|
+
"FC(F)C",
|
|
25
|
+
"C(F)(F)(Cl)C",
|
|
26
|
+
"CC(F)C",
|
|
27
|
+
"C1=CC=CC=C1"
|
|
28
|
+
]
|
|
29
|
+
}
|
|
30
|
+
}
|
|
31
|
+
},
|
|
32
|
+
{
|
|
33
|
+
"id": 2,
|
|
34
|
+
"name": "EU PFAS Restriction",
|
|
35
|
+
"smarts": [
|
|
36
|
+
"[#6X4!$([#6][#8H1,#8$([#8][#6H3,#6H2X4,a,#6X3$([#6]=[#8])])])!$([#6][#7H2,#7H1$([#7][#6H3,#6H2X4,a,#6X3$([#6]=[#8])]),#7$([#7]([#6H3,#6H2X4,a,#6X3$([#6]=[#8])])[#6H3,#6H2X4,a,#6X3$([#6]=[#8])])])!$([#6H1])!$([#6][#17,#35,#53])](F)(F)F",
|
|
37
|
+
"[#6X4!$([#6](F)(F)(F))!$([#6]([#8H1,#8$([#8][#6H3,#6H2X4,a,#6X3$([#6]=[#8])])])[#6H3,#6H2X4,#6X3$([#6]=[#8]),a,#8H1,#8$([#8][#6H3,#6H2X4,a,#6X3$([#6]=[#8])]),#16$([#16H1,#16$([#16][#6H3,#6H2X4,a,#6X3$([#6]=[#8])])]),#7$([#7H2,#7H1$([#7$([#7][#6H3]),#7$([#7][#6H2X4]),#7a,#6X3$([#6]=[#8])]),#7$([#7]([#6H3,#6H2X4,a,#6X3$([#6]=[#8])])[#6H3,#6H2X4,a,#6X3$([#6]=[#8])])])])!$([#6]([#7H2,#7H1$([#7][#6H3,#6H2X4,a,#6X3$([#6]=[#8])]),#7$([#7]([#6H3,#6H2X4,a,#6X3$([#6]=[#8])])[#6H3,#6H2X4,a,#6X3$([#6]=[#8])])])[#6H3,#6H2X4,#6X3$([#6]=[#8]),a,#8H1,#8$([#8][#6H3,#6H2X4,a,#6X3$([#6]=[#8])]),#16$([#16H1,#16$([#16][#6H3,#6H2X4,a,#6X3$([#6]=[#8])])]),#7$([#7H2,#7H1$([#7][#6H3,#6H2X4,a,#6X3$([#6]=[#8])]),#7$([#7]([#6H3,#6H2X4,a,#6X3$([#6]=[#8])])[#6H3,#6H2X4,a,#6X3$([#6]=[#8])])])])!$([#6H1])!$([#6][#17,#35,#53])](F)F"
|
|
38
|
+
],
|
|
39
|
+
"fluorineRatio": null,
|
|
40
|
+
"description": "Similar to OECD but with more exclusion criteria",
|
|
41
|
+
"test": {
|
|
42
|
+
"category": "definition",
|
|
43
|
+
"examples": {
|
|
44
|
+
"positives": [
|
|
45
|
+
"C(F)(F)(F)C(F)(F)C(F)(F)F",
|
|
46
|
+
"C(F)(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)C(F)(F)F",
|
|
47
|
+
"S(=O)(=O)(O)C(F)(F)C(F)(F)C(F)(F)C(F)(F)F",
|
|
48
|
+
"C(F)(F)(F)C(F)(F)OC(F)(F)C(F)(F)F",
|
|
49
|
+
"N(CCCC)C(F)(F)C(F)(F)C(F)(F)F"
|
|
50
|
+
],
|
|
51
|
+
"negatives": [
|
|
52
|
+
"CCCCCC",
|
|
53
|
+
"FC(F)C",
|
|
54
|
+
"C(F)(F)(Cl)C",
|
|
55
|
+
"CC(F)C",
|
|
56
|
+
"C1=CC=CC=C1",
|
|
57
|
+
"FCCC"
|
|
58
|
+
]
|
|
59
|
+
}
|
|
60
|
+
}
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"id": 3,
|
|
64
|
+
"name": "OPPT 2023",
|
|
65
|
+
"smarts": [
|
|
66
|
+
"[#6H0X4](F)(F)[#6H0X4](F)",
|
|
67
|
+
"[#6](F)(F)([F,#8,#6H0X4])[#8][#6](F)(F)[F,#8,#6H0X4]",
|
|
68
|
+
"[#6](F)(F)(F)[#6]([#6](F)(F)F)([F,#6H0X4])[F,#6H0X4]"
|
|
69
|
+
],
|
|
70
|
+
"fluorineRatio": null,
|
|
71
|
+
"description": "Three inclusion criteria.",
|
|
72
|
+
"test": {
|
|
73
|
+
"category": "definition",
|
|
74
|
+
"examples": {
|
|
75
|
+
"positives": [
|
|
76
|
+
"C(F)(F)(F)C(F)(F)C(F)(F)F",
|
|
77
|
+
"C(F)(F)C(F)(F)C(F)(F)C",
|
|
78
|
+
"C(F)(F)(F)C(F)(F)OC(F)(F)C(F)(F)F",
|
|
79
|
+
"C(F)(F)(C(F)(F)F)C(F)(F)C(F)(F)F",
|
|
80
|
+
"C(F)(F)(F)C(OC)(F)C(F)(F)F"
|
|
81
|
+
],
|
|
82
|
+
"negatives": [
|
|
83
|
+
"CCCCCC",
|
|
84
|
+
"C(F)CCC",
|
|
85
|
+
"CC(F)(F)C",
|
|
86
|
+
"FC(F)C(F)F",
|
|
87
|
+
"C1=CC=CC=C1"
|
|
88
|
+
]
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
},
|
|
92
|
+
{
|
|
93
|
+
"id": 4,
|
|
94
|
+
"name": "UK PFAS Definition",
|
|
95
|
+
"smarts": [
|
|
96
|
+
"F[#6H0X4!$([#6][#17,#35,#53])](F)F",
|
|
97
|
+
"F[#6H0X4!$([#6][#17,#35,#53])](F)[#6H0X4!$([#6][#17,#35,#53])](F)F"
|
|
98
|
+
],
|
|
99
|
+
"fluorineRatio": null,
|
|
100
|
+
"description": "At least one CF₃ or CF₂ group (not bonded to Cl, Br, I)",
|
|
101
|
+
"test": {
|
|
102
|
+
"category": "definition",
|
|
103
|
+
"examples": {
|
|
104
|
+
"positives": [
|
|
105
|
+
"C(F)(F)(F)C(F)(F)C(F)(F)F",
|
|
106
|
+
"C(F)(F)(F)C(F)(F)C",
|
|
107
|
+
"FC(F)(F)C(F)(F)C",
|
|
108
|
+
"OC(=O)C(F)(F)C(F)(F)C(F)(F)F",
|
|
109
|
+
"S(=O)(=O)(O)C(F)(F)C(F)(F)C(F)(F)C(F)(F)F",
|
|
110
|
+
"C(F)(F)(F)C(F)(F)OC(F)(F)C(F)(F)F"
|
|
111
|
+
],
|
|
112
|
+
"negatives": [
|
|
113
|
+
"CCCCCC",
|
|
114
|
+
"C(F)CC",
|
|
115
|
+
"C(F)(F)C(F)(F)",
|
|
116
|
+
"C(F)(F)C(F)(F)C",
|
|
117
|
+
"CC(F)(F)CC",
|
|
118
|
+
"C(F)(F)(Cl)C",
|
|
119
|
+
"C(F)(F)(Br)C",
|
|
120
|
+
"CC(F)C",
|
|
121
|
+
"C1=CC=CC=C1"
|
|
122
|
+
]
|
|
123
|
+
}
|
|
124
|
+
}
|
|
125
|
+
},
|
|
126
|
+
{
|
|
127
|
+
"id": 5,
|
|
128
|
+
"name": "PFASSTRUCTv5",
|
|
129
|
+
"smarts": [
|
|
130
|
+
"F[#6](F)(F)[#6](F)",
|
|
131
|
+
"F[#6](F)[#6](F)(F)",
|
|
132
|
+
"F[#6](F)(F)[#6]~[#6](F)(F)",
|
|
133
|
+
"[#6](F)(F)[#5,#7,#8,#14,#15,#16][#6](F)(F)"
|
|
134
|
+
],
|
|
135
|
+
"fluorineRatio": 0.3,
|
|
136
|
+
"includeHydrogen": false,
|
|
137
|
+
"description": "Custom structural patterns or F ratio ≥ 0.3 (heavy atoms only)",
|
|
138
|
+
"test": {
|
|
139
|
+
"category": "definition",
|
|
140
|
+
"examples": {
|
|
141
|
+
"positives": [
|
|
142
|
+
"C(=O)(C(F)(F)Cl)C(F)(F)Cl",
|
|
143
|
+
"COC(C(OC(C(=O)C(F)(F)F)(F)F)F)(F)F",
|
|
144
|
+
"C(C(=O)CC(C(=O)C(F)(F)F)(F)F)C(C(=O)C(F)(F)F)(F)F",
|
|
145
|
+
"C(C(CC(F)(F)F)(F)F)C(CC(F)(F)F)(F)F",
|
|
146
|
+
"C(=C(F)F)(OC(OC(=C(F)F)F)(F)F)F",
|
|
147
|
+
"C(=C(F)F)(C(C(=C(F)F)F)(F)F)F",
|
|
148
|
+
"C1(=C(C(=C(C(=C1F)F)F)F)F)C2=C(C(C(=C(C2(F)F)F)F)(F)F)F",
|
|
149
|
+
"C(C(=O)F)(F)F",
|
|
150
|
+
"C(=C(C(F)(F)Cl)F)(C(F)(F)Cl)F",
|
|
151
|
+
"C(C(C(C(F)F)F)F)F",
|
|
152
|
+
"COC(CC(=C(F)F)C(F)(F)F)SC1=CC=CC=C1",
|
|
153
|
+
"C1=CC(=CC(=C1)Cl)NOC(C(C(=O)C(F)(F)F)F)(F)F",
|
|
154
|
+
"CC(C)(CS(=O)(=O)O)NC(=O)CCSCCC(C(C(C(F)(F)F)(F)F)(F)F)(F)F",
|
|
155
|
+
"CN(C)CCCN(CCC(=O)O)S(=O)(=O)C(C(C(C(F)(F)F)(F)F)(F)F)(F)F",
|
|
156
|
+
"C1=CC(=C(C=C1N)Cl)OC(C(OC(F)(F)F)F)(F)F",
|
|
157
|
+
"C1=CC=C2C(=C1)C(OC(O2)(C(F)(F)F)F)(F)F",
|
|
158
|
+
"CCCOC(=O)C(=C(F)F)C(F)(F)F",
|
|
159
|
+
"C[N+](C)(CCCNS(=O)(=O)CCC(C(C(C(C(C(F)(F)F)(F)F)(F)F)(F)F)(F)F)(F)F)CC(=O)[O-]"
|
|
160
|
+
],
|
|
161
|
+
"negatives": [
|
|
162
|
+
"CCCCC(CC(C(F)(F)Br)(F)Cl)Br",
|
|
163
|
+
"C(C(OC(Cl)(Cl)Cl)(F)F)(F)Cl",
|
|
164
|
+
"C1=COC(=C1)C=C(S(=O)(=O)C(F)(F)F)S(=O)(=O)C(F)(F)F",
|
|
165
|
+
"COC(=C(F)Cl)F"
|
|
166
|
+
]
|
|
167
|
+
}
|
|
168
|
+
}
|
|
169
|
+
}
|
|
170
|
+
]
|
|
@@ -0,0 +1,4 @@
|
|
|
1
|
+
{"Perfluoroalkyl":{"component":"[C$([#6H0X4]([F,$([CX4H0]F),$([CX4H0][CX4H0]F),$([#8][CX4H0]F)])([!#17,!#35,!#54])([!#17,!#35,!#54])[CX4H0,F])!R,C$([#6H0X4]([#6H0X4])([#6H0X4])[#6H0X4])!R,O$([#8]([CX4H0](F)F)[CX4H0](F)F)]",
|
|
2
|
+
"end":"[C$([CX4H0]([F,CX4$([CX4H0](F)F)])([F,CX4$([CX4H0](F)F)])([$(*[#1,#17,#35,#53]),!$(*[#9])!#9])),C$([CX4H0](F)(F)F)]"},
|
|
3
|
+
"Polyfluoroalkyl":{"component":"[C$([CX4]([#9,$([#6X4][#9]),$([#8]CF)])[C,F,#1,#17,#35,#53])!R,C$([#6X4]([#6X4])([#6X4])[#6X4])!R,C$([#6X4]([#6X4])[#6X4]F)!R,O$([#8](CF)[C$(C[F,C$(CC(F))])])]",
|
|
4
|
+
"end":"[C$([#6X4]([!$([#6][#9]),#1,F,#17,#35,#53])([!$([#6][#9]),F,#1,#17,#35,#53])F)]"}}
|
|
@@ -0,0 +1,142 @@
|
|
|
1
|
+
{
|
|
2
|
+
"F": {
|
|
3
|
+
"alkyl": {
|
|
4
|
+
"per": {
|
|
5
|
+
"name": "Perfluoroalkyl",
|
|
6
|
+
"component": "[C$([#6H0X4]([F,$([CX4H0]F),$([CX4H0][CX4H0]F),$([#8][CX4H0]F)])([!#17,!#35,!#54])([!#17,!#35,!#54])[CX4H0,F])!R,C$([#6H0X4]([#6H0X4])([#6H0X4])[#6H0X4])!R,O$([#8]([CX4H0](F)F)[CX4H0](F)F)]",
|
|
7
|
+
"end": "[C$([CX4H0]([F,CX4$([CX4H0](F)F)])([F,CX4$([CX4H0](F)F)])([$(*[#1,#17,#35,#53]),!$(*[#9])!#9])),C$([CX4H0](F)(F)F)]"
|
|
8
|
+
},
|
|
9
|
+
"poly": {
|
|
10
|
+
"name": "Polyfluoroalkyl",
|
|
11
|
+
"component": "[C$([CX4]([#9,$([#6X4][#9]),$([#8]CF)])[C,F,#1,#17,#35,#53])!R,C$([#6X4]([#6X4])([#6X4])[#6X4])!R,C$([#6X4]([#6X4])[#6X4]F)!R,O$([#8](CF)[C$(C[F,C$(CC(F))])])]",
|
|
12
|
+
"end": "[C$([#6X4]([!$([#6][#9]),#1,F,#17,#35,#53])([!$([#6][#9]),F,#1,#17,#35,#53])F)]",
|
|
13
|
+
"constraints": {"gte": {"F": 2}}
|
|
14
|
+
}
|
|
15
|
+
},
|
|
16
|
+
"cyclic": {
|
|
17
|
+
"per": {
|
|
18
|
+
"name": "Perfluorocyclic",
|
|
19
|
+
"component": "[#6R$([#6R](F)[F,#6R$([#6](F)F)])]"
|
|
20
|
+
},
|
|
21
|
+
"poly": {
|
|
22
|
+
"name": "Polyfluorocyclic",
|
|
23
|
+
"component": "[#6R$([#6R]([#1,#9,#17,#35,#53])[F,#6R$([#6]([#1,#9,#17,#35,#53])F)])]"
|
|
24
|
+
}
|
|
25
|
+
},
|
|
26
|
+
"aryl": {
|
|
27
|
+
"per": {
|
|
28
|
+
"name": "Perfluoroaryl",
|
|
29
|
+
"component": "[#6aR$([#6aR][F,#6aR$([#6aR]F)])]"
|
|
30
|
+
},
|
|
31
|
+
"poly": {
|
|
32
|
+
"name": "Polyfluoroaryl",
|
|
33
|
+
"component": "[#6aR$([#6aR][F,#6aR$([#6aR][#9])]),#6aR$([#6aR]([#9,#17,#35,#53])[#6aR]F)]"
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
},
|
|
37
|
+
"Cl": {
|
|
38
|
+
"alkyl": {
|
|
39
|
+
"per": {
|
|
40
|
+
"name": "Perchloroalkyl",
|
|
41
|
+
"component": "[C$([#6H0X4]([Cl,$([CX4H0]Cl),$([CX4H0][CX4H0]Cl),$([#8][CX4H0]Cl)])([!#17,!#35,!#54])([!#17,!#35,!#54])[CX4H0,Cl])!R,C$([#6H0X4]([#6H0X4])([#6H0X4])[#6H0X4])!R,O$([#8]([CX4H0](Cl)Cl)[CX4H0](Cl)Cl)]",
|
|
42
|
+
"end": "[C$([CX4H0]([Cl,CX4$([CX4H0](Cl)Cl)])([Cl,CX4$([CX4H0](Cl)Cl)])([$(*[#1,#9,#35,#53]),!$(*[#17])!#17])),C$([CX4H0](Cl)(Cl)Cl)]"
|
|
43
|
+
},
|
|
44
|
+
"poly": {
|
|
45
|
+
"name": "Polychloroalkyl",
|
|
46
|
+
"component": "[C$([CX4]([#17,$([#6X4][#17]),$([#8]CCl)])[C,F,#1,#17,#35,#53])!R,C$([#6X4]([#6X4])([#6X4])[#6X4])!R,C$([#6X4]([#6X4])[#6X4]Cl)!R,O$([#8](CCl)[C$(C[Cl,C$(CC(Cl))])])]",
|
|
47
|
+
"end": "[C$([#6X4]([!$([#6][#17]),#1,#17,#9,#35,#53])([!$([#6][#17]),F,#1,#17,#35,#53])Cl)]",
|
|
48
|
+
"constraints": {"gte": {"Cl": 2}}
|
|
49
|
+
}
|
|
50
|
+
},
|
|
51
|
+
"cyclic": {
|
|
52
|
+
"per": {
|
|
53
|
+
"name": "Perchlorocyclic",
|
|
54
|
+
"component": "[#6R$([#6R](Cl)[Cl,#6R$([#6](Cl)Cl)])]"
|
|
55
|
+
},
|
|
56
|
+
"poly": {
|
|
57
|
+
"name": "Polychlorocyclic",
|
|
58
|
+
"component": "[#6R$([#6R]([#1,#9,#17,#35,#53])[Cl,#6R$([#6]([#1,#9,#17,#35,#53])Cl)])]"
|
|
59
|
+
}
|
|
60
|
+
},
|
|
61
|
+
"aryl": {
|
|
62
|
+
"per": {
|
|
63
|
+
"name": "Perchloroaryl",
|
|
64
|
+
"component": "[#6aR$([#6aR][Cl,#6aR$([#6aR]Cl)])]"
|
|
65
|
+
},
|
|
66
|
+
"poly": {
|
|
67
|
+
"name": "Polychloroaryl",
|
|
68
|
+
"component": "[#6aR$([#6aR][Cl,#6aR$([#6aR][#17])]),#6aR$([#6aR]([#17,#35,#53])[#6aR]Cl)]"
|
|
69
|
+
}
|
|
70
|
+
}
|
|
71
|
+
},
|
|
72
|
+
"Br": {
|
|
73
|
+
"alkyl": {
|
|
74
|
+
"per": {
|
|
75
|
+
"name": "Perbromoalkyl",
|
|
76
|
+
"component": "[C$([#6H0X4]([Br,$([CX4H0]Br),$([CX4H0][CX4H0]Br),$([#8][CX4H0]Br)])([!#17,!#35,!#54])([!#17,!#35,!#54])[CX4H0,Br])!R,C$([#6H0X4]([#6H0X4])([#6H0X4])[#6H0X4])!R,O$([#8]([CX4H0](Br)Br)[CX4H0](Br)Br)]",
|
|
77
|
+
"end": "[C$([CX4H0]([Br,CX4$([CX4H0](Br)Br)])([Br,CX4$([CX4H0](Br)Br)])([$(*[#1,#17,#9,#53]),!$(*[#35])!#35])),C$([CX4H0](Br)(Br)Br)]"
|
|
78
|
+
},
|
|
79
|
+
"poly": {
|
|
80
|
+
"name": "Polybromoalkyl",
|
|
81
|
+
"component": "[C$([CX4]([#35,$([#6X4][#35]),$([#8]CBr)])[C,F,#1,#17,#35,#53])!R,C$([#6X4]([#6X4])([#6X4])[#6X4])!R,C$([#6X4]([#6X4])[#6X4]Br)!R,O$([#8](CBr)[C$(C[Br,C$(CC(Br))])])]",
|
|
82
|
+
"end": "[C$([#6X4]([!$([#6][#35]),#1,Br,#17,#35,#53])([!$([#6][#35]),F,#1,#9,#17,#35,#53])Br)]",
|
|
83
|
+
"constraints": {"gte": {"Br": 2}}
|
|
84
|
+
}
|
|
85
|
+
},
|
|
86
|
+
"cyclic": {
|
|
87
|
+
"per": {
|
|
88
|
+
"name": "Perbromocyclic",
|
|
89
|
+
"component": "[#6R$([#6R](Br)[Br,#6R$([#6](Br)Br)])]"
|
|
90
|
+
},
|
|
91
|
+
"poly": {
|
|
92
|
+
"name": "Polybromocyclic",
|
|
93
|
+
"component": "[#6R$([#6R]([#1,#9,#17,#35,#53])[Br,#6R$([#6]([#1,#9,#17,#35,#53])Br)])]"
|
|
94
|
+
}
|
|
95
|
+
},
|
|
96
|
+
"aryl": {
|
|
97
|
+
"per": {
|
|
98
|
+
"name": "Perbromoaryl",
|
|
99
|
+
"component": "[#6aR$([#6aR][Br,#6aR$([#6aR]Br)])]"
|
|
100
|
+
},
|
|
101
|
+
"poly": {
|
|
102
|
+
"name": "Polybromoaryl",
|
|
103
|
+
"component": "[#6aR$([#6aR][Br,#6aR$([#6aR][#35])]),#6aR$([#6aR]([#9,#17,#35,#53])[#6aR]Br)]"
|
|
104
|
+
}
|
|
105
|
+
}
|
|
106
|
+
},
|
|
107
|
+
"I": {
|
|
108
|
+
"alkyl": {
|
|
109
|
+
"per": {
|
|
110
|
+
"name": "Periodoalkyl",
|
|
111
|
+
"component": "[C$([#6H0X4]([I,$([CX4H0]I),$([CX4H0][CX4H0]I),$([#8][CX4H0]I)])([!#17,!#35,!#54])([!#17,!#35,!#54])[CX4H0,I])!R,C$([#6H0X4]([#6H0X4])([#6H0X4])[#6H0X4])!R,O$([#8]([CX4H0](I)I)[CX4H0](I)I)]",
|
|
112
|
+
"end": "[C$([CX4H0]([I,CX4$([CX4H0](I)I)])([I,CX4$([CX4H0](I)I)])([$(*[#1,#17,#35,#9]),!$(*[#53])!#53])),C$([CX4H0](I)(I)I)]"
|
|
113
|
+
},
|
|
114
|
+
"poly": {
|
|
115
|
+
"name": "Polyiodoalkyl",
|
|
116
|
+
"component": "[C$([CX4]([#53,$([#6X4][#53]),$([#8]CI)])[C,#9,#1,#17,#35,#53])!R,C$([#6X4]([#6X4])([#6X4])[#6X4])!R,C$([#6X4]([#6X4])[#6X4]I)!R,O$([#8](CI)[C$(C[I,C$(CC(I))])])]",
|
|
117
|
+
"end": "[C$([#6X4]([!$([#6][#53]),#1,#9,#17,#35,#53])([!$([#6][#53]),F,#1,#17,#35,#53])I)]",
|
|
118
|
+
"constraints": {"gte": {"I": 2}}
|
|
119
|
+
}
|
|
120
|
+
},
|
|
121
|
+
"cyclic": {
|
|
122
|
+
"per": {
|
|
123
|
+
"name": "Periodocyclic",
|
|
124
|
+
"component": "[#6R$([#6R](I)[I,#6R$([#6](I)I)])]"
|
|
125
|
+
},
|
|
126
|
+
"poly": {
|
|
127
|
+
"name": "Polyiodocyclic",
|
|
128
|
+
"component": "[#6R$([#6R]([#1,#9,#17,#35,#53])[I,#6R$([#6]([#1,#9,#17,#35,#53])I)])]"
|
|
129
|
+
}
|
|
130
|
+
},
|
|
131
|
+
"aryl": {
|
|
132
|
+
"per": {
|
|
133
|
+
"name": "Periodoaryl",
|
|
134
|
+
"component": "[#6aR$([#6aR][I,#6aR$([#6aR]I)])]"
|
|
135
|
+
},
|
|
136
|
+
"poly": {
|
|
137
|
+
"name": "Polyiodoaryl",
|
|
138
|
+
"component": "[#6aR$([#6aR][I,#6aR$([#6aR][#53])]),#6aR$([#6aR]([#9,#17,#35,#53])[#6aR]I)]"
|
|
139
|
+
}
|
|
140
|
+
}
|
|
141
|
+
}
|
|
142
|
+
}
|