sdf-parser 5.0.0

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.
@@ -0,0 +1,38 @@
1
+
2
+ -ISIS- 04231216572D
3
+
4
+ 15 16 0 0 0 0 0 0 0 0999 V2000
5
+ 2.4792 1.7000 0.0000 N 0 0 0 0 0 0 0 0 0 0 0 0
6
+ 2.4292 0.3500 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
7
+ 0.4042 1.1208 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
8
+ 1.2167 2.1833 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
9
+ 1.1542 -0.0000 0.0000 S 0 0 0 0 0 0 0 0 0 0 0 0
10
+ -0.9208 1.1208 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
11
+ 3.4792 -0.4500 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
12
+ 0.8792 3.4458 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
13
+ -1.6000 -0.0292 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
14
+ -0.9625 -1.1792 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
15
+ -1.6208 -2.3292 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
16
+ -0.9125 -3.4375 0.0000 Br 0 0 0 0 0 0 0 0 0 0 0 0
17
+ -3.5958 -1.1792 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
18
+ -2.9208 -0.0292 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
19
+ -3.0333 -2.3292 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
20
+ 2 1 1 0 0 0 0
21
+ 3 4 1 0 0 0 0
22
+ 4 1 1 0 0 0 0
23
+ 5 2 1 0 0 0 0
24
+ 6 3 2 0 0 0 0
25
+ 7 2 2 0 0 0 0
26
+ 8 4 2 0 0 0 0
27
+ 9 6 1 0 0 0 0
28
+ 10 9 2 0 0 0 0
29
+ 11 10 1 0 0 0 0
30
+ 12 11 1 0 0 0 0
31
+ 13 14 2 0 0 0 0
32
+ 14 9 1 0 0 0 0
33
+ 15 13 1 0 0 0 0
34
+ 3 5 1 0 0 0 0
35
+ 15 11 2 0 0 0 0
36
+ M END
37
+ $$$$
38
+
@@ -0,0 +1,498 @@
1
+ warburganal
2
+ CDK
3
+ nmrshiftdb2 234
4
+ 18 19 0 0 0 0 0 0 0 0999 V2000
5
+ -2.4188 1.9265 -0.1204 C 0 0 0 0 0 0 0 0 0 0 0 0
6
+ -3.0702 0.6566 -0.6740 C 0 0 0 0 0 0 0 0 0 0 0 0
7
+ -2.5040 -0.6506 -0.0665 C 0 0 0 0 0 0 0 0 0 0 0 0
8
+ -0.9365 -0.6310 -0.1991 C 0 0 0 0 0 0 0 0 0 0 0 0
9
+ -0.1880 0.6856 0.2101 C 0 0 0 0 0 0 0 0 0 0 0 0
10
+ -0.9097 1.9193 -0.3870 C 0 0 0 0 0 0 0 0 0 0 0 0
11
+ -0.2433 -1.8547 0.4293 C 0 0 0 0 0 0 0 0 0 0 0 0
12
+ 1.2452 -1.8170 0.2832 C 0 0 0 0 0 0 0 0 0 0 0 0
13
+ 1.9466 -0.7292 -0.0801 C 0 0 0 0 0 0 0 0 0 0 0 0
14
+ 1.2674 0.5821 -0.4361 C 0 0 0 0 0 0 0 0 0 0 0 0
15
+ -0.0524 0.8507 1.7414 C 0 0 0 0 0 0 0 0 0 0 0 0
16
+ 2.1047 1.7977 -0.0188 C 0 0 0 0 0 0 0 0 0 0 0 0
17
+ -3.0366 -0.8304 1.3731 C 0 0 0 0 0 0 0 0 0 0 0 0
18
+ 1.2373 0.7201 -1.8727 O 0 0 0 0 0 0 0 0 0 0 0 0
19
+ -3.0535 -1.8303 -0.9018 C 0 0 0 0 0 0 0 0 0 0 0 0
20
+ 3.4207 -0.8568 -0.2719 C 0 0 0 0 0 0 0 0 0 0 0 0
21
+ 2.7903 1.8536 0.9768 O 0 0 0 0 0 0 0 0 0 0 0 0
22
+ 4.0585 -1.8566 -0.0020 O 0 0 0 0 0 0 0 0 0 0 0 0
23
+ 1 2 1 0 0 0 0
24
+ 1 6 1 0 0 0 0
25
+ 2 3 1 0 0 0 0
26
+ 3 4 1 0 0 0 0
27
+ 3 13 1 0 0 0 0
28
+ 3 15 1 0 0 0 0
29
+ 4 5 1 0 0 0 0
30
+ 4 7 1 0 0 0 0
31
+ 5 6 1 0 0 0 0
32
+ 5 10 1 0 0 0 0
33
+ 5 11 1 0 0 0 0
34
+ 7 8 1 0 0 0 0
35
+ 8 9 2 0 0 0 0
36
+ 9 10 1 0 0 0 0
37
+ 9 16 1 0 0 0 0
38
+ 10 12 1 0 0 0 0
39
+ 10 14 1 0 0 0 0
40
+ 12 17 2 0 0 0 0
41
+ 16 18 2 0 0 0 0
42
+ M END
43
+ > <Temperature [K]>
44
+ 0:298
45
+
46
+ > <Field Strength [MHz]>
47
+ 0:50
48
+
49
+ > <nmrshiftdb2 ID>
50
+ 234
51
+
52
+ > <Spectrum 13C 0>
53
+ 17.6;0.0Q;10|18.3;0.0T;0|22.6;0.0Q;12|26.5;0.0T;6|31.7;0.0T;5|33.5;0.0S;2|33.5;0.0S;14|41.8;0.0T;1|42.0;0.0S;4|42.2;0.0D;3|78.34;0.0S;9|140.99;0.0S;8|158.3;0.0D;7|193.4;0.0D;15|203.0;0.0D;11|
54
+
55
+ > <Solvent>
56
+ 0:Chloroform-D1 (CDCl3)
57
+
58
+ $$$$
59
+ Subergorgiol
60
+ CDK
61
+ nmrshiftdb2 2151
62
+ 16 18 0 0 0 0 0 0 0 0999 V2000
63
+ -2.4064 1.8581 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
64
+ -3.0738 1.3732 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
65
+ -2.8189 0.5885 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
66
+ -2.4064 -0.6810 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
67
+ -1.7389 -0.1961 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
68
+ -1.9938 0.5885 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
69
+ -0.9138 1.3732 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
70
+ -0.6589 0.5885 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
71
+ 0.0421 0.1536 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
72
+ -1.1389 0.2599 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
73
+ -0.7301 -0.4568 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
74
+ -3.0738 -0.1961 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
75
+ -3.8585 -0.4509 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
76
+ -1.7389 1.3732 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
77
+ -1.4840 2.1578 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
78
+ 0.0160 -0.6710 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
79
+ 1 2 1 0 0 0 0
80
+ 2 3 1 0 0 0 0
81
+ 3 6 1 0 0 0 0
82
+ 6 14 1 0 0 0 0
83
+ 1 14 1 0 0 0 0
84
+ 6 10 1 0 0 0 0
85
+ 10 8 1 0 0 0 0
86
+ 8 7 2 0 0 0 0
87
+ 14 7 1 0 0 0 0
88
+ 3 12 1 1 0 0 0
89
+ 12 4 1 0 0 0 0
90
+ 4 5 1 0 0 0 0
91
+ 6 5 1 1 0 0 0
92
+ 8 9 1 0 0 0 0
93
+ 9 16 1 0 0 0 0
94
+ 10 11 1 1 0 0 0
95
+ 12 13 1 6 0 0 0
96
+ 14 15 1 1 0 0 0
97
+ M END
98
+ > <Temperature [K]>
99
+ 0:298
100
+
101
+ > <Field Strength [MHz]>
102
+ 0:125
103
+
104
+ > <nmrshiftdb2 ID>
105
+ 2151
106
+
107
+ > <Spectrum 13C 0>
108
+ 17.7;0.0Q;10|20.0;0.0Q;12|22.9;0.0Q;14|28.9;0.0T;4|29.9;0.0T;1|35.8;0.0T;3|37.6;0.0T;0|39.7;0.0D;11|50.9;0.0D;9|57.3;0.0S;13|61.3;0.0T;8|64.1;0.0S;5|64.9;0.0D;2|134.0;0.0D;6|146.7;0.0S;7|
109
+
110
+ > <Solvent>
111
+ 0:Chloroform-D1 (CDCl3)
112
+
113
+ $$$$
114
+ 1,2,2,5,5-Pentamethyl-3-imidazoline 3-oxide
115
+ CDK
116
+ nmrshiftdb2 2189
117
+ 11 11 0 0 0 0 0 0 0 0999 V2000
118
+ -2.4127 -1.4040 0.0000 N 0 0 0 0 0 0 0 0 0 0 0 0
119
+ -3.2376 -1.3998 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
120
+ -3.4965 -2.1831 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
121
+ -2.8315 -2.6713 0.0000 N 0 0 0 0 0 0 0 0 0 0 0 0
122
+ -2.1618 -2.1898 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
123
+ -1.3666 -1.9706 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
124
+ -1.4499 -2.5998 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
125
+ -1.8331 -0.8125 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
126
+ -4.2164 -1.7665 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
127
+ -4.0872 -2.7622 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
128
+ -2.8372 -3.4955 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
129
+ 1 2 2 0 0 0 0
130
+ 5 6 1 0 0 0 0
131
+ 5 7 1 0 0 0 0
132
+ 2 3 1 0 0 0 0
133
+ 1 8 1 0 0 0 0
134
+ 3 4 1 0 0 0 0
135
+ 3 9 1 0 0 0 0
136
+ 4 5 1 0 0 0 0
137
+ 3 10 1 0 0 0 0
138
+ 5 1 1 0 0 0 0
139
+ 4 11 1 0 0 0 0
140
+ M CHG 1 1 1
141
+ M CHG 1 8 -1
142
+ M END
143
+ > <Temperature [K]>
144
+ 0:298
145
+
146
+ > <Field Strength [MHz]>
147
+ 0:50.328
148
+
149
+ > <nmrshiftdb2 ID>
150
+ 2189
151
+
152
+ > <Spectrum 13C 0>
153
+ 23.3;0.0Q;8|23.3;0.0Q;9|23.5;0.0Q;5|23.5;0.0Q;6|26.1;0.0Q;10|60.5;0.0S;2|90.0;0.0S;4|132.1;0.0D;1|
154
+
155
+ > <Solvent>
156
+ 0:Acetone-D6 ((CD3)2CO)
157
+
158
+ $$$$
159
+ (+)-(1R,2R,4R,5R)-4-Ethenyl-2-hydroxy-4-methyl-5-(1-methylethenyl)-1-(1-methylet
160
+ CDK
161
+ nmrshiftdb2 2190
162
+ 21 21 0 0 0 0 0 0 0 0999 V2000
163
+ 3.8000 -9.9333 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
164
+ 3.8000 -10.7583 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
165
+ 4.5120 -11.1667 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
166
+ 4.5120 -9.5167 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
167
+ 5.2240 -9.9333 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
168
+ 5.9293 -11.1716 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
169
+ 6.6461 -10.7644 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
170
+ 6.6496 -9.9394 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
171
+ 5.9363 -9.5216 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
172
+ 7.3662 -9.5307 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
173
+ 7.3582 -11.1809 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
174
+ 5.2167 -9.1083 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
175
+ 7.3536 -12.0059 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
176
+ 8.0750 -10.7724 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
177
+ 7.3583 -10.3458 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
178
+ 4.5129 -11.9917 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
179
+ 8.0708 -9.9292 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
180
+ 8.7876 -10.3377 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
181
+ 8.0662 -9.1042 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
182
+ 5.2205 -10.7583 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
183
+ 5.2184 -11.5825 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
184
+ 8 9 1 0 0 0 0
185
+ 8 10 1 1 0 0 0
186
+ 1 4 2 0 0 0 0
187
+ 7 11 1 6 0 0 0
188
+ 2 3 2 0 0 0 0
189
+ 5 12 1 6 0 0 0
190
+ 20 3 1 6 0 0 0
191
+ 11 13 1 0 0 0 0
192
+ 5 4 1 1 0 0 0
193
+ 11 14 1 0 0 0 0
194
+ 5 20 1 0 0 0 0
195
+ 7 15 1 1 0 0 0
196
+ 5 9 1 0 0 0 0
197
+ 3 16 1 0 0 0 0
198
+ 20 6 1 0 0 0 0
199
+ 15 17 1 0 0 0 0
200
+ 6 7 1 0 0 0 0
201
+ 17 18 2 0 0 0 0
202
+ 7 8 1 0 0 0 0
203
+ 17 19 1 0 0 0 0
204
+ 20 21 1 1 0 0 0
205
+ M END
206
+ > <Temperature [K]>
207
+ 0:298
208
+
209
+ > <Field Strength [MHz]>
210
+ 0:125.77
211
+
212
+ > <nmrshiftdb2 ID>
213
+ 2190
214
+
215
+ > <Spectrum 13C 0>
216
+ 16.0;0.0Q;12|16.0;0.0Q;13|18.8;0.0Q;11|20.9;0.0Q;18|25.2;0.0Q;15|33.8;0.0D;10|34.5;0.0T;5|38.7;0.0S;4|38.7;0.0S;8|46.0;0.0D;19|72.2;0.0D;7|73.5;0.0S;6|110.7;0.0T;0|113.0;0.0T;1|147.2;0.0S;2|150.3;0.0D;3|169.3;0.0S;16|
217
+
218
+ > <Solvent>
219
+ 0:Benzene-D6 (C6D6)
220
+
221
+ $$$$
222
+ (-)-Buxakarachiamine; (20S)-20-Dimethylamino-2'-hydroxy-3β-methyl-3'-methyl-buta
223
+ CDK
224
+ nmrshiftdb2 2191
225
+ 43 46 0 0 0 0 0 0 0 0999 V2000
226
+ 1.4701 -6.7219 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
227
+ 2.2951 -6.7219 0.0000 N 0 0 0 0 0 0 0 0 0 0 0 0
228
+ 1.4721 -5.8968 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
229
+ -0.1800 -6.7136 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
230
+ 0.6408 -7.5428 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
231
+ -0.5889 -5.9970 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
232
+ -0.5962 -7.4260 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
233
+ 8.2545 -2.1938 0.0000 N 0 0 0 0 0 0 0 0 0 0 0 0
234
+ 3.3001 -5.3127 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
235
+ 4.0122 -6.5461 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
236
+ 4.0122 -4.8960 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
237
+ 4.7242 -5.3127 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
238
+ 5.4295 -6.5510 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
239
+ 6.1463 -6.1437 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
240
+ 5.4365 -4.9009 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
241
+ 6.1628 -3.6750 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
242
+ 5.4418 -4.0786 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
243
+ 6.8723 -4.0954 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
244
+ 6.8634 -4.9169 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
245
+ 7.6420 -5.1793 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
246
+ 8.1322 -4.5199 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
247
+ 4.7169 -4.4877 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
248
+ 6.8670 -3.2668 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
249
+ 3.5918 -7.2586 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
250
+ 4.4169 -7.2586 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
251
+ 6.8586 -5.7419 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
252
+ 7.0836 -2.1938 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
253
+ 9.0522 -2.4045 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
254
+ 8.0381 -1.3977 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
255
+ 5.2418 -7.2645 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
256
+ 2.2876 -7.5461 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
257
+ 0.6450 -6.7178 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
258
+ 0.6492 -5.8789 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
259
+ 3.3001 -6.1377 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
260
+ 4.0260 -5.7172 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
261
+ 4.7207 -6.1377 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
262
+ 4.7186 -6.9766 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
263
+ 7.6564 -3.8501 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
264
+ 8.4079 -3.4772 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
265
+ 6.1459 -5.3213 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
266
+ 5.4171 -5.7368 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
267
+ 7.6711 -2.7814 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
268
+ 8.4445 -3.1064 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
269
+ 15 40 1 0 0 0 0
270
+ 42 8 1 6 0 0 0
271
+ 1 32 1 0 0 0 0
272
+ 34 2 1 1 0 0 0
273
+ 9 34 1 0 0 0 0
274
+ 15 17 2 0 0 0 0
275
+ 40 19 1 0 0 0 0
276
+ 18 16 1 0 0 0 0
277
+ 16 17 1 0 0 0 0
278
+ 18 19 1 0 0 0 0
279
+ 32 5 1 1 0 0 0
280
+ 1 2 1 0 0 0 0
281
+ 4 6 1 0 0 0 0
282
+ 9 11 1 0 0 0 0
283
+ 34 10 1 0 0 0 0
284
+ 19 20 1 0 0 0 0
285
+ 20 21 1 0 0 0 0
286
+ 21 38 1 0 0 0 0
287
+ 38 18 1 0 0 0 0
288
+ 10 36 1 0 0 0 0
289
+ 12 22 2 0 0 0 0
290
+ 15 22 1 0 0 0 0
291
+ 12 11 1 0 0 0 0
292
+ 18 23 1 1 0 0 0
293
+ 38 42 1 1 0 0 0
294
+ 12 36 1 0 0 0 0
295
+ 10 24 1 1 0 0 0
296
+ 1 3 2 0 0 0 0
297
+ 10 25 1 6 0 0 0
298
+ 4 7 1 0 0 0 0
299
+ 19 26 1 6 0 0 0
300
+ 42 27 1 0 0 0 0
301
+ 32 4 1 0 0 0 0
302
+ 8 28 1 0 0 0 0
303
+ 36 13 1 0 0 0 0
304
+ 8 29 1 0 0 0 0
305
+ 13 14 1 0 0 0 0
306
+ 25 30 1 0 0 0 0
307
+ 14 40 1 0 0 0 0
308
+ 2 31 1 0 0 0 0
309
+ 32 33 1 6 0 0 0
310
+ 34 35 1 6 0 0 0
311
+ 36 37 1 6 0 0 0
312
+ 38 39 1 6 0 0 0
313
+ 40 41 1 1 0 0 0
314
+ 42 43 1 1 0 0 0
315
+ M END
316
+ > <Temperature [K]>
317
+ 0:298
318
+
319
+ > <Field Strength [MHz]>
320
+ 0:100
321
+
322
+ > <nmrshiftdb2 ID>
323
+ 2191
324
+
325
+ > <Spectrum 13C 0>
326
+ 7.7;0.0Q;22|11.8;0.0Q;26|12.5;0.0Q;23|15.3;0.0Q;5|15.8;0.0Q;25|19.8;0.0Q;6|25.2;0.0T;20|27.0;0.0T;12|27.6;0.0T;8|28.7;0.0T;13|31.0;0.0D;3|32.0;0.0Q;30|32.1;0.0D;37|33.3;0.0T;19|38.0;0.0Q;27|38.5;0.0T;15|40.3;0.0T;10|42.0;0.0Q;28|44.2;0.0S;17|45.0;0.0D;35|46.0;0.0S;9|48.0;0.0D;41|48.5;0.0S;18|49.5;0.0D;39|57.6;0.0D;33|64.0;0.0T;24|72.8;0.0D;31|128.3;0.0D;16|129.7;0.0D;21|135.3;0.0S;11|138.6;0.0S;14|177.0;0.0S;0|
327
+
328
+ > <Solvent>
329
+ 0:Chloroform-D1 (CDCl3)
330
+
331
+ $$$$
332
+ Agonodepside B
333
+ CDK
334
+ nmrshiftdb2 2192
335
+ 31 32 0 0 0 0 0 0 0 0999 V2000
336
+ -3.2250 0.1207 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
337
+ -3.6375 -0.5938 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
338
+ -3.2250 -1.3082 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
339
+ -3.6375 -2.0227 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
340
+ -2.4000 -1.3082 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
341
+ -2.4000 0.1207 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
342
+ -1.1625 0.8352 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
343
+ -1.9875 0.8352 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
344
+ -2.4000 1.5497 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
345
+ -1.9875 2.2641 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
346
+ -1.9875 -0.5938 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
347
+ -1.1625 -0.5938 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
348
+ -0.7500 0.1207 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
349
+ -4.4625 -0.5938 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
350
+ -1.9875 -2.0227 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
351
+ 2.1812 -0.5668 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
352
+ -0.7500 -1.3082 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
353
+ 1.7687 -1.2812 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
354
+ 2.1812 -1.9957 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
355
+ 1.7687 -2.7102 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
356
+ 3.0063 -1.9957 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
357
+ 3.0063 -0.5668 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
358
+ 4.2438 0.1477 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
359
+ 3.4188 0.1477 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
360
+ 3.0063 0.8622 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
361
+ 3.4188 1.5766 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
362
+ 3.4188 -2.7102 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
363
+ 3.4188 -1.2812 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
364
+ 4.2438 -1.2812 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
365
+ 4.6563 -0.5668 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
366
+ 4.6563 -1.9957 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
367
+ 11 6 2 0 0 0 0
368
+ 6 1 1 0 0 0 0
369
+ 1 2 2 0 0 0 0
370
+ 2 3 1 0 0 0 0
371
+ 3 5 2 0 0 0 0
372
+ 11 5 1 0 0 0 0
373
+ 2 14 1 0 0 0 0
374
+ 3 4 1 0 0 0 0
375
+ 5 15 1 0 0 0 0
376
+ 6 8 1 0 0 0 0
377
+ 8 7 1 0 0 0 0
378
+ 8 9 2 0 0 0 0
379
+ 9 10 1 0 0 0 0
380
+ 11 12 1 0 0 0 0
381
+ 12 13 2 0 0 0 0
382
+ 12 17 1 0 0 0 0
383
+ 28 22 2 0 0 0 0
384
+ 22 16 1 0 0 0 0
385
+ 16 18 2 0 0 0 0
386
+ 18 19 1 0 0 0 0
387
+ 19 21 2 0 0 0 0
388
+ 28 21 1 0 0 0 0
389
+ 17 18 1 0 0 0 0
390
+ 19 20 1 0 0 0 0
391
+ 21 27 1 0 0 0 0
392
+ 22 24 1 0 0 0 0
393
+ 24 23 1 0 0 0 0
394
+ 24 25 2 0 0 0 0
395
+ 25 26 1 0 0 0 0
396
+ 28 29 1 0 0 0 0
397
+ 29 30 2 0 0 0 0
398
+ 29 31 1 0 0 0 0
399
+ M END
400
+ > <Temperature [K]>
401
+ 0:298
402
+
403
+ > <Field Strength [MHz]>
404
+ 0:125
405
+
406
+ > <nmrshiftdb2 ID>
407
+ 2192
408
+
409
+ > <Spectrum 13C 0>
410
+ 8.1;0.0Q;3|9.0;0.0Q;19|13.5;0.0Q;9|13.7;0.0Q;25|18.2;0.0Q;22|18.3;0.0Q;6|104.6;0.0S;10|108.4;0.0D;0|109.4;0.0S;2|112.4;0.0S;27|113.2;0.0D;15|116.4;0.0S;18|120.9;0.0D;8|121.0;0.0D;24|137.4;0.0S;23|137.5;0.0S;7|145.6;0.0S;21|146.0;0.0S;5|151.2;0.0S;17|159.5;0.0S;20|159.8;0.0S;1|159.8;0.0S;4|168.1;0.0S;11|171.7;0.0S;28|
411
+
412
+ > <Solvent>
413
+ 0:Dimethylsulphoxide-D6 (DMSO-D6, C2D6SO))
414
+
415
+ $$$$
416
+ 9β-(3-Hydroxy-3-methylpentanoyloxy)parthenolide
417
+ CDK
418
+ nmrshiftdb2 2193
419
+ 30 32 0 0 0 0 0 0 0 0999 V2000
420
+ -4.5284 0.3155 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
421
+ -2.8544 -0.3448 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
422
+ -2.8544 0.3415 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
423
+ -3.4783 0.9238 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
424
+ -1.5857 1.1179 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
425
+ -1.6377 1.7521 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
426
+ 0.3380 1.2998 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
427
+ -3.7434 1.3257 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
428
+ -2.4566 0.7842 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
429
+ -1.3864 0.4505 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
430
+ -1.6680 -0.3164 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
431
+ -0.9609 -0.9106 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
432
+ -1.0483 -1.5914 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
433
+ -0.1039 -0.3380 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
434
+ 0.5730 -0.4509 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
435
+ -0.4497 1.4565 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
436
+ -0.3665 2.1809 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
437
+ -0.9557 2.6141 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
438
+ 0.2018 2.5760 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
439
+ 1.1565 2.6280 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
440
+ 0.6402 2.1809 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
441
+ 0.6662 1.5986 0.0000 O 0 0 0 0 0 0 0 0 0 0 0 0
442
+ 1.2866 1.7077 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
443
+ 1.8975 1.8853 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
444
+ -0.2555 0.4030 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
445
+ 0.5940 0.2384 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
446
+ -0.7929 0.8622 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
447
+ -0.4820 0.0547 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
448
+ -2.2340 0.0764 0.0000 C 0 0 0 0 0 0 0 0 0 0 0 0
449
+ -1.8146 -0.6805 0.0000 H 0 0 0 0 0 0 0 0 0 0 0 0
450
+ 8 1 1 0 0 0 0
451
+ 1 3 1 0 0 0 0
452
+ 3 29 1 0 0 0 0
453
+ 3 2 1 6 0 0 0
454
+ 29 2 1 1 0 0 0
455
+ 3 4 1 0 0 0 0
456
+ 9 5 2 0 0 0 0
457
+ 5 27 1 0 0 0 0
458
+ 5 6 1 0 0 0 0
459
+ 27 7 1 0 0 0 0
460
+ 7 25 1 0 0 0 0
461
+ 25 10 1 0 0 0 0
462
+ 10 29 1 0 0 0 0
463
+ 8 9 1 0 0 0 0
464
+ 10 11 1 6 0 0 0
465
+ 25 14 1 1 0 0 0
466
+ 11 12 1 0 0 0 0
467
+ 14 12 1 0 0 0 0
468
+ 12 13 2 0 0 0 0
469
+ 14 15 2 0 0 0 0
470
+ 27 16 1 1 0 0 0
471
+ 16 17 1 0 0 0 0
472
+ 17 18 2 0 0 0 0
473
+ 17 19 1 0 0 0 0
474
+ 19 21 1 0 0 0 0
475
+ 21 20 1 0 0 0 0
476
+ 21 22 1 0 0 0 0
477
+ 21 23 1 0 0 0 0
478
+ 23 24 1 0 0 0 0
479
+ 25 26 1 6 0 0 0
480
+ 27 28 1 6 0 0 0
481
+ 29 30 1 6 0 0 0
482
+ M END
483
+ > <Temperature [K]>
484
+ 0:298
485
+
486
+ > <Field Strength [MHz]>
487
+ 0:50
488
+
489
+ > <nmrshiftdb2 ID>
490
+ 2193
491
+
492
+ > <Spectrum 13C 0>
493
+ 8.3;0.0Q;23|11.7;0.0Q;5|17.3;0.0Q;3|23.8;0.0T;7|26.2;0.0Q;19|34.6;0.0T;22|35.9;0.0T;0|36.0;0.0T;6|44.0;0.0D;24|44.4;0.0T;18|61.3;0.0S;2|65.9;0.0D;28|71.0;0.0S;20|81.0;0.0D;26|81.5;0.0D;9|122.0;0.0T;14|128.1;0.0D;8|132.6;0.0S;4|137.9;0.0S;13|169.0;0.0S;11|172.0;0.0S;16|
494
+
495
+ > <Solvent>
496
+ 0:Chloroform-D1 (CDCl3)
497
+
498
+ $$$$
@@ -0,0 +1,16 @@
1
+ export function getEntriesBoundaries(string, substring, eol) {
2
+ const res = [];
3
+ let previous = 0;
4
+ let next = 0;
5
+ while (next !== -1) {
6
+ next = string.indexOf(substring, previous);
7
+ if (next !== -1) {
8
+ res.push([previous, next]);
9
+ previous = next =
10
+ string.indexOf(eol, next + substring.length) + eol.length;
11
+ } else {
12
+ res.push([previous, string.length]);
13
+ }
14
+ }
15
+ return res;
16
+ }
package/src/index.js ADDED
@@ -0,0 +1,2 @@
1
+ export * from './parse';
2
+ export * from './stream';
package/src/parse.js ADDED
@@ -0,0 +1,148 @@
1
+ import { getEntriesBoundaries } from './getEntriesBoundaries';
2
+
3
+ export function parse(sdf, options = {}) {
4
+ const {
5
+ include,
6
+ exclude,
7
+ filter,
8
+ modifiers = {},
9
+ forEach = {},
10
+ dynamicTyping = true,
11
+ } = options;
12
+
13
+ if (typeof sdf !== 'string') {
14
+ throw new TypeError('Parameter "sdf" must be a string');
15
+ }
16
+
17
+ let eol = '\n';
18
+ if (options.mixedEOL) {
19
+ sdf = sdf.replace(/\r\n/g, '\n');
20
+ sdf = sdf.replace(/\r/g, '\n');
21
+ } else {
22
+ // we will find the delimiter in order to be much faster and not use regular expression
23
+ let header = sdf.substr(0, 1000);
24
+ if (header.indexOf('\r\n') > -1) {
25
+ eol = '\r\n';
26
+ } else if (header.indexOf('\r') > -1) {
27
+ eol = '\r';
28
+ }
29
+ }
30
+
31
+ let entriesBoundaries = getEntriesBoundaries(sdf, `${eol}$$$$`, eol);
32
+ let molecules = [];
33
+ let labels = {};
34
+
35
+ let start = Date.now();
36
+
37
+ for (let i = 0; i < entriesBoundaries.length; i++) {
38
+ let sdfPart = sdf.substring(...entriesBoundaries[i]);
39
+ let parts = sdfPart.split(`${eol}>`);
40
+ if (parts.length > 0 && parts[0].length > 5) {
41
+ let molecule = {};
42
+ let currentLabels = [];
43
+ molecule.molfile = parts[0] + eol;
44
+ for (let j = 1; j < parts.length; j++) {
45
+ let lines = parts[j].split(eol);
46
+ let from = lines[0].indexOf('<');
47
+ let to = lines[0].indexOf('>');
48
+ let label = lines[0].substring(from + 1, to);
49
+ currentLabels.push(label);
50
+ if (!labels[label]) {
51
+ labels[label] = {
52
+ counter: 0,
53
+ isNumeric: dynamicTyping,
54
+ keep: false,
55
+ };
56
+ if (
57
+ (!exclude || exclude.indexOf(label) === -1) &&
58
+ (!include || include.indexOf(label) > -1)
59
+ ) {
60
+ labels[label].keep = true;
61
+ if (modifiers[label]) {
62
+ labels[label].modifier = modifiers[label];
63
+ }
64
+ if (forEach[label]) {
65
+ labels[label].forEach = forEach[label];
66
+ }
67
+ }
68
+ }
69
+ if (labels[label].keep) {
70
+ for (let k = 1; k < lines.length - 1; k++) {
71
+ if (molecule[label]) {
72
+ molecule[label] += eol + lines[k];
73
+ } else {
74
+ molecule[label] = lines[k];
75
+ }
76
+ }
77
+ if (labels[label].modifier) {
78
+ let modifiedValue = labels[label].modifier(molecule[label]);
79
+ if (modifiedValue === undefined || modifiedValue === null) {
80
+ delete molecule[label];
81
+ } else {
82
+ molecule[label] = modifiedValue;
83
+ }
84
+ }
85
+ if (labels[label].isNumeric) {
86
+ if (
87
+ !isFinite(molecule[label]) ||
88
+ molecule[label].match(/^0[0-9]/)
89
+ ) {
90
+ labels[label].isNumeric = false;
91
+ }
92
+ }
93
+ }
94
+ }
95
+ if (!filter || filter(molecule)) {
96
+ molecules.push(molecule);
97
+ // only now we can increase the counter
98
+ for (let j = 0; j < currentLabels.length; j++) {
99
+ labels[currentLabels[j]].counter++;
100
+ }
101
+ }
102
+ }
103
+ }
104
+
105
+ // all numeric fields should be converted to numbers
106
+ for (let label in labels) {
107
+ let currentLabel = labels[label];
108
+ if (currentLabel.isNumeric) {
109
+ currentLabel.minValue = Infinity;
110
+ currentLabel.maxValue = -Infinity;
111
+ for (let j = 0; j < molecules.length; j++) {
112
+ if (molecules[j][label]) {
113
+ let value = parseFloat(molecules[j][label]);
114
+ molecules[j][label] = value;
115
+ if (value > currentLabel.maxValue) {
116
+ currentLabel.maxValue = value;
117
+ }
118
+ if (value < currentLabel.minValue) {
119
+ currentLabel.minValue = value;
120
+ }
121
+ }
122
+ }
123
+ }
124
+ }
125
+
126
+ // we check that a label is in all the records
127
+ for (let key in labels) {
128
+ if (labels[key].counter === molecules.length) {
129
+ labels[key].always = true;
130
+ } else {
131
+ labels[key].always = false;
132
+ }
133
+ }
134
+
135
+ let statistics = [];
136
+ for (let key in labels) {
137
+ let statistic = labels[key];
138
+ statistic.label = key;
139
+ statistics.push(statistic);
140
+ }
141
+
142
+ return {
143
+ time: Date.now() - start,
144
+ molecules: molecules,
145
+ labels: Object.keys(labels),
146
+ statistics: statistics,
147
+ };
148
+ }