diff --git a/README.md b/README.md index 73eae828..37cb075a 100644 --- a/README.md +++ b/README.md @@ -35,6 +35,9 @@ Datasets must be submitted as pull requests. conda env create -f qca-dataset-submission/devtools/prod-envs/qcarchive-user-submit.yaml conda activate qcarchive-user-submit ``` + You may also need to install OpenEye:\ + `conda install -c openeye openeye-toolkits` + 4. Choose a starting notebook and README based on the type of dataset you wish to submit: @@ -202,6 +205,10 @@ The status only refers to the `default` specification which is required for all [![Running](https://img.shields.io/badge/Status-Running-orange)](https://img.shields.io/badge/Status-Running-orange) the dataset is currently running and may have some incomplete jobs. +# Forcefield Release Datasets +| Forcefield | Repo | Optimization | Torsion Drive | Elements | Zenodo | +|-------------|----------|-------------------|--------------------|----------|--------| +| Release OpenFF 2.0.0 Sage | [openff-sage](https://github.com/openforcefield/openff-sage) | [2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0](https://github.com/openforcefield/qca-dataset-submission/tree/master/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0) | [Coming Soon]() | H, C, N, O, S, P, F, Cl, Br, I | [Coming Soon]() | # Basic Datasets diff --git a/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/README.md b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/README.md new file mode 100644 index 00000000..989b45e0 --- /dev/null +++ b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/README.md @@ -0,0 +1,69 @@ +# OpenFF Sage 2.0.0 Training Optimization v1.0 + +### Description + +A quantum chemical (QC) dataset curated to train [OpenFF 2.0.0 Sage](https://github.com/openforcefield/openff-sage) forcefield, with reparametrized Lennard-Jones (LJ) and valence parameters, the latter relevant to this dataset. This QC dataset with the OpenFF default level of theory, B3LYP-D3BJ/DZVP, is used to benchmark Sage geometries and energetics. These optimized conformer geometries where used in conjunction with the QC dataset used to train one dimensional torsional profiles. This Generation 2 dataset increases chemical diversity when compared to Generation 1, which are of value to our industry partners. Large molecules (>20 heavy atoms) were also included, including more flexible molecules and a greater degree of conformational variation which provide intramolecular interactions. + +This is the complete optimization dataset used for training OpenFF 2.0.0 Sage, consisting of the following datasets: + + - [OpenFF Gen 2 Opt Set 1 Roche](https://github.com/openforcefield/qca-dataset-submission/tree/0e6e6da930118e2a2d6402b93c3e3e93830600cc/submissions/2020-03-20-OpenFF-Gen-2-Optimization-Set-1-Roche) + - [OpenFF Gen 2 Opt Set 2 Coverage](https://github.com/openforcefield/qca-dataset-submission/tree/0e6e6da930118e2a2d6402b93c3e3e93830600cc/submissions/2020-03-20-OpenFF-Gen-2-Optimization-Set-2-Coverage) + - [OpenFF Gen 2 Opt Set 3 Pfizer Discrepancy](https://github.com/openforcefield/qca-dataset-submission/tree/0e6e6da930118e2a2d6402b93c3e3e93830600cc/submissions/2020-03-20-OpenFF-Gen-2-Optimization-Set-3-Pfizer-Discrepancy) + - [OpenFF Gen 2 Opt Set 4 eMolecules - Discrepancy](https://github.com/openforcefield/qca-dataset-submission/tree/0e6e6da930118e2a2d6402b93c3e3e93830600cc/submissions/2020-03-20-OpenFF-Gen-2-Optimization-Set-4-eMolecules-Discrepancy) + - [OpenFF Gen 2 Opt Set 5 Bayer](https://github.com/openforcefield/qca-dataset-submission/tree/0e6e6da930118e2a2d6402b93c3e3e93830600cc/submissions/2020-03-20-OpenFF-Gen-2-Optimization-Set-5-Bayer) + +The following filters were applied to those datasets: + + - `RecordStatusFilter(status=RecordStatusEnum.complete)` + - `ConnectivityFilter(tolerance=1.2)` + - `UndefinedStereoFilter()` + - `ElementFilter(allowed_elements=["H", "C", "N", "O", "S", "P", "F", "Cl", "Br", "I"])` + - `ConformerRMSDFilter(max_conformers=10)` + + Further information can be found in the curation scripts for the linked repositories. + +### General Information + +- Date: 2024-12-12 +- Class: OpenFF Optimization Dataset +- Purpose: Complete set of training data for OpenFF 2.0.0 Sage +- Dataset Type: optimization +- Name: OpenFF Sage 2.0.0 Training Optimization Dataset v1.0 +- Number of unique molecules: 1025 +- Number of filtered molecules: 0 +- Number of conformers: 3663 +- Number of conformers (min mean max): 1.00, 3.53, 10.00 +- Mean molecular weight: 261.38 +- Max molecular weight: 544.64 +- Set of charges: -2.0, -1.0, 0.0, 1.0 +- Dataset Submitter: Jennifer A. Clark +- Dataset Curator: Simon Boothroyd +- Dataset Generator: Hyesu Jang + +### QCSubmit generation pipeline + +- `generate-combined-dataset.py`: A python script which shows how the dataset was prepared from the input files. +- `output.txt`: A text file containing the printed output of `generate-combined-dataset.py`. + +### QCSubmit Manifest + +- `generate-combined-dataset.py` +- `dataset.json.bz2`: The basic dataset ready for submission. +- `dataset.pdf`: A pdf file containing molecule 2D structures. +- `dataset.smi`: SMILES for every molecule in the submission. + +### Metadata + +* Elements: {F, I, N, C, P, Cl, S, Br, O, H} +* QC Specifications: default + * basis: DZVP + * implicit_solvent: None + * keywords: {} + * maxiter: 200 + * method: B3LYP-D3BJ + * program: psi4 + * SCF Properties: + * dipole + * quadrupole + * wiberg_lowdin_indices + * mayer_indices \ No newline at end of file diff --git a/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/conda_env.yml b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/conda_env.yml new file mode 100644 index 00000000..362e5f1a --- /dev/null +++ b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/conda_env.yml @@ -0,0 +1,161 @@ +name: qcarchive-user-submit +channels: +- conda-forge +- openeye +dependencies: +- annotated-types=0.7.0=pyhd8ed1ab_1 +- apsw=3.47.0.0=py311hde754ab_0 +- argcomplete=3.5.2=pyhd8ed1ab_0 +- attrs=24.2.0=pyh71513ae_1 +- basis_set_exchange=0.10=pyhd8ed1ab_1 +- brotli=1.1.0=hd74edd7_2 +- brotli-bin=1.1.0=hd74edd7_2 +- brotli-python=1.1.0=py311h3f08180_2 +- bson=0.5.9=py_0 +- bzip2=1.0.8=h99b78c6_7 +- ca-certificates=2024.8.30=hf0a4a13_0 +- cached-property=1.5.2=hd8ed1ab_1 +- cached_property=1.5.2=pyha770c72_1 +- cachetools=5.5.0=pyhd8ed1ab_1 +- cairo=1.18.2=h6a3b0d2_1 +- certifi=2024.8.30=pyhd8ed1ab_0 +- cffi=1.17.1=py311h3a79f62_0 +- chardet=5.2.0=py311h267d04e_2 +- charset-normalizer=3.4.0=pyhd8ed1ab_1 +- colorama=0.4.6=pyhd8ed1ab_1 +- contourpy=1.3.1=py311h210dab8_0 +- cycler=0.12.1=pyhd8ed1ab_1 +- dill=0.3.9=pyhd8ed1ab_1 +- exceptiongroup=1.2.2=pyhd8ed1ab_1 +- font-ttf-dejavu-sans-mono=2.37=hab24e00_0 +- font-ttf-inconsolata=3.000=h77eed37_0 +- font-ttf-source-code-pro=2.038=h77eed37_0 +- font-ttf-ubuntu=0.83=h77eed37_3 +- fontconfig=2.15.0=h1383a14_1 +- fonts-conda-ecosystem=1=0 +- fonts-conda-forge=1=0 +- fonttools=4.55.3=py311h4921393_0 +- freetype=2.12.1=hadb7bae_2 +- freetype-py=2.3.0=pyhd8ed1ab_0 +- greenlet=3.1.1=py311h3f08180_0 +- h2=4.1.0=pyhd8ed1ab_1 +- hpack=4.0.0=pyhd8ed1ab_1 +- hyperframe=6.0.1=pyhd8ed1ab_1 +- icu=75.1=hfee45f7_0 +- idna=3.10=pyhd8ed1ab_1 +- importlib-metadata=8.5.0=pyha770c72_1 +- importlib_resources=6.4.5=pyhd8ed1ab_1 +- iniconfig=2.0.0=pyhd8ed1ab_1 +- jsonschema=4.23.0=pyhd8ed1ab_1 +- jsonschema-specifications=2024.10.1=pyhd8ed1ab_1 +- kiwisolver=1.4.7=py311h2c37856_0 +- krb5=1.21.3=h237132a_0 +- lcms2=2.16=ha0e7c42_0 +- lerc=4.0.0=h9a09cb3_0 +- libblas=3.9.0=25_osxarm64_openblas +- libboost=1.84.0=hc9fb7c5_7 +- libboost-python=1.84.0=py311h8fc16d6_7 +- libbrotlicommon=1.1.0=hd74edd7_2 +- libbrotlidec=1.1.0=hd74edd7_2 +- libbrotlienc=1.1.0=hd74edd7_2 +- libcblas=3.9.0=25_osxarm64_openblas +- libcxx=19.1.5=ha82da77_0 +- libdeflate=1.22=hd74edd7_0 +- libedit=3.1.20191231=hc8eb9b7_2 +- libexpat=2.6.4=h286801f_0 +- libffi=3.4.2=h3422bc3_5 +- libgfortran=5.0.0=13_2_0_hd922786_3 +- libgfortran5=13.2.0=hf226fd6_3 +- libglib=2.82.2=h07bd6cf_0 +- libiconv=1.17=h0d3ecfb_2 +- libintl=0.22.5=h8414b35_3 +- libjpeg-turbo=3.0.0=hb547adb_1 +- liblapack=3.9.0=25_osxarm64_openblas +- liblzma=5.6.3=h39f12f2_1 +- libopenblas=0.3.28=openmp_hf332438_1 +- libpng=1.6.44=hc14010f_0 +- libpq=16.6=hb008251_1 +- librdkit=2024.03.5=h54a62e4_3 +- libsqlite=3.47.0=hbaaea75_1 +- libtiff=4.7.0=ha962b0a_2 +- libwebp-base=1.4.0=h93a5062_0 +- libxcb=1.17.0=hdb1d25a_0 +- libzlib=1.3.1=h8359307_2 +- llvm-openmp=19.1.5=hdb05f8b_0 +- matplotlib-base=3.9.3=py311h031da69_0 +- msgpack-python=1.1.0=py311h2c37856_0 +- multiprocess=0.70.17=py311h917b07b_1 +- munkres=1.1.4=pyh9f0ad1d_0 +- ncurses=6.5=h7bae524_1 +- networkx=3.4.2=pyh267e887_2 +- numpy=1.26.4=py311h7125741_0 +- openeye-toolkits=2024.2.0=py311_0 +- openff-amber-ff-ports=0.0.4=pyhca7485f_0 +- openff-forcefields=2024.09.0=pyhff2d567_0 +- openff-qcsubmit=0.54.0=pyhd8ed1ab_0 +- openff-toolkit-base=0.16.7=pyhd8ed1ab_0 +- openff-units=0.2.2=pyhca7485f_0 +- openff-utilities=0.1.13=pyhd8ed1ab_0 +- openjpeg=2.5.3=h8a3d83b_0 +- openssl=3.4.0=h39f12f2_0 +- packaging=24.2=pyhd8ed1ab_2 +- pandas=2.2.2=py311h4b4568b_1 +- pcre2=10.44=h297a79d_2 +- pillow=11.0.0=py311h3894ae9_0 +- pint=0.23=pyhd8ed1ab_1 +- pip=24.3.1=pyh8b19718_0 +- pixman=0.44.2=h2f9eb0b_0 +- pkgutil-resolve-name=1.3.10=pyhd8ed1ab_2 +- pluggy=1.5.0=pyhd8ed1ab_1 +- pthread-stubs=0.4=hd74edd7_1002 +- pycairo=1.27.0=py311h84a5a08_0 +- pycalverter=1.6.1=pyhd8ed1ab_1 +- pycparser=2.22=pyh29332c3_1 +- pydantic=2.10.3=pyh3cfb1c2_0 +- pydantic-core=2.27.1=py311h3ff9189_0 +- pyjwt=2.10.1=pyhd8ed1ab_0 +- pyparsing=3.2.0=pyhd8ed1ab_2 +- pysocks=1.7.1=pyha55dd90_7 +- pytest=8.3.4=pyhd8ed1ab_1 +- python=3.11.11=hc22306f_1_cpython +- python-constraint=1.4.0=py_0 +- python-dateutil=2.9.0.post0=pyhff2d567_1 +- python-tzdata=2024.2=pyhd8ed1ab_1 +- python_abi=3.11=5_cp311 +- pytz=2024.2=pyhd8ed1ab_1 +- pyyaml=6.0.2=py311h460d6c5_1 +- qcelemental=0.28.0=pyhd8ed1ab_1 +- qcportal=0.56=pyhd8ed1ab_1 +- qhull=2020.2=h420ef59_5 +- rdkit=2024.03.5=py311h8a4e316_3 +- readline=8.2=h92ec313_1 +- referencing=0.35.1=pyhd8ed1ab_1 +- regex=2024.11.6=py311h917b07b_0 +- reportlab=4.2.5=py311h460d6c5_0 +- requests=2.32.3=pyhd8ed1ab_1 +- rlpycairo=0.2.0=pyhd8ed1ab_0 +- rpds-py=0.22.3=py311h3ff9189_0 +- setuptools=75.6.0=pyhff2d567_1 +- six=1.17.0=pyhd8ed1ab_0 +- smirnoff99frosst=1.1.0=pyh44b312d_0 +- sqlalchemy=2.0.36=py311hae2e1ce_0 +- sqlite=3.47.0=hcd14bea_1 +- tabulate=0.9.0=pyhd8ed1ab_2 +- tk=8.6.13=h5083fa2_1 +- tomli=2.2.1=pyhd8ed1ab_1 +- tqdm=4.67.1=pyhd8ed1ab_0 +- typing-extensions=4.12.2=hd8ed1ab_1 +- typing_extensions=4.12.2=pyha770c72_1 +- tzdata=2024b=hc8b5060_0 +- unicodedata2=15.1.0=py311hae2e1ce_1 +- unidecode=1.3.8=pyh29332c3_1 +- urllib3=2.2.3=pyhd8ed1ab_1 +- wheel=0.45.1=pyhd8ed1ab_1 +- xmltodict=0.14.2=pyhd8ed1ab_1 +- xorg-libxau=1.0.11=hd74edd7_1 +- xorg-libxdmcp=1.1.5=hd74edd7_0 +- yaml=0.2.5=h3422bc3_2 +- zipp=3.21.0=pyhd8ed1ab_1 +- zstandard=0.23.0=py311ha60cc69_1 +- zstd=1.5.6=hb46c0d2_0 + diff --git a/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.json.bz2 b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.json.bz2 new file mode 100644 index 00000000..5672e648 --- /dev/null +++ b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.json.bz2 @@ -0,0 +1,3 @@ +version https://git-lfs.github.com/spec/v1 +oid sha256:165105359234746b9c5bcae522f70405b4bfa4586fdb9afd372f0f90f6913145 +size 1972763 diff --git a/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.pdf b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.pdf new file mode 100644 index 00000000..09922bf7 Binary files /dev/null and b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.pdf differ diff --git a/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.smi b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.smi new file mode 100644 index 00000000..5a67bfa9 --- /dev/null +++ b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/dataset.smi @@ -0,0 +1,1039 @@ +CN1C(=O)C=CC=C1c2ccccc2OC +C1CN(CC[NH2+]1)CC2=CC=CNC2=O +CC(C)S(=O)(=O)C1=CC=CS1 +COc1ccccc1F +Cc1ccccc1Oc2ccccc2 +Cc1ccccc1S(=O)(=O)N(C)C +Cc1ccccc1c2ccccc2c3ccccc3 +c1ccc(cc1)COc2ccccc2 +Cc1ccccc1C(=O)c2ccccc2F +c1ccc(cc1)C[N@@]2CCCCS2(=O)=O +c1cnc(nc1)CN2CC[NH2+]CC2 +Cc1ccccc1C(=O)N2CCCCC2 +CCN1C=CC=CC1=O +C[C@H](c1ccccc1)C2=NC=CN2 +c1ccc(cc1)c2ccccc2[C@H]3CCCC(=O)N3 +CCC(=O)NC +C[C@@H](c1ccccc1)C(=O)NC +c1ccc(cc1)S(=O)(=O)C2CC2 +CC(C)C1=NC=CN1C +C1CC1(CO)O +CN1C=CC(=C1C(=O)N(C)C)O +Cc1cccc(c1OC)O +c1ccc(cc1)CN2C=CN=C2 +c1ccc(cc1)[C@@H]2CCCNC2=O +Cc1cccc(c1S(=O)(=O)c2ccccc2)C +Cc1cccc(c1OC)C +C[C@@H](c1ccccc1)Oc2ccccc2 +CCS(=O)(=O)N(C)C +Cc1ccccc1C(=O)c2ccccc2 +CC[N@@]1CCCCS1(=O)=O +CN(C)c1ccccn1 +C1CCC(=O)NCC1 +CS(=O)(=O)Cc1ccccc1 +Cc1ccccc1OC +COc1ccccn1 +Cc1ccccc1COc2ccccc2 +CN(C)S(=O)(=O)c1ccccn1 +Cc1ccccc1c2ccccc2 +CC(=O)c1c(cccc1F)F +CN1C(=O)C=CC=C1OC +c1ccc(c(c1)O)Oc2ccccn2 +CC1=CC=NN1c2ccccc2OC +COc1cccc(c1OC)F +c1ccnc(c1)c2ccccn2 +c1ccc(cc1)C(=O)N2CCCCC2 +c1ccc(cc1)S(=O)(=O)c2ccccc2 +CC1=NCC(=O)N(c2c1cccc2)C +CCc1ccccc1OC +C[S@@](=N)(=O)c1ccccc1 +c1ccc(cc1)c2ccccc2c3ccccc3 +c1cnc(nc1)C2=NC=CO2 +CN1C=CN=C1c2ccccc2 +CN(C)S(=O)(=O)C1=NC=CO1 +c1ccnc(c1)C2=NC=CO2 +CC1=CC=NN1c2ncccn2 +Cc1cccc(c1NC)OC +Cc1cccc(c1OC)F +c1ccc(cc1)CNc2ccccc2 +c1ccc2c(c1)CCCNC2=O +CC1=NCC(=O)Nc2c1cccc2 +CN(C)C(=O)[C@H](c1ccccc1)OC +COc1ccccc1NC(=O)Nc2ccccn2 +c1ccc(cc1)c2ccccc2c3ncccn3 +Cc1cccc(c1N2CC[NH2+]CC2)C +C1C[NH2+]CCC1C2=CC=CNC2=O +C[C@H](c1ccccc1)S(=O)(=O)C +c1ccc(cc1)C2=NCC(=O)Nc3c2cccc3 +COc1ccccc1 +Cc1cccnc1OC +c1ccc(cc1)Oc2ccccc2 +c1ccc(cc1)NS(=O)(=O)c2ccccc2 +CC(=O)c1ccccc1F +c1ccc(c(c1)c2ccccn2)C3=NC=CO3 +CN(C)C(=O)C1=CC=CC(=O)N1 +c1ccnc(c1)C2CC2 +c1ccc(cc1)C(=O)c2ccccc2O +c1ccc(cc1)Oc2ccccn2 +CN(C)S(=O)(=O)c1ccccc1 +c1ccc(cc1)c2ccccc2C3=CC=CC(=O)N3 +c1ccc(cc1)c2ncccn2 +COc1cccnc1N2C=CC=N2 +C[C@@H]1CCCCN1C(=O)c2ccccc2 +Cc1ccccc1C2=NCC(=O)Nc3c2cccc3 +CC(=O)c1ccccc1O +Cc1cccc2c1C(=O)NCCC2 +c1ccc2c(c1)C(=O)C=CN2C3CCCC3 +c1ccc(cc1)c2ccccc2 +CC1=CC=NN1c2ccccc2 +CN(C)C(=O)C1=CC=CNC1=O +c1ccc(cc1)C(=O)c2ncccn2 +c1ccc(c(c1)c2ccccn2)N +CNC(=O)C1=C(C=CN1)O +COc1ccccc1O +CN(C)C(=O)C1=C(C=CN1)OC +CN1C(=CC=N1)OC +c1ccnc(c1)OC2CCCCC2 +c1ccnc(c1)C2COC2 +CC1(CCC1)c2ccccc2 +C1C(CO1)(CO)O +C1CC1N2C=CC=CC2=O +c1cc2c(nc1)N(C=CC2=O)C3CC3 +CNC(=O)C1(CC1)F +c1ccc2c(c1)C(=NCC(=O)N2)c3ccccc3Cl +CC(=O)Nc1ccccn1 +CC(=O)C1=CC=CNC1=O +CC(=O)OC1=CC=CC(=O)N1 +CN(C)C(=O)Nc1ccccc1 +CNC(=O)C1=CC=CC(=O)N1 +c1ccc(cc1)N2CC[NH2+]CC2 +c1ccc(cc1)C2=NCC(=O)Nc3c2c(ccc3)F +c1ccc(cc1)c2ccccc2C3=NC=CN3 +CC1=CC=NN1c2ccccc2F +c1ccc(cc1)N2CCCCC2=O +c1ccc(cc1)Nc2ccccn2 +c1ccc(cc1)C2=NC=CN2 +c1ccc(cc1)C(=O)NC2=NC=CO2 +Cc1cccc(c1NC)F +CN(C)S(=O)(=O)C1=CC=CS1 +c1ccc(cc1)N2C(=O)C=CC=N2 +CN(C)S(=O)(=O)C1=NC=CN1 +CN1C=CN=C1c2ncccn2 +c1cnc(nc1)N2CC[NH2+]CC2 +c1ccc(cc1)Oc2ncccn2 +c1ccnc(c1)NC2=NC=CO2 +CNC(=O)C1=CC=COC1=O +c1ccc(cc1)NC2=NC=CO2 +CN(C1=NC=CO1)C(=O)c2ccccc2 +CC(=O)N(C)C1=CC=CS1 +CN(C)C(=O)C1=CC=CS1 +CC(=O)NCC1=NC=CN1C +c1ccc(cc1)C2(CC2)Nc3ccccc3 +c1ccc2c(c1)C(=O)C=CN2C3CC3 +c1ccc(cc1)S(=O)(=O)N2CCCC2 +CNC(=O)C1=C(C=CN1C)Cl +CC(=O)OC1=CC=CC(=O)N1C +COc1ccccc1OC +c1cc(c(nc1)N2C=CC=N2)F +Cc1ccccc1S(=O)(=O)c2ccccc2C +CN(C)S(=O)(=O)c1ccccc1O +CS(=O)(=O)c1ccccc1 +c1ccc(cc1)S(=O)(=O)C(F)(F)F +C[C@H](c1ccccc1)F +c1ccc(cc1)C2CC[NH2+]CC2 +c1ccc(c(c1)C[N@@]2CCCCS2(=O)=O)O +C[S@](=O)c1ccccc1 +c1ccnc(c1)C2=NN=N[N-]2 +Cc1ccccc1C2=NN=N[N-]2 +c1cc(c2=NON=c2c1)C3C=CNC=C3 +c1ccc(c(c1)C#N)NC(=O)Nc2ccccn2 +c1ccc(c(c1)C2C=CNC=C2)[N+](=O)[O-] +C1CC1NC(=O)C[N@@]2C[C@H](CO2)O +C[C@H]1C[N@@](S(=O)(=O)C1)[NH2+]C +CC[C@@H]1C[C@]1(c2ccc(nn2)OC)[NH3+] +C[C@]1(CC(=O)N1)C2=[NH+]C=CS2 +C[C@@H](C1=NNC(=O)N1)NC#N +C[C@@H](C1=NC(=O)NN1)NC#N +C1[C@H]2[C@@H](C2O)CN1 +C[S@@](=N)(=O)NC1CC1 +CC1(C[C@]1(C(=O)N)C(=O)O)C +C1CC1NC(=O)C[N@H+]2C[C@H](CO2)O +COC(=O)CC1=CSC(=N1)[N-]S(=O)(=O)C +C[C@@H]1C[N@@](S(=O)(=O)C1)NC +CC1(C[C@]1(C(=O)N)C(=O)[O-])C +C[C@]1(CC(=O)N1)C2=NC=CS2 +C[S@](=[N-])(=O)NC1CC1 +c1c[nH+]c(cc1Cl)[S@](=O)O +COC(=O)CC1=CS/C(=N/S(=O)(=O)C)/N1 +COC(=O)CC1=CSC(=N1)NS(=O)(=O)C +C[C@@H](C1=N[N-]C(=O)N1)NC#N +C1[C@@H]2[C@@H](C2O)C[NH2+]1 +CC[C@@H]1C[C@@]1(c2ccc(nn2)OC)N +c1c[nH+]c(cc1Cl)S(=O)[O-] +c1ccc(cc1)P(=N)(c2ccccc2)c3ccccc3 +C(N)[P@H](=O)O +CN1C=CC=C1C(=S)N=P(N(C)C)(N(C)C)N(C)C +C1CC1(C2=NOC=C2)C(=O)[O-] +C(CBr)C1=N[N-]N=N1 +COc1ccc(cc1OC)C2=CC=c3ccccc3=[O+]2 +C1=C(N(C(=C1)O)Br)O +c1cc(ccc1[N+](=O)[O-])S(=O)(=O)[N-]Cl +C=C=CN1CCCC1=O +CSSCCN=C=S +CSC(=S)[N-]N +CC(=O)N[P@](=O)(OC)SC +COP(=O)(NC(=O)C(Cl)(Cl)Cl)OC +c1ccc(cc1)P(=O)(Cl)Cl +C1=C(SN=N1)CNN +CC1(COP(=S)(OC1)[S-])C +CNC(=O)S +c1cc(ccc1c2ccc(cc2)OSOc3ccc(cc3)Cl)OSOc4ccc(cc4)Cl +CC(=O)OC#COC(=O)C +C#Cc1ccccc1 +COC(=O)C[N+]#C +C1CS(=O)(=O)CCC12CN=C(O2)N +[C@@](C(F)(F)Br)(F)(Cl)Br +CC1=C(C=C(S1)Br)C2CC2 +CC(=O)OO +C(C#N)N=[N+]=[N-] +C1=N[C@H](C(=N1)C(=O)N)[N+]#N +C[S@@](=O)Cl +CCc1ccc(cc1)N=S=O +CC(C)S(=O)(=O)Br +c1ccc(cc1)S(=O)(=O)N(F)S(=O)(=O)c2ccccc2 +P(Br)(Br)Br +CN1CCN(CC1)c2c3c(ncn2)N(C=C3)C +CC(=O)N1C(=CC=N1)N +CNC(=O)c1ccc2ccccc2c1O +Cc1ccccc1[C@H]2CCCN2C(=O)C +CN1CCN(CC1)c2c(cncc2Cl)Cl +CN1CCN(CC1)C2=Nc3c(cccn3)O2 +CC(=O)Nc1cccnn1 +CCNC(=O)[C@H]1CCC[N@@]1C +CC(=O)N(C)[C@@H](c1cccnc1)C(=O)NC +CC1=C(N(N=C1)C)N2CCN(CC2)C +C[N@]1CCC[C@H](C1)Nc2c3c(ncn2)NC=C3 +CN1C=C(c2c1cccc2)C(=O)N3CCCCC3 +CNC(=O)C1=C(N=CN1)C(=O)NC +CNC(=O)N1c2ccccc2N=N1 +Cc1cnc2ccccc2c1N3CCCCC3 +CNC(=O)c1c(cccc1OC)O +c1c(c(ncn1)N2CCCCC2)Cl +C[C@@H](C(=O)NC)NC(=O)C(C)C +CC1=C(N(N=C1)C)N2CCCCC2 +CN(C)C(=O)C1=CC=NN1c2ccccc2 +CC(=O)N(c1ccccn1)c2ccccn2 +C[C@@H](C(=O)N(C)C)NC(=O)C +C[C@H](CN1CCN(CC1)C)NC(=O)C +CN1CCN(CC1)C(=O)[C@@H]2CCCCN2 +CN1CCN(CC1)C(=O)CN2C=CC=CC2=O +CC(=O)N1CCC[C@]12CCCC[N@@](C2)C +CNC(=O)C1=CN(c2ccccc2C1=O)C +CN1CCC(CC1)Nc2ncccn2 +C[N@]1CC2=C(N=C(N2C)N3CCCCC3)[N@](C1)C +CNc1c(nccn1)C(=O)NC +c1ccc(cc1)OCC2=NCC=CN2 +c1ccc2c(c1)[C@@H](CCO2)Nc3ccccn3 +C[N@]1CNCC2=C1N=C(N2C)N3CCN(CC3)C +Cc1ccnnc1[N@]2CCC[C@H]2C +COc1ccccc1C2=NC=CN2 +CC1=NN=C(N1c2ccccc2OC)C +CC(=O)NC[C@H](c1ccccc1)O +CC(=O)N[C@H](CO)[C@H](c1ccccc1)O +c1ccc(c(c1)N2C(=O)C3=C(C2=O)CCCC3)F +C[C@@H](C(=O)N(C)OC)NC(=O)C +c1ccc(cc1)C(=O)Nc2ccccc2O +CNC1=C(C=CS1)C(=O)N +COC(=O)c1ccccc1Nc2ccccc2 +Cc1cccc(c1C(=O)OC)O +CC(=O)N1C(OC=N1)(C)C +CN1C=N/C(=C\C2=CC=CO2)/C1=O +c1c(c(ncn1)N2CCC2)Cl +CNC(=O)[C@H](CCSC)N +CNC(=S)NN=C +Cc1ccc2c(c1)C(=O)C(=CO2)/C=N/N3CC(=O)NC3=O +C[C@@H]1C[N@@](C[C@@]1(C)O)c2c(nccn2)N(C)C +C1=CSC(=C1)C/C(=N\O)/N +COc1cc(cc(c1)C(F)(F)F)C2=NC3=C(N2)CCNC3 +CCOC(=O)c1cccc2c1OCO2 +COC(=O)[C@@H]1COCCN1 +c1cc(c(cc1F)[C@@H]2COC(=O)N2)[N+](=O)[O-] +Cc1ccc(c(c1)OCC2OCCO2)F +c1cc(ncc1Cl)C2(CC2)C#N +COc1cccc2c1cncc2 +C1=C(N=C(S1)CN)Br +Cc1ccc(cc1)/N=C\OC +CC1=NOC(=N1)c2ccccc2CBr +COC1=CNC(=O)c2c1c(ccc2)Cl +Cc1cccc2c1N(C(=N2)[C@H](C)N)c3ccccc3 +CCOC(=O)c1ccccc1C#C +CC1(c2ccccc2C3(O1)CCNCC3)C +C[C@@H](c1c(ccc(c1O)Cl)[N+](=O)[O-])N +c1cc(cc(c1)F)/N=N\N2CCOCC2 +c1cc(ncc1Br)C2(CC2)C#N +CCc1cc(c(c(c1)Br)O)/N=N/c2ccccc2 +c1c(cnc(n1)C2(CC2)C(=O)O)Br +CC/N=C/C1=Cc2ccc(cc2NC1=O)C +CCC(=O)c1cc(c(c(c1)F)F)F +c1cc(c(cc1F)OCC2OCCO2)F +C1=CNC(=C1)[C@H](C(F)F)N +CC1=C(SC(=N1)NC(=O)C2CCNCC2)C +COc1cc(c(cc1OC)F)[C@H]2CCN2 +COC(=O)c1cccc(c1Cl)N +CCC1=CC=C(O1)[C@H]2COCCN2 +CC1=NN(C(=C1/C=N/N2CCOCC2)Cl)c3cccc(c3)Cl +COC(=O)c1cccc2c1OC(O2)(F)F +c1ccc(c(c1)OCN2C=C(C=N2)N)Cl +c1cc2c(cc1OC(F)(F)F)N=C(S2)S +c1cc(c(c(c1)F)F)OCC2OCCO2 +C1[C@H](NC(=O)O1)C2=CC=C(O2)[N+](=O)[O-] +CN1c2cc(ccc2N=C1/N=N\c3ccc(cc3)OC)Br +COC1=CNC(=O)c2c1ccc(c2)Cl +c1ccc2c(c1)CCN2C(=O)Cc3cc4c(c(c3)Cl)OCCCO4 +c1cc(c(cc1Br)F)C(=O)C2CC2 +Cc1c(ccc(c1Cl)Br)NC(=O)C +CCC(=O)c1ncc(cn1)Br +CC1=C(C=NN1CC(=O)C)I +c1cc2=NCC(=O)N=c2cc1N +CCOc1ccc(cc1C)C(=O)C +Cc1cccc2c1N=C(S2)NC(=O)C34CC5CC(C3)CC(C5)C4 +CC(=O)C1=CNc2c1c(ncc2Br)Br +CC(=O)Nc1cc(c(cc1O)F)[N+](=O)[O-] +COc1c(cccc1N)C(=O)OC +c1cc(c(cc1F)C(=O)C2=NC=CS2)F +c1cc(c2c(c1)OC(O2)(F)F)C(=O)O +CC1=C(SC=N1)CC2=NC3=C(N2)CC(CNC3=O)(C)C +c1cc(c(cc1Cl)[C@H]2COC(=O)N2)[N+](=O)[O-] +Cc1ccc(cc1)/N=N/C2=CNc3c2cccc3 +c1cc2c(cc1OC(=O)c3ccc(cc3F)Cl)OCO2 +c1cc2c(cc1OC(F)(F)F)N=CS2 +CC1=CC=C(O1)[C@H]2COCCN2 +c1cc(c(cc1F)[N+](=O)[O-])[C@@H]2COC(=O)N2 +c1c(cc(c(c1OCC2OCCO2)F)F)Br +C1=CSC(=C1Br)[C@@H](CC#N)N +Cc1cc(ccc1Cl)N=C=O +Cc1ccccc1C2=NOC(=N2)/C(=C\C3=CSC=C3)/C#N +COC1=CC(=O)Nc2c1cccc2 +Cc1c(cc(cc1F)OC)[N+](=O)[O-] +CN1C=CN=C1/C=N/O +Cc1ccc(c(c1)N2C(=C(C(=N2)C)/C=N\N3CCOCC3)Cl)C +COc1cc(c(cc1OC)Br)[C@H]2CCN2 +c1cc(c(nc1)O)C2=NC(=NO2)C3=CSC=C3 +c1cc(c(cc1Cl)Cl)OC/C(=N/O)/N +c1cc2c(cc1OC(F)(F)F)SC(=N2)Br +CC1(CC2(CCNCC2)CO1)C +c1cc(c(cc1F)F)OCC2OCCO2 +COc1cc(ccc1/C=N\O)Cl +C/C(=N\NC1=NS(=O)(=O)c2c1cccc2)/c3ccc4c(c3)OCO4 +c1cc2c(ccc(c2nc1)O)/N=N\c3ccc(cc3)S(=O)(=O)O +Cc1ccc(c2c1C(=C(N2)C)CC(=O)N3CCSCC3)C +C1C[C@]2(CCCO2)CNC1 +c1ccc2c(c1)C(=NS2(=O)=O)N/N=C\c3ccc(cc3)Cl +COC(=O)c1c(ccc2c1C=NN2)Br +c1c(cc2c(c1C(=O)O)OCO2)Br +c1cc2c(cc1Cl)C(=CN2)/C(=N\O)/N +Cc1cccc(c1O)/C=N\C2=C(C3=C(S2)CCCC3)C#N +CC(=O)N1C=C(c2c1cccc2)[C@H]3CCN3 +CC1=C(C(=NN1CC2=C(ON=C2C)C)C)[N+](=O)[O-] +C1=C(N=C(S1)C=O)Cl +c1cc(c(c(c1)F)CS(=O)(=O)C(F)(F)F)F +CCC1=C(SC(=N1)C)C[N@]2C[C@@H]([C@@](C2)(C)O)C +c1ccc(cc1)C2=NC=C(S2)C3=NC4=C(N3)CCCNC4=O +Cc1ccccc1C2=NOC(=N2)/C(=C/C3=CC=CS3)/C#N +c1c(cc(c2c1SC(=N2)S)Br)OC(F)(F)F +c1cc(c(cc1Br)F)OCC2OCCO2 +COC(=O)C1(CCNCC1)C#N +c1c(cnc(n1)C2(CC2)C#N)Br +CC1=C(SC=C1)[C@H](C=C)N +CO/C=N\c1ccc(cc1)Cl +c1cc(ccc1/N=N\c2ccc(c(c2)Cl)O)S(=O)(=O)N +COc1cc2c(cc1C(=O)OC)NC=CC2=O +Cc1ccc(cc1)CN2C[C@@H]3C[N@@](CCN3C2=O)C +c1cc(c(cc1C(F)(F)F)C2=NC3=C(N2)CCCNC3=O)F +COC(=O)c1cccc2c1OCC2=O +C1[C@@H](NC(=O)N1)C2=CC=C(O2)[N+](=O)[O-] +c1cc(c(c(c1OCC2OCCO2)F)F)F +COc1cccc2c1cc(cn2)Br +CO/C=N/c1ccc(cc1)F +c1c(c(c(c(c1Br)C=O)F)Cl)F +C1=CSC(=N1)C(=O)C2=NC=CS2 +c1ccc(c(c1)C2=NOC(=N2)c3ccc(cc3Cl)Cl)Br +C/C(=N/O)/c1cc(ccc1F)F +Cc1cc(cc(c1/N=N\c2ccc(cc2)S(=O)(=O)O)C)O +c1cc(c(cc1Cl)Cl)/C=N/NC2=NN=CN2N +c1ccc2c(c1)cccc2[C@@H]3CCN3 +c1c(c(cc(c1F)F)F)C(=O)C2=NC=CS2 +C[C@H]1C[N@](CC[C@]1(C)O)Cc2ccccc2N3C(=CC(=N3)C)C +COc1ccc(c(c1)OC)/C(=N/O)/N +CC1=CSC(=N1)Sc2ccc(cc2)F +c1ccc(c(c1)[C@H]2COC(=O)N2)[N+](=O)[O-] +CC1(CC1)c2cc(ccn2)Cl +c1cc(cc(c1)F)N=C=O +c1cnc(c(n1)C=O)Br +COc1cc(c(c(c1O)Br)Br)[C@@H]2CCN2 +C/C(=N\Nc1c(c(c(c(c1F)F)Br)F)F)/c2ccncc2 +c1c(ncc(n1)Br)C2(CC2)C#N +c1cc(cc(c1)Br)C/C(=N\O)/N +CCNCC1=CC(=C(S1)C)Br +c1cc(c(cc1Br)OCC2OCCO2)F +CN1N=C(C(=N1)Br)C(=O)OC +c1cc2c(cc1Br)C(=CN2)[C@@H]3CCN3 +C[N@]1C[C@@H]2CC[C@H](C1)[N@@](C2)CC3=CC=C(O3)c4ccccc4C#N +c1c(cc(cc1OC(Cl)(Cl)Cl)F)C(F)(F)F +CC1=CC(=C(N1C)C)C(=O)CN2C(=O)c3ccccc3S2(=O)=O +c1ccc(c(c1)C/C(=N\O)/N)Cl +c1cc(c2c(c1)NC=C2)C3=NC4=C(N3)CCCNC4=O +CC1=C(SC=C1)[C@H](C)N +Cc1cc(ccc1Br)C(=O)Nc2ccccc2 +Cc1ccccc1C2=NOC(=N2)/C(=C/c3ccc(cc3)C#N)/C#N +c1ccnc(c1)C(=O)Cc2ccnc(c2)Br +c1ccc2c(c1)cccc2/N=C\C3=C(c4ccccc4S3)O +c1ccc2c(c1)c(ccc2O)[C@H]3CCN3 +c1cc(c(nc1)O)C2=NC(=NO2)c3cccnn3 +c1cc(ccc1/N=N/c2ccc(cc2F)O)S(=O)(=O)O +c1c(c(cc(c1Br)Cl)O)C(=O)O +c1cc(c(cc1[C@H]2CCN2)O)O +Cc1ccc(nn1)C2=NOC(=N2)c3cccc(c3O)OC +Cc1cc(cnc1Nc2ccccc2)/C=N/O +C[C@H]1CN(CC[C@]1(C)O)C(=O)CN2C(=O)c3ccccc3N2 +c1c(c(ncn1)Cl)CO +c1ccc(c(c1)/C(=N\O)/Cl)F +CC1=NN(C(=C1)N)Cc2ccc(cc2)Cl +c1cc(c(cc1F)[C@H](CC#N)N)[N+](=O)[O-] +CC1=NN(C(=C1/C=N/N2CCOCC2)Cl)c3ccccc3Cl +c1cc2=NCC(=O)N=c2c(c1)Br +Cc1ccc(cc1OC)[C@@H](C)N +CN(C)c1ccc(cc1)/N=N/c2cccc(c2)F +c1cc2cccnc2c(c1)C(=O)N/N=C\3/CCN4C3=CC=C4 +c1ccc2c(c1)C(=NS2(=O)=O)N/N=C/c3cc4c(cc3Cl)OCO4 +c1cc(cc(c1)Br)/C(=N/O)/N +Cc1ccc2c(c1)C(=CN2)/C(=N\O)/N +CC(=O)C1=CNc2c1c(cnc2)C(=O)O +C1CC2(CCOCC2)NC1 +C1=C(C(=C(S1)CN)Br)Br +Cc1c(nc(nn1)N/N=C/c2cccc3c2cccc3)O +c1cc(c(c(c1)Cl)O)[C@@H]2CCN2 +Cc1cccc2c1NC=C2/C(=N/O)/N +c1ccc(cc1)/C=C\S(=O)(=O)c2ccc(c(c2)Cl)Cl +c1cc(cc(c1)F)C/C(=N\O)/N +C/C(=N/O)/c1ccc(c(c1)Cl)Cl +c1c(cc(c(c1[C@H]2CCN2)Cl)Cl)Cl +c1cc2c(cc1F)c(cc(n2)CN3CC(C3)N4CCOCC4)O +C1CNCCC1N2CC(C2)(F)F +c1cc(c(c(c1F)[C@@H]2CCN2)F)F +c1cc2c(cc(nc2c(c1)F)CN3CC(C3)c4cccnc4)O +C1C(CN1)N2C=CN=C2 +c1cc(cc(c1)I)[C@@H]2CCN2 +C1CC1CC(=O)N2CCC3(CC2)COC3 +C1C(CN1)N2CC(C2)F +CN(C)C(=O)CN1CC2(C1)CCCO2 +CC1=C(OC(=C1)[C@H]2COCCN2)C +C1=CSC(=C1)/C=N/NC2=NN=C(N2N)S +c1cc(c(cc1Cl)[N+](=O)[O-])NN +C1CC1[C@@H](C2=CC=CN2)N +CC1=C(C=C(S1)CNC(C)C)Br +c1ccc(cc1)CC(=O)N2CC[C@@H]3CNS(=O)(=O)[C@@H]3CC2 +Cc1c(cc(cc1F)CN)OC +CCNC(=O)c1cc(cnc1)Br +C1CN(S(=O)(=O)C1)C(=O)C2=C(SC(=C2)Cl)Cl +Cc1ccccc1C2=NOC(=N2)/C(=C\c3ccccc3)/C#N +CN1C=CC=C1[C@H](CF)N +COc1ccc2ccccc2c1/C=N/c3ccc(cc3)Cl +c1cc(c(cc1C(=O)O)[N+](=O)[O-])C#N +CC1=C(C=C(N1C)C#N)/C=N\NC2=Nc3ccccc3S2 +c1ccc2c(c1)N(CCO2)C(=O)c3ccc(cc3)C#N +c1cncc(c1C(=O)O)C#N +Cc1cc(nc(c1C#N)[N@]2CC[C@]3(C2)CCCN(C3=O)CC4CC4)C +c1ccc(cc1)/N=N/C2=NC(=C(N2)C#N)O +c1cc(ccc1N/N=C(/C#N)\C2=NN=C3N2CCCCC3)I +CC1=NC(=C(O1)N/N=C\c2cccc(c2)Cl)C#N +c1cc2c(cc1Nc3ccc(cn3)C#N)CCC2 +Cc1ccc2c(c1)N=C(N2)/C(=C\c3ccccc3)/C#N +CC1=NN(C(=C1C#N)N)Cc2ccc(c(c2)Br)F +C#Cc1cccc(c1)NC(=O)c2ccnc(c2)Cl +c1ccc2c(c1)c(ncn2)N/N=C\c3ccc(c(c3)Cl)Cl +Cc1ccc(nn1)C2=NOC(=N2)C3=C4C(=CS3)OCCO4 +c1cncc(c1[C@@H]2CCN2)Cl +CS(=O)(=O)[N@@]1CC[C@]2(C1)CCC[N@@](C2)Cc3ccccn3 +CC1=NN(C(=C1/C=N\c2cccc(c2)C#N)Cl)c3ccc(cc3)F +Cc1ccc2c(c1)N(CCO2)C(=O)c3ccc(cc3)C#N +CCOc1cc(ccc1C#N)Br +c1cc(c(cc1C#N)C(=O)O)Cl +CC1=C(C=C(C(=O)N1)C#N)C(=O)N2CC[C@]3(C2)CCCN(C3=O)C +Cc1cccc(c1)/N=N/C2=C(NC(=O)C(=C2C)C#N)O +c1cc(nc(c1)Br)C2(CC2)C#N +CC1=NC(=C(O1)N/N=C\C2=CNc3c2cc(cc3)Br)C#N +c1cc(ccc1/C=N\Nc2c(c(c(c(n2)Cl)C#N)Cl)Cl)Br +Cc1cc(c2ccccc2n1)CN3C(=C(C(=N3)C)C#N)N +COC(=O)c1cc(c(nc1CBr)Cl)Cl +COC(=O)c1cc(cc2c1OCO2)Br +CC(C)(C)OC(=O)N1C=Cc2c1c(ccc2)Br +c1cc(ccc1/N=N/c2ccc3c(c2)C=CC(=O)O3)Br +CC1=CC(=C(C(=O)N1)C(=O)N2CCC3(CC2)CN(C(=O)O3)C)C +CC(C)(C)OC(=O)N1CCNCC12CCCC2 +COc1c(cc(cc1F)C#N)[N+](=O)[O-] +CC1=NN(C(=C1/C=N\C2=C(C3=C(S2)CCC3)C#N)Cl)c4ccccc4 +c1cc(c(cc1Cl)F)OCCC#N +COC(=O)c1ccc(cc1C#N)Br +Cc1ccc(cc1)/N=N/C2=C(N(C(=O)C(=C2C)C#N)C)O +CC(C)(C#N)C(=O)Nc1cc(ccc1Cl)I +Cc1ccc(cc1)N/N=C(/C#N)\C2=NN=C3N2CCCCC3 +CC1=C(SC=N1)/C(=N/NC2=C(N=C(O2)C)C#N)/C +Cc1cc(nc(n1)N/N=C/c2ccc(cc2)C#N)C +c1ccc(c(c1)C#N)C2=Nc3ccccc3N2 +c1cc(nc(c1[N+](=O)[O-])C(=O)O)Cl +c1cc(c(c(c1C(=O)C2=NC=CS2)F)F)F +c1cc(ccc1/C(=N\O)/N)Br +c1c(c(c(c(n1)Cl)Cl)[C@H]2CCN2)Cl +COc1ncc(c(n1)C(=O)OC)Br +CC1(CCCCC1)C(=O)N2C[C@H]3CC[N@@](C[C@@]3(C2)C(=O)O)C +CC(C)(C)OC(=O)N1C=C(c2c1c(ccc2)Br)O +CC1=CSC(=N1)N/N=C\C2=CC=CS2 +C1=CSC(=N1)C=O +c1cc(cc(c1)[N+](=O)[O-])C2=NC(=NN2)[N+](=O)[O-] +CC1=NNC(=N1)CN +C1=CN=C(N1)/C=N\O +C1CCC2(C1)C(=O)N(C(=O)N2)CC3=NOC(=N3)C4CC4 +c1cc(c(cc1/C(=N\O)/N)Br)F +COc1ccc2ccccc2c1/C=N/c3c(c(c(c(c3F)F)F)F)F +c1ccc2c(c1)C3=C(N2)CCN(C3)C(=O)C4=NOC(=C4)C5CC5 +c1ccc(c(c1)/C=N\NC2=Nc3ccccc3O2)Br +CC1=CC(=C(C(=O)O1)/C=N/Nc2cccc(c2)Cl)O +CC1=NOc2c1c(ncn2)[N@](C)CC3=C(ON=C3C)C +C1C[C@@]2(CC[N@@](C2)CC3=NC=CS3)C(=O)N(C1)C4CCOCC4 +CN1C=C(C(=O)N(C1=O)C)S(=O)(=O)[N@@]2CCSc3c2cccn3 +CC1=CC(=O)Oc2c1cc(c(c2)O)/N=N/c3ccc(cc3)Cl +c1cc(c(c(c1)F)F)C(=O)C2=NC=CS2 +CC1=C(c2ccncc2S1)[N+](=O)[O-] +c1ccc(c(c1)C(=O)C2=NC=CS2)F +C1=CSC(=C1[N+](=O)[O-])C(=O)N +c1ccc(c(c1)/C=N/NC2=NON=C2N)Br +c1ccc(cc1)/N=N\c2ccc3c(c2)C=CC(=O)O3 +c1ccnc(c1)/C=N/N2C=NN=C2S +CC(C)COc1ccc(cc1Cl)S +c1cnc(cc1Br)SC(F)(F)F +c1cc(c(cc1Br)S)C(=O)O +COc1ccccc1/C=N/C2=C(C3=C(S2)CCCC3)C#N +CC1=NSC(=C1[N+](=O)[O-])N +c1c(c(cc2c1OCO2)Br)[C@@H]3CCN3 +CC(=O)c1c(cccn1)OC +c1cc(c(cc1F)OC(F)(F)F)[N+](=O)[O-] +Cc1cc(c(cc1OC)C(=O)O)N +Cc1ccc(cc1C)N/N=C(/C)\C2=Cc3cc(ccc3OC2=O)Br +c1cc(c(cc1Cl)F)OCC2OCCO2 +Cc1ccc(c(c1)S(=O)(=O)[N@@]2CCOc3c2cccc3C(=O)O)O +CN1c2ccccc2N=C1N/N=C\3/CCCOc4c3ccc(c4)Br +c1cnc(cc1Cl)SC(F)(F)F +Cc1cccc(c1)C(=O)N2CCSc3c2cccc3 +CCSc1cccc(c1)C(F)(F)F +c1cc(cc(c1)O)/C=N/NC2=NC(=O)CS2 +c1cc(nc(c1)I)SC(F)(F)F +c1ccc2c(c1)N(CCS2)C(=O)c3cccc(c3)F +CCSc1cc(cc(c1)Cl)F +c1ccc(cc1)N\2C(=O)CS/C2=N\S(=O)(=O)c3ccccc3 +c1cc(c(cc1F)[N+](=O)[O-])[C@@H](CC#N)N +c1c(c(cc(c1F)Br)F)OCCC#N +CC1=C(C(=O)N2C(=N1)SC(=N2)/N=N/c3ccc(cc3)Br)Br +CC(=O)Sc1ccc(c(c1)F)Cl +c1cc(ccc1Sc2ccc(cc2C(=O)O)Cl)Cl +c1cc2c(cc1NS(=O)(=O)C3=CC=C(S3)Cl)OCO2 +c1ccc2c(c1)C(=C(S2)/C=N/c3cc(ccc3Cl)Cl)Cl +CC1=Nc2ccc(cc2O1)NC(=O)N3CCc4ccccc4C3 +CC(=O)N1CC(=O)N(C[C@]12CC[N@](C2)S(=O)(=O)C)C3=CN(N=C3)C +c1c(c(c(nc1Cl)Cl)O)C(=O)O +c1c(cc(c(c1O)[C@@H]2CCN2)Cl)Cl +c1ccc(c(c1)c2cccc(n2)Cl)OC(F)(F)F +c1cc(c(c(c1)Cl)/C=N/N=C\2/N=C(CS2)O)Cl +CC1=NN(N=C1C(=O)N2CCCc3c2cc(cc3)F)c4ccccc4 +Cc1ccc(c(c1)/C=N/NC2=NS(=O)(=O)c3c2cccc3)C +c1ccc(cc1)SC2=NC(=NN2)[N+](=O)[O-] +C/C=C\C(=N/NC1=Nc2ccccc2S1)\N +Cc1ccc(cc1)S(=O)(=O)NC2=Nc3c(cccc3S2)C +c1cc2c(cc1F)C(=CN2)/C(=N\O)/N +COc1ccc(cc1/C(=N/O)/N)Br +C1=CNC(=C1)[C@H](C(F)(F)F)N +c1ccc2c(c1)CCC[N@@]2S(=O)(=O)c3ccccc3C#N +CS(=O)(=O)[N@]1CCC[C@]12CCCN(C2)C(=O)CC#N +c1ccc(cc1)/C=C/S(=O)(=O)c2ccc(cc2)Cl +Cc1ccc(cc1)S(=O)(=O)/N=C\2/NC(=O)CS2 +CC1=NN=C(S1)NS(=O)(=O)C2=C(SC(=C2)Cl)Cl +Cc1ccc(cc1)N/N=C/2\CCS(=O)(=O)C3=C2C=CS3 +CN\1c2ccccc2S/C1=N\N=C\c3c4ccccc4ccc3OC +CC1=NN=C(NC1=O)N/N=C\c2c(cccc2F)F +CC1=NN=C(S1)N2CC[C@@H]3C[C@@H](O[C@@H]3C2)C(=O)N4CCN(CC4)C +CC(C)C1=NN=C(O1)CN2c3cccc4c3c(ccc4)C2=O +Cc1cc(ccc1N)/N=N\c2ccccc2OC +CN1C(=NN=N1)CN +C#Cc1cccc(c1)NC(=O)c2cc(c(nc2)Cl)Cl +CC(=O)Nc1cc(cc(c1[N+](=O)[O-])Br)Br +c1cc(c(cc1Cl)[N+](=O)[O-])OC(F)(F)F +c1cc(nc(c1C(F)(F)F)C=O)Cl +c1cc(cc(c1)OC(F)(F)F)NN +c1c(nc(cn1)Cl)SC(F)(F)F +CC1=C(c2ccccc2N1)/N=N\c3ccccc3C(F)(F)F +CN1CCC[C@@]2(C1=O)CC[N@](C2)c3cccc(n3)C(F)(F)F +c1cc(c(cc1F)C(F)(F)F)[C@@H]2CCN2 +c1cc(c(cc1[C@H]2CCN2)F)F +c1cc(ccc1C2(CC2)C(=O)N3C[C@@H]4CCC[C@H](C3)NC4=O)F +CC(C)Oc1cc(ccc1F)C=O +CCOc1cc(ccc1F)SC +COC(=O)c1cc(ccc1F)CBr +CC(=O)N1CCCCC12CCNCC2 +Cc1cc(c(nc1C)[N@]2CC[C@]3(C2)CCCN(C3=O)CC4CC4)C#N +c1c(c(cc(c1F)F)F)C(=O)C2CC2 +c1c(cnc(n1)C2(CC2)CO)Br +c1ccc(c(c1)C2(CC2)C(=O)N3CCCCC3)Cl +c1cc(c(c(c1)Br)F)C(=O)C2CC2 +c1cc(ncc1F)C2(CC2)C(=O)O +c1cc(cc(c1)F)CC(=O)N2CCC3(CC3)CC2 +Cc1ccc(cc1)/N=C/2\C=C(SS2)c3ccc(cc3)OC +c1cc(c(cc1OC(Cl)(Cl)Cl)Br)F +c1cc(c(cc1F)[N+](=O)[O-])OC(F)(F)Cl +c1cc(c(cc1Br)I)[N+](=O)[O-] +c1cc(c(c(c1)I)O)C(=O)O +CC1=NN(C=C1I)CC(=O)C +Cc1cc(nc(n1)N/N=C/C2=C(N=C3N2C=C(C=C3)I)C)C +Cc1c(cc(c(c1Cl)I)Cl)[N+](=O)[O-] +C1=C(OC(=C1)[N+](=O)[O-])[C@@H](CO)N +c1c(c(c(c(c1Br)F)F)N)[N+](=O)[O-] +c1c(c(cc(c1I)F)Br)[N+](=O)[O-] +C[C@@H]1CN(CC[C@@]1(C)O)C(=O)CN2N=CC=N2 +c1cc(c(cc1OC(F)(F)F)CO)Cl +c1c(c(nc(n1)Cl)Cl)CO +CCCOc1cc(cc(c1F)F)S +CCCOc1ccc(cc1S)C +Cc1ccc(cc1)N2C(=C(C(=N2)C)/C=N/N3C(=NN=C3S)C)Cl +c1cc(c(c(c1)Cl)Cl)/C=N/NC2=NN=CN2N +CC1=CC(=O)N2C(=C(C(=O)N2)/N=N\c3ccccc3)N1 +c1cc(nc(c1)Cl)C2(CC2)C(=O)O +c1cc(c(cc1N=C=O)[N+](=O)[O-])F +Cc1c(nc(nn1)N/N=C/C2=CNc3c2cccc3)O +c1ccnc(c1)OS(=O)(=O)c2ccc(cc2)F +CC1=NSC(=C1[N+](=O)[O-])Br +CC1=NN(C(=C1N)Cl)CC=C +C1C(=S)N=CC(=N1)F +C=C(C(=O)O)OP(=O)(O)O +c1cc(cc(c1)F)CC(=O)N2CCSSCC2 +c1ccc(cc1)/N=C\NC#N +C#Cc1cccc(c1)NC(=O)N2CCc3ccccc3C2 +Cc1cccc(c1)C(=O)Nc2cccc(c2)C#C +CCOc1cc(ccc1C#N)S(=O)(=O)Cl +CN1CC(=O)N=C1NP(=O)(Cl)Cl +CCCCCc1c(c(c(nc1C(C)C)C(C)C)CO)c2ccc(c(c2)CC)F +CCCCC[S@@](=O)C1=NN=C(S1)N(C)C(=O)N(C)C +C1C[C@@H](NC1)CCCS(=O)(=O)CCCC(F)(F)F +C1C[C@@H]([NH2+]C1)CCCS(=O)(=O)CCCC(F)(F)F +C1C[C@H](C2=C(C1)OC=C2)NC3=NCCO3 +C1C[C@H](C2=C(C1)OC=C2)NC3=[NH+]CCO3 +C1C[C@H](C2=C(C1)OC=C2)/[NH+]=C\3/NCCO3 +C[C@@H](CCc1ccc(c(c1)OC)OC)O +CCS(=O)(=O)c1ccc(c(c1OCC2CCCC2)Cl)C(=O)C3C(=O)CCCC3=O +c1ccc(cc1)C2=C(c3ccc(cc3CCC2)O)c4ccc(cc4)OCCCCC[S@@](=O)Cc5ccccn5 +C[C@H](C(C)(C)C)[N@]1CC[C@](O1)(C)c2cccc(c2)[C@]3(CC[N@](O3)[C@H](C)C(C)(C)C)C +c1ccc2c(c1)[C@@H](CCS2)C[C@@](CO)(C(F)(F)F)O +CC[C@@H]1C(=Nc2cc3c(cc2O1)CCCC3)N +CC[C@@H]1C(=[NH+]c2cc3c(cc2O1)CCCC3)N +c1ccc(cc1)c2ccc(cc2)C3(CCCC3)CNC=O +CC[C@@H]1CS[C@@H](C1=O)C(=O)OCC +CC[C@@H]1CSC(=C1O)C(=O)OCC +CC(C)(C)OC(=O)[C@@]1(COC[C@@H]1F)N(C(=O)OC(C)(C)C)S(=O)(=O)O +CC(C)(C)OC(=O)[C@@]1(COC[C@@H]1F)N(C(=O)OC(C)(C)C)S(=O)(=O)[O-] +c1ccc(cc1)CN(Cc2ccccc2)c3ccc(cc3)C4(CCC4)CCO +CC1(CC1)c2c(cc(cn2)Cl)CNC3CC3 +CC1(CC1)c2c(cc(cn2)Cl)C[NH2+]C3CC3 +CC(C)C(=O)c1cc(cc(c1OC)Cl)O +C[C@@H](Cc1ccc(cc1)OCCO)N +C[C@@H](Cc1ccc(cc1)OCCO)[NH3+] +Cc1cc(cc(c1CC(=O)O)C)C2CC2 +Cc1cc(cc(c1CC(=O)[O-])C)C2CC2 +Cc1cc(nc2c1COC(=O)N2)c3c(cccc3OCC4CC4)O +C[S@@](=O)C1=NN=C(S1)C(=O)NC2CC2 +c1ccc2c(c1)CCC[C@@H]2NC3=NCCS3 +c1ccc2c(c1)CCC[C@@H]2NC3=[NH+]CCS3 +c1ccc2c(c1)CCC[C@@H]2/[NH+]=C\3/NCCS3 +CC/C(=C(\c1ccccc1)/c2ccc(cc2)OCCCCCS(=O)(=O)Cc3ccccn3)/c4ccccc4 +CC(=C(C)COc1ccccc1C(=C)N2C=CN=C2)C +CSCC[C@@H]1C(=Nc2ccccc2O1)N +CSCC[C@@H]1C(=[NH+]c2ccccc2O1)N +CSCC[C@@H]1C(=[NH2+])Nc2ccccc2O1 +c1ccc(cc1)CCCC(=O)NCCc2ccccc2 +CCOC(=O)C1(CCN(CC1)OC)O +CCCOc1ccc(cc1OC)CCN +CCCOc1ccc(cc1OC)CC[NH3+] +CCc1cc(cc(c1CC(=O)O)C)C#CC2CC2 +CCc1cc(cc(c1CC(=O)[O-])C)C#CC2CC2 +c1ccc(cc1)[C@@H]2CCc3cccc(c3S2)CO +CC[C@@H](c1ccc(c(c1)OC2CCCC2)OC)O +CC[C@@H]1CS[C@@H](C1=O)C(=O)OC +CC[C@@H]1CSC(=C1O)C(=O)OC +Cc1cc(c(nc1)C2(CC2)C)CNC3CC3 +Cc1cc(c(nc1)C2(CC2)C)C[NH2+]C3CC3 +COc1ccc2c(c1)CCC[C@@H](C2=O)c3cccc(c3)S(=O)(=O)C +CC(C)(C)OC(=O)[C@@]12COC[C@@H]1OS(=O)(=O)N2C(=O)OC(C)(C)C +C[N@@](Cc1ccc(cc1)[C@@H]2CCCC[C@@H]2C(=O)O)c3ccccc3 +C[N@@](Cc1ccc(cc1)[C@@H]2CCCC[C@@H]2C(=O)[O-])c3ccccc3 +C[C@@H](CCN(Cc1ccccc1)Cc2ccccc2)OC(=O)N3C(COC3(C)C)(C)C +C[C@@H](CC[NH+](Cc1ccccc1)Cc2ccccc2)OC(=O)N3C(COC3(C)C)(C)C +C1C[C@@H](NC1)CCS(=O)(=O)CCC(F)(F)F +C1C[C@@H]([NH2+]C1)CCS(=O)(=O)CCC(F)(F)F +c1ccc2c(c1)CC(C2)NC3=NCCO3 +c1ccc2c(c1)CC(C2)NC3=[NH+]CCO3 +c1ccc2c(c1)CC(C2)/[NH+]=C\3/NCCO3 +C[C@H](C(C)C)[N@@]1CC[C@@H](O1)c2ccc(cc2)[C@@H]3CC[N@@](O3)[C@@H](C)C(C)C +CC1(CC1)c2c(cccn2)CNC3CC3 +CC1(CC1)c2c(cccn2)C[NH2+]C3CC3 +Cc1cc2c(c(c1)OCCC(C)C)Oc3ccc(c(c3C(=O)OC2)OC)[C@@H](CC(C)(C)c4ccccc4)O +c1ccc2c(c1)[C@@H](CO2)NC3=NCCO3 +c1ccc2c(c1)[C@@H](CO2)NC3=[NH+]CCO3 +c1ccc2c(c1)[C@@H](CO2)/[NH+]=C\3/NCCO3 +COc1ccc(cc1OC2CCCC2)[C@@H](C#N)O +CS(=O)(=O)c1ccc(c(c1COC2CCCCC2)Cl)C(=O)C3C(=O)CCCC3=O +COc1ccc2c(c1)CCCC(=C2CCCCCO)c3ccc(cc3)S(=O)(=O)C +CC1(CC1)COC(=O)[C@@H](c2ccccc2)C(=O)O +CC1(CC1)COC(=O)[C@@H](c2ccccc2)C(=O)[O-] +C[C@H](C(C)(C)C)[N@]1CC[C@](O1)(C)c2ccc(cc2)[C@]3(CC[N@](O3)[C@H](C)C(C)(C)C)C +C[C@@H]1C(=Nc2cc3c(cc2O1)CCCC3)N +C[C@@H]1C(=[NH+]c2cc3c(cc2O1)CCCC3)N +CC(C)CCOc1ccccc1N2C=CN=C2 +CCOC(=O)[C@@H]1C(=O)[C@@H](CS1)C +CCOC(=O)C1=C([C@@H](CS1)C)O +C[C@@](CN)(c1ccc(c(c1)OC2CCCC2)OC)O +C[C@@](C[NH3+])(c1ccc(c(c1)OC2CCCC2)OC)O +CCOc1cc(ccc1[C@@H]2CCC(=O)N2)C(C)(C)C +C[C@@]1(O[C@@H](CS1)CN2CCCCC2)C(C)(C)COc3ccc(cc3)Cl +C[C@@]1(O[C@@H](CS1)C[NH+]2CCCCC2)C(C)(C)COc3ccc(cc3)Cl +c1ccc(cc1)C2=C(c3ccc(cc3CCC2)O)c4ccc(cc4)OCCCC[S@@](=O)Cc5ccccn5 +Cc1cc(c2c(c1)N=C([C@@H](O2)C)N)C +Cc1cc(c2c(c1)[NH+]=C([C@@H](O2)C)N)C +C[S@@](=O)CCOc1ccccc1N2C=CN=C2 +CCCc1cc(ccc1OCCCOc2ccc3c(c2)CC[C@@H]3CC(=O)O)C4=NC(=C(O4)C(=O)C)C +CCCc1cc(ccc1OCCCOc2ccc3c(c2)CC[C@@H]3CC(=O)[O-])C4=NC(=C(O4)C(=O)C)C +c1ccc2c(c1)CC[C@@H]2NC3=NCCO3 +c1ccc2c(c1)CC[C@@H]2NC3=[NH+]CCO3 +c1ccc2c(c1)CC[C@@H]2/[NH+]=C\3/NCCO3 +CS(=O)(=O)c1ccc(c(c1CO[C@@H]2CCOC2)Cl)C(=O)O +CS(=O)(=O)c1ccc(c(c1CO[C@@H]2CCOC2)Cl)C(=O)[O-] +c1ccc(cc1)C2=C(c3ccc(cc3CCC2)O)c4ccc(cc4)OCCCCC[S@@](=O)CCCCF +CCc1cc(cc(c1CC(=O)O)CC)C#CC +CCc1cc(cc(c1CC(=O)[O-])CC)C#CC +c1ccc2c(c1)[C@@H](CCS2)C[C@@H](C(F)(F)F)O +COC(=O)C[C@@H](CS(=O)(=O)c1ccc(cc1)O)c2ccccc2 +COC(=O)C[C@@H](CS(=O)(=O)c1ccc(cc1)[O-])c2ccccc2 +c1cc(ccc1c2ccc(cc2)F)C3(CCCC3)CNC=O +c1ccc(cc1)CN(Cc2ccccc2)c3ccc(cc3)C4(CCC4)CC(=O)O +c1ccc(cc1)CN(Cc2ccccc2)c3ccc(cc3)C4(CCC4)CC(=O)[O-] +C[C@@H](C1=CCCc2c1ccc(c2)OC)C(=O)O +C[C@@H](C1=CCCc2c1ccc(c2)OC)C(=O)[O-] +CC(C)c1ccc(cc1C(=O)O)O +CC(C)c1ccc(cc1C(=O)[O-])O +c1ccc2c(c1)CCC[C@@H]2NC(=O)CN3C(=O)N(C(=N3)c4ccc(cc4)Cl)C5CC5 +COC(=O)N[C@@]12CN(C[C@@H]1C=CC=C2)C(=O)OC +C[C@@H](c1ccccc1F)NC2=NCCO2 +C[C@@H](c1ccccc1F)NC2=[NH+]CCO2 +C[C@@H](c1ccccc1F)/[NH+]=C\2/NCCO2 +CCS(=O)(=O)c1ccc(c(c1OCC2CCCC2)Cl)C(=O)O +CCS(=O)(=O)c1ccc(c(c1OCC2CCCC2)Cl)C(=O)[O-] +c1ccc(cc1)C2=C(c3ccc(cc3CCC2)O)c4ccc(cc4)OCCCCC[S@@](=O)c5ccccc5 +Cc1ccc(cc1CC(=O)O)C2CC2 +Cc1ccc(cc1CC(=O)[O-])C2CC2 +CCOC(=O)[C@@]1(CC[N@@](O1)C(C)(C)C)Cc2ccccc2 +c1ccc2c(c1)C(=CCS2)C[C@@](CO)(C(F)(F)F)O +C[C@@H]1C(=Nc2cc(ccc2O1)Cl)N +C[C@@H]1C(=[NH+]c2cc(ccc2O1)Cl)N +c1ccc(c(c1)O)S(=O)(=O)c2ccccc2O +c1ccc(c(c1)[O-])S(=O)(=O)c2ccccc2[O-] +C[C@@H](c1ccc2cc(ccc2c1)OC)C(=O)O +C[C@@H](c1ccc2cc(ccc2c1)OC)C(=O)[O-] +C[C@@H]1Cc2cc(c(cc2C1=O)F)OC +Cc1ccc2c(c1)C(=O)N(N=N2)C[C@@H]3CC[C@@H]([C@@H]3C(=O)O)C(=O)c4ccc(cc4)OCC5CCCCC5 +Cc1ccc2c(c1)C(=O)N(N=N2)C[C@@H]3CC[C@@H]([C@@H]3C(=O)[O-])C(=O)c4ccc(cc4)OCC5CCCCC5 +CS(=O)(=O)Cc1ccccc1S(=O)(=O)N +CC/C(=C(\c1ccc(cc1)O)/c2ccc(cc2)OCCCCC[S@@](=O)Cc3ccccn3)/c4ccccc4 +c1ccc2c(c1)[C@@H](CCS2)CCO +COc1ccc2c(c1)CCC[C@@H](C2=O)c3ccc(cc3)S(=O)(=O)C +CCOc1ccc(cc1OC)C[C@@H](C)N +CCOc1ccc(cc1OC)C[C@@H](C)[NH3+] +c1cc(ccc1c2ccc3c(c2)CC[C@@H](O3)CNC[C@@H](COc4ccc(cc4)F)O)C(=O)O +c1cc(ccc1c2ccc3c(c2)CC[C@@H](O3)C[NH2+]C[C@@H](COc4ccc(cc4)F)O)C(=O)[O-] +c1cc(c(cc1C2=Cc3ccc(cc3CCC2)O)F)O +CC(C)c1cc2c(c(c1[C@@H](c3ccc(cc3)C(C)(C)C)O)c4ccc(cc4)F)[C@@H](CC5(O2)CCC5)O +c1cc2c(cc1F)C=C3N2CCNC3 +c1cc2c(cc1F)C=C3N2CC[NH2+]C3 +c1ccc(cc1)S(=O)(=O)N[C@@H]2CCC(=O)C2 +CCCC[S@@](=O)C1=NN=C(S1)N(C)C(=O)N(C)C +C[C@@H](c1ccccc1)NC2=NCCO2 +C[C@@H](c1ccccc1)NC2=[NH+]CCO2 +C[C@@H](c1ccccc1)/[NH+]=C\2/NCCO2 +C1C[C@@H](NC1)CCS(=O)(=O)CCCC(F)(F)F +C1C[C@@H]([NH2+]C1)CCS(=O)(=O)CCCC(F)(F)F +c1ccc(cc1)CC[C@@H]2C(=Nc3ccccc3O2)N +c1ccc(cc1)CC[C@@H]2C(=[NH+]c3ccccc3O2)N +c1ccc(cc1)CC[C@@H]2C(=[NH2+])Nc3ccccc3O2 +CCCOC(=O)[C@@H]1C(=O)[C@@H](CS1)CC +CCCOC(=O)C1=C([C@@H](CS1)CC)O +c1cc(ccc1C(=O)C2CCN(CC2)CCCOc3ccc4c(c3)CCC4)F +c1cc(ccc1C(=O)C2CC[NH+](CC2)CCCOc3ccc4c(c3)CCC4)F +CC(C)(C)[C@@](CCCOc1ccccc1)(CN2C=NC=N2)O +c1cc(c(cc1S(=O)(=O)N)S(=O)(=O)N)C(=O)O +c1cc(c(cc1S(=O)(=O)N)S(=O)(=O)N)C(=O)[O-] +C[C@H](C(C)(C)C)[N@]1CC[C@H](O1)c2ccc(cc2)[C@H]3CC[N@](O3)[C@H](C)C(C)(C)C +CCC[C@@H]1C(=Nc2ccccc2O1)N +CCC[C@@H]1C(=[NH+]c2ccccc2O1)N +Cc1cc(cc(c1Cc2ccc(c(c2)S(=O)(=O)c3ccc(cc3)F)O)C)OC(C)(C)C(=O)O +Cc1cc(cc(c1Cc2ccc(c(c2)S(=O)(=O)c3ccc(cc3)F)[O-])C)OC(C)(C)C(=O)[O-] +CC(C)c1cccc(c1OC)C(C)(C)O +CC[C@@H]([C@@H]1CCc2c1ccc(c2)OCCC3=C(OC(=N3)c4cccc(c4)OC)C)C(=O)O +CC[C@@H]([C@@H]1CCc2c1ccc(c2)OCCC3=C(OC(=N3)c4cccc(c4)OC)C)C(=O)[O-] +CC/C(=C(\c1ccc(cc1)O)/c2ccc(cc2)OCCCCCS(=O)(=O)Cc3ccccn3)/c4ccccc4 +c1cc(ccc1CCO)S(=O)(=O)c2ccc(cc2)CCO +CC(=O)OCCC1(CCC1)c2ccc(cc2)N(Cc3ccccc3)Cc4ccccc4 +CCOC(=O)C1=C2c3cc(c(cc3CCN2C(=C1C4=CNc5c4cccc5OC)C)OC)OC +CS(=O)(=O)c1ccc(c(c1CO[C@@H]2CCOC2)Cl)C(=O)C3C(=O)CCCC3=O +c1cc(ccc1c2ccc(cc2)F)C3(CCCCC3)CNC=O +C[C@@H](C(=O)O)Oc1cccc2c1cccc2O +C[C@@H](C(=O)[O-])Oc1cccc2c1cccc2O +c1ccc2cc(ccc2c1)C[C@@]34CCC[C@@H]3COC4=O +CCCCC[S@@](=O)C1=NN=C(S1)C(=O)NCC(C)C +c1cc(c(c(c1)Cl)NC2=NCCO2)Cl +c1cc(c(c(c1)Cl)NC2=[NH+]CCO2)Cl +c1cc(c(c(c1)Cl)/[NH+]=C\2/NCCO2)Cl +C1C[C@@H](NC1)CCCS(=O)(=O)CCCCC(F)(F)F +C1C[C@@H]([NH2+]C1)CCCS(=O)(=O)CCCCC(F)(F)F +c1ccc(cc1)C[S@@](=O)CCCCCOc2ccc(cc2)C3=C(CCCc4c3ccc(c4)O)c5ccccc5 +c1ccc(cc1)c2ccc(cc2)C3(CCCCC3)CNC=O +CCC(=O)c1ccc(c(c1)OC2CCCC2)OC +CC1(CC1)c2c(cc(cn2)Br)CNC3CC3 +CC1(CC1)c2c(cc(cn2)Br)C[NH2+]C3CC3 +c1ccc2c(c1)CCC[C@@H]2Nc3ncc(cn3)Cl +Cc1cc(cc2c1OC3(CCCCC3)C[C@@H]2NCc4ccccc4)Cl +Cc1cc(cc2c1OC3(CCCCC3)C[C@@H]2[NH2+]Cc4ccccc4)Cl +c1c2c(cc(c1C=C3CCCCC3)Cl)[C@@H](CC2)C(=O)O +c1c2c(cc(c1C=C3CCCCC3)Cl)[C@@H](CC2)C(=O)[O-] +C[C@@H]1C[C@@H](CN(C1)C[C@@H]2[C@@H]([C@@H](CO2)c3ccc(cc3)Cl)C)C +C[C@@H]1C[C@@H](C[NH+](C1)C[C@@H]2[C@@H]([C@@H](CO2)c3ccc(cc3)Cl)C)C +C[C@@H]1C(=O)N(c2ccc(nc2[N@@]1C3CCCCCC3)Nc4ccc(cc4)S(=O)(=O)N(C)C)C +C[C@@H](c1ccccc1Cl)NC2=NCCO2 +C[C@@H](c1ccccc1Cl)NC2=[NH+]CCO2 +C[C@@H](c1ccccc1Cl)/[NH+]=C\2/NCCO2 +C[C@@H]1C(=Nc2cc(ccc2O1)C#N)N +C[C@@H]1C(=[NH+]c2cc(ccc2O1)C#N)N +CC1(CC(=O)Nc2c1cc(cc2)F)C +CC1=NN(C(=O)N1NC(C)C)C(=O)NC2CCCCC2 +CCCC[S@@](=O)C1=NN=C(S1)C(=O)N +CC(C)N(CCNC(=O)CN1[C@@H](CCC1=O)C(F)(F)F)C(C)C +CC(C)[NH+](CCNC(=O)CN1[C@@H](CCC1=O)C(F)(F)F)C(C)C +CC(C)[S@@](=O)C1=NN=C(S1)C(=O)NCC2CCCCC2 +c1ccc2c(c1)NC(=O)CC[S@@]2=O +C[C@@H]1Cc2ccccc2[C@@H]1NC(=O)COC +CCCCS(=O)(=O)Nc1cccc(c1)OCc2ccc3ccccc3n2 +CCCCC[S@@](=O)C1=NN=C(S1)C(=O)NCCC +c1cc(ccc1[S@@](=O)[C@@H]2CCCCNC2=O)Cl +CCN(CC)CCOc1ccc(cc1)CNc2ccc(c3c2cccc3)Cl +CC[NH+](CC)CCOc1ccc(cc1)CNc2ccc(c3c2cccc3)Cl +Cc1ncc2c(n1)cccc2N[C@@H]3c4cc(ccc4C(C[C@@]3(C(F)(F)F)O)(C)C)Cl +c1cc2c(nc1)NC(=N2)COCCO +c1cc2c(nc1)N=C(N2)COCCO +CCC[C@@H](c1ccc(nc1)C#N)N2C=CN=C2 +C[C@@H](CO)Nc1c(cnc(n1)Nc2cccc(c2)S(=O)(=O)NCCCc3ccccc3)Br +CCCc1c(ccc2c1ON=C2C(F)(F)F)OCCCOc3ccc4c(c3)CC[C@@H]4[C@@H](C)C(=O)OC +Cc1cc(cnc1CO)OCC[N@@](C)OC +c1ccc(cc1)C(=O)NS(=O)(=O)c2ccc(cc2)c3ccc4c(c3)CC[C@@H](O4)CNC[C@@H](c5cccnc5)O +c1ccc(cc1)C(=O)NS(=O)(=O)c2ccc(cc2)c3ccc4c(c3)CC[C@@H](O4)C[NH2+]C[C@@H](c5cccnc5)O +c1ccc2c(c1)ccc(n2)COc3ccc(cc3)[C@@](C4CCCC4)(C(=O)O)O +c1ccc2c(c1)ccc(n2)COc3ccc(cc3)[C@@](C4CCCC4)(C(=O)[O-])O +CN1[C@@H]([C@@H](CC1=O)c2ccccc2)[C@@H](C#Cc3ccccc3)O +c1ccc(cc1)OCCCCOc2ccc(cc2)C#CCO +COc1ccc(cc1)[C@@]23[C@@H](C[C@@H]([C@@]2(c4c(cc(cc4OC)OC)O3)O)O)c5ccccc5 +CCc1cccc(c1)N(CC)C(=O)CO +CCCC[C@@H](c1cccc(c1)COc2cccc3c2nccc3C)O +c1cc2c(nc1)C(=CN2)C[C@@H](CO)N +c1cc2c(nc1)C(=CN2)C[C@@H](CO)[NH3+] +c1cc(c(cc1S(=O)(=O)N)S(=O)(=O)N)O +c1cc(c(cc1S(=O)(=O)N)S(=O)(=O)N)[O-] +c1cncc2c1NC=C2C[C@@H](CO)N +c1cncc2c1NC=C2C[C@@H](CO)[NH3+] +Cc1cc(cc(c1O)C)S(=O)(=O)c2cc(c(c(c2)C)O)C +Cc1cc(cc(c1[O-])C)S(=O)(=O)c2cc(c(c(c2)C)[O-])C +COc1c(cc(cc1Cl)O)C(=O)C2CCCCC2 +COc1ccc2ccc(cc2c1)OCCCOc3ccc-4c(c3)N(c5c4cccc5)CC(=O)O +COc1ccc2ccc(cc2c1)OCCCOc3ccc-4c(c3)N(c5c4cccc5)CC(=O)[O-] +CCCC[C@@H]1C(C(=O)c2ccccc2O1)(CCS(=O)(=O)C)CCS(=O)(=O)C +Cc1ccc2c(c1)[C@@H]([C@@H](C2)C)Nc3ncc(cn3)C(=O)C +CCCC[S@@](=O)[C@@H]1CCCCNC1=O +c1cc(cc2c1cc(cc2)O)C(=O)O +c1cc(cc2c1cc(cc2)O)C(=O)[O-] +CC(C)N1C(=O)c2ccccc2NS1(=O)=O +c1cc(ccc1S(=O)(=O)[C@@H]2CCCCNC2=O)Cl +CC1(c2c(nc(nc2NC1=O)C3=NN(c4c3cccn4)Cc5ccccc5F)C(=O)NCC[S@@](=O)C)C +CCC[C@@H]1C(C(=O)c2ccccc2O1)(CCS(=O)(=O)C)CCS(=O)(=O)C +CC(=O)c1ccc(cc1)[C@@H](C2CCCCC2)O +C[C@@H]1C(=O)N(c2ccc(nc2[N@@]1C3CCN(CC3)C)Nc4cccc(c4)S(=O)(=O)N5CCOCC5)C +C[C@@H]1C(=O)N(c2ccc(nc2[N@@]1C3CC[NH+](CC3)C)Nc4cccc(c4)S(=O)(=O)N5CCOCC5)C +Cc1ccc(cc1)S(=O)(=O)[C@@H]2CCCNC(=O)C2 +CCC(=O)N[C@@H]1CCc2c1ccc(c2)C(=O)C +CC(=O)NC[C@@]1(CC(=O)c2ccccc2O1)C +CCCCC[S@@](=O)C1=NN=C(S1)C(=O)NCCCC +c1cc2c(cc1O)S(=O)(=O)CO2 +CCN(CC)CCC[C@@]1(C(C(=O)c2ccccc2O1)(CCS(=O)(=O)C)CCS(=O)(=O)C)C +CC[NH+](CC)CCC[C@@]1(C(C(=O)c2ccccc2O1)(CCS(=O)(=O)C)CCS(=O)(=O)C)C +CC1(CC1)C(=O)[C@@H](CS(=O)(=O)c2ccccc2)N3C=NC=N3 +C[C@@H]1Cc2cc(c(cc2C(=NN1C(=O)NC)c3ccc(cc3)c4cccc(c4)NS(=O)(=O)C)OC)OC +CCCCC[S@@](=O)C1=NN=C(S1)C(=O)NCC +CCS(=O)(=O)C1(CC1)[C@@](CN2C=NC=N2)(c3ccc(cc3)Cl)O +COC(=O)CCN1c2ccc(cc2C3=C1CC[C@@H](C3)NS(=O)(=O)c4ccc(cc4)Cl)F +Cc1ccc2c(c1)COC(=O)c3c(ccc(c3OC)[C@@H](C(C)C)O)S2(=O)=O +CC(C)(C)OC(=O)[C@@]12CCOC[C@@H]1OS(=O)(=O)N2C(=O)OC(C)(C)C +C1=C2N(C=N1)S(=O)(=O)C3=CN=CN3S2(=O)=O +Cc1cc2c(c(c1)OC)S(=O)(=O)c3ccc(c(c3C(=O)OC2)OC)[C@@H](CC(C)C)O +CC(C)(C)[C@@H]([C@@H](CS(=O)(=O)c1ccccc1)N2C=NC=N2)O +c1cc(ccc1CCN2C(=O)N3[C@H](CCCC3=N2)C(=O)N4CC(C4)(F)F)F +c1ccc2c(c1)C(=O)N3c4ccccc4C(=O)NCC3=N2 +c1ccc2c(c1)N=C([C@@H](O2)CCO)N +c1ccc2c(c1)[NH+]=C([C@@H](O2)CCO)N +c1ccc2c(c1)NC(=[NH2+])[C@@H](O2)CCO +CCC1=COC(=N1)c2ccc(cc2)OCCCOc3ccc4c(c3)C=CN4[C@@H](C)C(=O)O +CCC1=COC(=N1)c2ccc(cc2)OCCCOc3ccc4c(c3)C=CN4[C@@H](C)C(=O)[O-] +Cc1cc(ccn1)c2ccc(cc2C3=NNN=N3)NC(=O)C4(CC4)c5cccc(c5)Cl +Cc1cc(ccn1)c2ccc(cc2C3=N[N-]N=N3)NC(=O)C4(CC4)c5cccc(c5)Cl +Cc1cc(ccn1)c2ccc(cc2C3=NN=N[N-]3)NC(=O)C4(CC4)c5cccc(c5)Cl +CN(C)S(=O)(=O)N1C=C(N=C1C#N)S(=O)(=O)[N@@]2CCc3c2cccc3 +CN(C)S(=O)(=O)N1C=C([NH+]=C1C#N)S(=O)(=O)[N@@]2CCc3c2cccc3 +Cc1nc2cc(c(cc2c(n1)N[C@@H](C)c3cccc(c3)C4=CNN=C4)O)OC +CCc1cc(cc(c1C2C(=O)[C@@H]3CC(C[C@@H]3C2=O)OC)CC)C +CCCOC(=O)[C@@H]1C(=O)[C@@H](CS1)C +CCCOC(=O)C1=C([C@@H](CS1)C)O +CC(=CC[C@@H](c1ccc(cc1)OCc2ccc3ccccc3n2)C(=O)OC)C +CC(=C[C@@H]([C@@H](C(C)(C)C)O)N1C=NC=N1)C +CC1=CC(Cc2c1nc(c(c2c3ccc(cc3)F)CO)C(C)C)(C)C +C[C@@H]1[C@@H]2CC(=C)C[C@@]2(C(=O)O1)Cc3ccc4ccccc4c3 +CC1(C[C@@]([C@@H](c2c1c(c(cc2)F)O)NC(=O)c3ccc4c(c3)C=CO4)(C(F)(F)F)O)C +CC1(C=C(c2ccccc2O1)CN3CCN(CC3)c4ccccc4)C +CC1(C=C(c2ccccc2O1)C[NH+]3CCN(CC3)c4ccccc4)C +CC(=CCOc1cc(ccc1OC)[C@@H]2CC(=O)NC2)C +COc1ccc(cc1)C2(CC2)CN3C(=O)N4[C@H](CCCC4=N3)C(=O)N5CC(C5)F +CCOc1ccc(cc1)C2=C(N(c3c2cc(cc3)CCOCC4CC4)Cc5ccc(cc5)F)C(=O)O +CCOc1ccc(cc1)C2=C(N(c3c2cc(cc3)CCOCC4CC4)Cc5ccc(cc5)F)C(=O)[O-] +C[C@@]1(CNC(=O)O1)c2ccc(c(c2)OCC3CC3)OC +c1cc(cnc1)CNC(=O)c2ccc3c(c2)N(CC(=O)N3C4CC4)C(=O)CNC5CCCCC5 +c1cc(cnc1)CNC(=O)c2ccc3c(c2)N(CC(=O)N3C4CC4)C(=O)C[NH2+]C5CCCCC5 +c1cc(ccc1[C@@](CN2C=NC=N2)(C3(CC3)F)O)Cl +c1ccc2c(c1)C(=C(N2Cc3ccc(cc3)F)C(=O)O)c4cccc(c4)OCC5CC5 +c1ccc2c(c1)C(=C(N2Cc3ccc(cc3)F)C(=O)[O-])c4cccc(c4)OCC5CC5 +c1cc2c(cc1CC(=O)C3CC3)OC(=C2)C(=O)N[C@@H]4CN5CCC4CC5 +c1cc2c(cc1CC(=O)C3CC3)OC(=C2)C(=O)N[C@@H]4C[NH+]5CCC4CC5 +CCOC(=O)C1(CC1)[C@@](CN2C=NC=N2)(COc3ccc(cc3)F)O +COc1cccc(c1)CN2c3ccccc3C(=C2C(=O)O)c4ccc(cc4)OCC5CC5 +COc1cccc(c1)CN2c3ccccc3C(=C2C(=O)[O-])c4ccc(cc4)OCC5CC5 +CC1(C[C@@H](c2ccccc2O1)CNC3CC3)C +CC1(C[C@@H](c2ccccc2O1)C[NH2+]C3CC3)C +COc1cc2ccccc2cc1OCCCCOc3ccc-4c(c3)N(c5c4cccc5)CCC(=O)O +COc1cc2ccccc2cc1OCCCCOc3ccc-4c(c3)N(c5c4cccc5)CCC(=O)[O-] +c1cc2c(cc1Cl)OC3(CCCC3)C[C@@H]2O +c1ccc2c(c1)[C@@H](CO2)NC3=NCCS3 +c1ccc2c(c1)[C@@H](CO2)NC3=[NH+]CCS3 +C[C@@]12CC[C@@](C[C@@H]1CC[C@@H]2OC(C)(C)C)(c3ccc(cc3)OC)O +CCC1=C(SC2=C1C(=O)N(C(=O)N2CCOC)C3(CC3)C)CN4CCNC4=O +COC1(CC1)[C@@](Cc2ccc(cc2)F)(CN3C=NC=N3)O +c1ccc(cc1)C2=C(N=C3N2C=CC(=N3)OCCN4CCCC4=O)c5ccc(cc5)C6(CCC6)N +c1ccc(cc1)C2=C(N=C3N2C=CC(=N3)OCCN4CCCC4=O)c5ccc(cc5)C6(CCC6)[NH3+] +c1c(ncc(n1)Cl)C(=O)NC2CN(C2)CC(F)(F)F +C[C@@H]1C(=O)N(c2ccc(nc2[N@@]1C3CCCC3)Nc4ccc(cc4OC)C(=O)N5CC6(C5)CCS6(=O)=O)C +c1c(ncc(n1)Cl)C(=O)NC2CN(C2)CC(F)F +CC(C)c1cc2c(c(c1[C@@H](c3ccc(cc3)C(F)(F)F)F)C4CCCC4)[C@@H](CC5(O2)CCC5)O +C[C@@H]1C(=O)N(c2ccc(nc2[N@@]1C3CCOCC3)Nc4ccc(cc4)N5CC6(C5)COC6)C +c1c(nc(cn1)Cl)C(=O)NC2CN(C2)CCF +c1c(nc(cn1)Cl)C(=O)NC2C[NH+](C2)CCF +CC(C)c1cc2c(c(c1[C@@H](c3ccc(cc3)C(F)(F)F)O)C4=CCCC4)C(=O)CC5(O2)CCC5 +C[N@@](CCCN1CCCC1)c2c3c(ccn2)OC=C3 +C[N@@](CCC[NH+]1CCCC1)c2c3c(ccn2)OC=C3 +CC1(C[C@@]([C@@H](c2c1c(c(cc2)F)O)NC(=O)C3=Cc4ccccc4O3)(C(F)(F)F)O)C +Cc1ccc(cc1N(C)C)C2=NC(=C(O2)C)CCOc3ccc4c(c3)CC[C@@H]4CC(=O)O +Cc1ccc(cc1N(C)C)C2=NC(=C(O2)C)CCOc3ccc4c(c3)CC[C@@H]4CC(=O)[O-] +C[C@@H]1C[C@@]([C@@H](c2c1c(c(cc2)Cl)O)Nc3cccc4c3C=COC4=O)(C(F)(F)F)O +CCN(CC)c1cccc(c1)C2=NC(=C(O2)C)CCOc3ccc4c(c3)CC[C@@H]4CC(=O)O +CCN(CC)c1cccc(c1)C2=NC(=C(O2)C)CCOc3ccc4c(c3)CC[C@@H]4CC(=O)[O-] +CC(C)(C)NS(=O)(=O)c1cc(ccc1C(=O)O)C2CC2 +CC(C)(C)NS(=O)(=O)c1cc(ccc1C(=O)[O-])C2CC2 +C[C@@H](CCN1C=CN=C1)c2ccc(cc2)O +c1cc(ccc1Nc2ncc(c(n2)NC3CCC(CC3)N4CCC(CC4)O)Br)S(=O)(=O)N +c1cc(ccc1Nc2ncc(c(n2)NC3CCC(CC3)[NH+]4CCC(CC4)O)Br)S(=O)(=O)N +C[C@@H]1C(=O)N(c2ccc(nc2[N@@]1C3CCOCC3)Nc4cccc(c4)S(=O)(=O)N5CCOCC5)C +CC(=O)c1ccc(cc1)[C@@H](C2CCCCC2)N3C=CN=C3 +CCC[C@@]1(C(C(=O)c2ccccc2O1)(CCS(=O)(=O)C)CCS(=O)(=O)C)C +CCc1c(cnc(n1)N[C@@H]2c3cc(ccc3C[C@@H]2C)C)C(=O)CC +c1cc(c(cc1C(F)F)CC(=O)O)C(F)F +c1cc(c(cc1C(F)F)CC(=O)[O-])C(F)F +CC1=C2c3c(ccc(c3CC[C@@H]2C(=O)O)F)N1 +CC1=C2c3c(ccc(c3CC[C@@H]2C(=O)[O-])F)N1 +CC1=C(SC2=C1C(=O)N(C(=O)N2CCCF)CC(C)(C)OC)CNCCN +CC1=C(SC2=C1C(=O)N(C(=O)N2CCCF)CC(C)(C)OC)C[NH2+]CCN +COc1cccc(c1)N2CC[C@@H](C2=O)N +COc1cccc(c1)N2CC[C@@H](C2=O)[NH3+] +CC(C)c1c(c(c(c(n1)C(C)C)CO)c2ccc(cc2)F)CNC3CCCCC3 +CC(C)c1c(c(c(c(n1)C(C)C)CO)c2ccc(cc2)F)C[NH2+]C3CCCCC3 +Cc1cc2c(c(c1)C#CC3CCCC3)Oc4ccc(c(c4C(=O)OC2)OC)[C@@H](CC(C)C)O +c1cc(ccc1C#N)[C@@H](C2CCCC2)N3C=CN=C3 +CCCC(=O)N1CCN(CC1)CCCCN2C(=S)N(C(=O)C2(C)C)c3ccc(c(c3)C(F)(F)F)C#N +CCCC(=O)N1CC[NH+](CC1)CCCCN2C(=S)N(C(=O)C2(C)C)c3ccc(c(c3)C(F)(F)F)C#N +C[C@@H]1Cc2cc(c(cc2C(=NN1C(=O)NC)c3ccc(cc3)c4ccc(cc4)C#N)OC)OC +CC(C)(C#N)[C@@](CCc1ccc(cc1)F)(CN2C=NC=N2)O +CC(=O)OCC1=C[C@@H]2c3cccc4c3C(=C(N4)CO)C[C@@H]2N(C1)C#N +CCCC(=O)N1CCN(CC1)CCCN2C(=S)N(C(=O)C2(C)C)c3ccc(c(c3)C(F)(F)F)C#N +CCCC(=O)N1CC[NH+](CC1)CCCN2C(=S)N(C(=O)C2(C)C)c3ccc(c(c3)C(F)(F)F)C#N +Cc1cc(c2c(c1C#N)COC(=O)c3c(ccc(c3OC)[C@@H](CC(C)C)O)O2)OCCC(C)C +c1ccc(cc1)CC[C@@](CN2C=NC=N2)(C3(CC3)C#N)O +CCC[N@@]1C[C@@H](C[C@@H]2[C@@H]1CC3=C(Nc4c3c2ccc4)COC)CC#N +CCC[N@@H+]1C[C@@H](C[C@@H]2[C@@H]1CC3=C(Nc4c3c2ccc4)COC)CC#N +CC(C)C[C@@H](c1ccc2c(c1OC)C(=O)OCc3cc(cc(c3O2)O)C#N)O +CC1(C(=O)N(C(=S)N1CCCCN2CCN(CC2)C(=O)COC)c3ccc(c(c3)C(F)(F)F)C#N)C +CC1(C(=O)N(C(=S)N1CCCC[NH+]2CCN(CC2)C(=O)COC)c3ccc(c(c3)C(F)(F)F)C#N)C +C[C@@H]1Cc2cc(c(cc2C(=NN1C(=O)NC)c3ccc(cc3)c4ccccc4C#N)OC)OC +c1cc(ccc1NS(=O)(=O)c2ccc3c(c2)CC[C@@H](O3)C(=O)O)N4C(=O)N(N=N4)CCCC5CCCC5 +c1cc(ccc1NS(=O)(=O)c2ccc3c(c2)CC[C@@H](O3)C(=O)[O-])N4C(=O)N(N=N4)CCCC5CCCC5 +c1cc(cc(c1)Cl)C2(CC2)C(=O)Nc3ccc(c(c3)C4=NNN=N4)c5cc(cnc5)F +c1cc(cc(c1)Cl)C2(CC2)C(=O)Nc3ccc(c(c3)C4=N[N-]N=N4)c5cc(cnc5)F +c1cc(cc(c1)Cl)C2(CC2)C(=O)Nc3ccc(c(c3)C4=NN=N[N-]4)c5cc(cnc5)F +CC1=C(SC2=C1C(=O)N(C(=O)N2CCOC)CC(C)(C)F)CN3CCNC3=O +Cc1ccc2c(c1)COC(=O)c3c(ccc(c3OC)[C@@H](CC(=C)C)O)S2 +CC[C@@H](COc1ccc(cc1)C(=O)OCC(C)C)OC(=O)C2=C(C(=NS2)Cl)Cl +CCSC1(CC1)[C@@](CN2C=CN=C2)(c3ccc(cc3)Cl)O +C[C@@]1(O[C@@H](CS1)C[N@]2CCCC(C2)(C)C)C(C)(C)COc3ccc(cc3)Cl +C[C@@]1(O[C@@H](CS1)C[N@H+]2CCCC(C2)(C)C)C(C)(C)COc3ccc(cc3)Cl +c1cc(ncc1Cl)CN2C(=O)N3[C@H](CCCC3=N2)C(=O)N4CCSC4 +CCC[N@@]1C[C@@H](C[C@@H]2[C@@H]1CC3=C(Nc4c3c2ccc4)COC)CSC +CCC[N@@H+]1C[C@@H](C[C@@H]2[C@@H]1CC3=C(Nc4c3c2ccc4)COC)CSC +CC1(c2c(nc(nn2)C3=NN(c4c3cc(cn4)F)CC5CC(C5)(F)F)NC1=O)C +C[C@@H]1C(=O)N(c2ccc(nc2[N@@]1C3CC[NH+](CC3)C)Nc4cccc(c4)S(=O)(=O)N5CC(C5)(F)F)C +CC1(C[N@@](c2c1cc(cc2)c3ccc(cc3)C(F)(F)F)S(=O)(=O)c4ccc5c(c4)[C@@H](CCC5)CC(=O)O)C +CC1(C[N@@](c2c1cc(cc2)c3ccc(cc3)C(F)(F)F)S(=O)(=O)c4ccc5c(c4)[C@@H](CCC5)CC(=O)[O-])C +c1c(ncc(n1)Cl)C(=O)NC2CCN(CC2)CC(F)F +CC(C)c1c(c(c2c(n1)CC3(CCC3)C[C@@H]2O)C4CCCC4)[C@@H](c5ccc(cc5)C(F)(F)F)F +C[C@H]1C[C@H]1N2C(=O)C3=C(N(C2=O)CC4COC4)SC(=C3C)CN5CCNC5=O +CC[C@@H](C)COc1cc(cc2c1Oc3ccc(c(c3C(=O)OC2)OC)[C@@H](CC(C)C)O)C +c1ccc(cc1)[C@@H](C(=O)O)C(=O)OCC2CCCCC2 +c1ccc(cc1)[C@@H](C(=O)[O-])C(=O)OCC2CCCCC2 +CCOC(=O)[C@@H]1Cc2cccc(c2C1=O)O +CCOC(=O)C1=C(c2c(cccc2O)C1)O +CCCCN(CCCC)c1ncc(cn1)Br +CSC1(CC1)[C@@](CN2C=NC=N2)(c3ccc(cc3F)F)O +CC(=O)NC[C@@H]1CN(C(=O)O1)c2ccc3c(c2)SCC4=NC=CN34 +CCN(CC)C(=O)N[C@@H]1C[C@@H]2c3cc(cc4c3C(=C(N4)C)C[C@@H]2[N@@](C1)C)C5SCCS5 +CCN(CC)C(=O)N[C@@H]1C[C@@H]2c3cc(cc4c3C(=C(N4)C)C[C@@H]2[N@@H+](C1)C)C5SCCS5 +c1ccc(cc1)[C@@](CN2C=NC=N2)(C#N)OC3CCCC3 +Cc1ccccc1C2=Nc3ccc(cc3C(=O)N2C[C@@H]4CCC[N@@](C4)C(C)C)C#CC5CC5 +Cc1ccccc1C2=Nc3ccc(cc3C(=O)N2C[C@@H]4CCC[N@@H+](C4)C(C)C)C#CC5CC5 +CC1(C(=O)N(C(=S)N1CCCCCO)c2ccc3c(c2)COC3=O)C +C=C1C[C@@H]2COC(=O)[C@@]2(C1)Cc3cccc(c3)C(=O)O +C=C1C[C@@H]2COC(=O)[C@@]2(C1)Cc3cccc(c3)C(=O)[O-] +Cc1cc2c(c(c1)OC)Sc3ccc(c(c3C(=O)OC2)OC)[C@@H](CC(=C)C)O +C[C@@H](CCc1ccc(cc1)Cl)NC(=O)N2C(=O)N(C(=N2)C3CC3)NC +CS(=O)(=O)c1ccc(c(c1OCCN2C=NN=N2)Cl)C(=O)C3C(=O)CCCC3=O +CCCCC[S@@](=O)C1=NN=C(S1)C(=O)NC2CC2 +CC(C)C1=NN=C(N(C1=O)C)N(C)C +CCOC(=O)CSC1=Nc2ccc(cc2O1)N3C[C@@H](OC3=O)CNC(=O)C +CCC[N@@]1C[C@@H](C[C@@H]2[C@@H]1CC3=C(Nc4c3c2cc(c4)C)SC)NC(=O)N(CC)CC +CCC[N@@H+]1C[C@@H](C[C@@H]2[C@@H]1CC3=C(Nc4c3c2cc(c4)C)SC)NC(=O)N(CC)CC +CC(C)Nc1c2cc(c(cc2ncn1)OCCCC[S@@](=N)(=O)C)OC +CC1=C2C[C@@H]3[C@@H](C[C@@H](CN3C#N)C(=O)OC)c4c2c(ccc4)N1 +CC(C)(C)[C@@H]([C@@H](C[C@@H]1CC1(Cl)Cl)N2C=NC=N2)O +Cc1cccc(c1N([C@@H](C)C=C=C)C(=O)CS(=O)(=O)C)C diff --git a/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/generate-combined-dataset.py b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/generate-combined-dataset.py new file mode 100644 index 00000000..529f922f --- /dev/null +++ b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/generate-combined-dataset.py @@ -0,0 +1,192 @@ +import numpy as np +import requests +import logging +from typing import Type +from collections import Counter + +logging.getLogger("openff").setLevel(logging.ERROR) + +from openff.qcsubmit.results import OptimizationResultCollection +from openff.qcsubmit.datasets import OptimizationDataset +from openff.qcsubmit.factories import OptimizationDatasetFactory +from openff.qcsubmit.common_structures import MoleculeAttributes + +from openff.toolkit.utils import OpenEyeToolkitWrapper, ToolkitRegistry +from openff.units import unit + + +def pull_record_id_cmiles(Opt): + """Pull CMILES strings associated with each molecule record + + Parameters + ---------- + Opt + An OptimizationResultCollection object providing a reference to, and + allows the retrieval of, data from a single optimization result record + stored in a QCFractal instance. + + """ + rec_ids_cmiles = {} + for _, results in Opt.entries.items(): + tmp_rec_ids_cmiles = {result.record_id: result.cmiles for result in results} + # TODO: Check if updating dic would change the number of records + rec_ids_cmiles.update(tmp_rec_ids_cmiles) + + return rec_ids_cmiles + + + +# _________ Pull Dataset into OptimizationDataset object ____________ +print("# Creating dataset") + +file = requests.get( + "https://raw.githubusercontent.com/openforcefield/openff-sage/37a36e7eeaf6cdca795847089a288bdff168c08a/data-set-curation/quantum-chemical/data-sets/1-2-0-opt-set-v3.json" +) +filtered_and_combined = OptimizationResultCollection.parse_raw(file.content) +rec_and_mol = filtered_and_combined.to_records() +rec_and_cmiles = pull_record_id_cmiles(filtered_and_combined) + +print("Number of results: ", filtered_and_combined.n_results, flush=True) +print("Finished converting to records", flush=True) + +dataset_factory1 = OptimizationDatasetFactory() +provenance1 = dataset_factory1.provenance(ToolkitRegistry([OpenEyeToolkitWrapper])) + +dataset1 = OptimizationDataset( + dataset_name="OpenFF Sage 2.0.0 Training Optimization Dataset v1.0", + dataset_tagline="B3LYP-D3BJ/DZVP conformers applicable to drug-like molecules for OpenFF 2.0.0 Sage", + description=( + "A quantum chemical (QC) dataset curated to train OpenFF 2.0.0 Sage, " + "with reparametrized Lennard-Jones (LJ) and valence parameters, the latter " + "relevant to this dataset. This QC dataset with the OpenFF default level of " + "theory, B3LYP-D3BJ/DZVP, is used to benchmark Sage geometries and energetics. " + "These optimized conformer geometries where used in conjunction with the QC " + "dataset used to train one dimensional torsional profiles. This Generation 2 " + "dataset increases chemical diversity when compared to Generation 1, which are " + "of value to our industry partners. Large molecules (>20 heavy atoms) were also " + "included, including more flexible molecules and a greater degree of conformational " + "variation which provide intramolecular interactions.\nThis is the complete optimization " + "dataset used for training OpenFF 2.0.0 Sage, consisting of the following datasets: " + "'OpenFF Gen 2 Opt Set 1 Roche', 'OpenFF Gen 2 Opt Set 2 Coverage', 'OpenFF Gen 2 Opt Set 3 Pfizer Discrepancy', " + "'OpenFF Gen 2 Opt Set 4 eMolecules - Discrepancy', and 'OpenFF Gen 2 Opt Set 5 Bayer'.\nThe " + "following filters were applied: RecordStatusFilter(status=RecordStatusEnum.complete), " + "ConnectivityFilter(tolerance=1.2), UndefinedStereoFilter(), ConformerRMSDFilter(max_conformers=10), " + "and ElementFilter(allowed_elements=['H', 'C', 'N', 'O', 'S', 'P', 'F', 'Cl', 'Br', 'I'])" + "Further information can be found in the curation scripts for the linked repositories." + ), + provenance=provenance1, +) +dataset1.metadata.submitter = "Jennifer A Clark" +dataset1.metadata.long_description_url = ( + "https://github.com/openforcefield/qca-dataset-submission/tree/master/submissions/" + "2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0" +) + + +# Have to add records this way to avoid a round trip through the toolkit. +# rec_and_mole is a linear representation of all the molecules +# records_by_cmiles groups together conformers +records_by_cmiles = {} +for record, molecule in rec_and_mol: + cmiles = rec_and_cmiles[record.id] + if cmiles in records_by_cmiles: + records_by_cmiles[cmiles].append((record, molecule)) + else: + records_by_cmiles[cmiles] = [(record, molecule)] + +for cmiles, records in records_by_cmiles.items(): + base_record, base_molecule = records[0] + base_molecule._conformers = [m.conformers[0] for _, m in records] + + # Need to input initial molecules so that QCA will recognize the inputs as the same. + initial_mols = [rec.initial_molecule for rec, _ in records] + + dataset1.add_molecule( + index=cmiles, + molecule=None, + initial_molecules=initial_mols, + attributes=MoleculeAttributes.from_openff_molecule(base_molecule), + extras=base_record.extras, + keywords=base_record.specification.keywords, + ) + +# Check that the molecules are identical +opt_hashes = {rec.initial_molecule.get_hash() for rec, _mol in rec_and_mol} + +new_hashes = { + qcemol.identifiers.molecule_hash + for moldata in dataset1.dataset.values() + for qcemol in moldata.initial_molecules +} + +print("Dataset creation preserved Molecules? ", opt_hashes == new_hashes) + + + +# _________ Pull Statistics from Dataset ____________ + +n_confs1 = np.array([mol.n_conformers for mol in dataset1.molecules]) + +n_heavy_atoms1 = np.array( + [mol.to_rdkit().GetNumHeavyAtoms() for mol in dataset1.molecules] +) + +masses1 = np.array( + [sum([atom.mass.m for atom in mol.atoms]) for mol in dataset1.molecules] +) + +unique_charges1 = [ + str(charge) + for charge in sorted( + set( + [ + mol.total_charge.m_as(unit.elementary_charge) + for mol in dataset1.molecules + ] + ) + ) +] + +# _________ Write Output ____________ + +print("\n# Heavy Atom Counts") +counts1 = Counter(n_heavy_atoms1) +for n_heavy in sorted(counts1): + print(f"{str(n_heavy):>3}: {counts1[n_heavy]}") + +print("\n\n# Output for README\n") +print("* Description: {}".format(dataset1.description)) +print("* Purpose: {}".format(dataset1.dataset_tagline)) +print("* Name: {}".format(dataset1.dataset_name)) +print("* Number of unique molecules: {}".format(dataset1.n_molecules)) +print("* Number of filtered molecules:", dataset1.n_filtered) +print("* Number of conformers: {}".format(dataset1.n_records)) +print( + "* Number of conformers (min, mean, max): {:.2f}, {:.2f}, {:.2f}".format( + min(n_confs1), np.mean(n_confs1), max(n_confs1) + ) +) +print( + "* Molecular weight (min, mean, max): {:.2f}, {:.2f}, {:.2f}".format( + min(masses1), np.mean(masses1), max(masses1) + ) +) +print("* Charges: {}".format(", ".join(unique_charges1))) +print("* Submitter: {}".format(dataset1.metadata.submitter)) + +print("\n## Metadata") +print(f"* Elements: {{{', '.join(sorted(dataset1.metadata.dict()['elements']))}}}") + +fields = ["basis", "implicit_solvent", "keywords", "maxiter", "method", "program"] +for spec, obj in dataset1.qc_specifications.items(): + od = obj.dict() + print("* QC Specifications:", spec) + for field in fields: + print(f" * {field}: {od[field]}") + print(" * SCF Properties:") + for field in od["scf_properties"]: + print(f" * {field}") + +dataset1.export_dataset("dataset.json.bz2") +dataset1.molecules_to_file("dataset.smi", "smi") +dataset1.visualize("dataset.pdf", columns=8) diff --git a/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/output.txt b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/output.txt new file mode 100644 index 00000000..8a2bd0de --- /dev/null +++ b/submissions/2024-12-12-OpenFF-Sage-2.0.0-Training-Optimization-Dataset-v1.0/output.txt @@ -0,0 +1,73 @@ +# Creating dataset +Number of results: 3663 +Finished converting to records +Dataset creation preserved Molecules? True + +# Heavy Atom Counts + 4: 2 + 5: 3 + 6: 4 + 7: 7 + 8: 20 + 9: 19 + 10: 46 + 11: 56 + 12: 81 + 13: 81 + 14: 94 + 15: 94 + 16: 59 + 17: 59 + 18: 47 + 19: 38 + 20: 36 + 21: 45 + 22: 30 + 23: 23 + 24: 21 + 25: 29 + 26: 6 + 27: 11 + 28: 16 + 29: 10 + 30: 8 + 31: 16 + 32: 16 + 33: 11 + 34: 11 + 35: 5 + 36: 15 + 37: 7 + 38: 8 + 39: 5 + + +# Output for README + +* Description: A quantum chemical (QC) dataset curated to train OpenFF 2.0.0 Sage, with reparametrized Lennard-Jones (LJ) and valence parameters, the latter relevant to this dataset. This QC dataset with the OpenFF default level of theory, B3LYP-D3BJ/DZVP, is used to benchmark Sage geometries and energetics. These optimized conformer geometries where used in conjunction with the QC dataset used to train one dimensional torsional profiles. This Generation 2 dataset increases chemical diversity when compared to Generation 1, which are of value to our industry partners. Large molecules (>20 heavy atoms) were also included, including more flexible molecules and a greater degree of conformational variation which provide intramolecular interactions. +This is the complete optimization dataset used for training OpenFF 2.0.0 Sage, consisting of the following datasets: 'OpenFF Gen 2 Opt Set 1 Roche', 'OpenFF Gen 2 Opt Set 2 Coverage', 'OpenFF Gen 2 Opt Set 3 Pfizer Discrepancy', 'OpenFF Gen 2 Opt Set 4 eMolecules - Discrepancy', and 'OpenFF Gen 2 Opt Set 5 Bayer'. +The following filters were applied: RecordStatusFilter(status=RecordStatusEnum.complete), ConnectivityFilter(tolerance=1.2), UndefinedStereoFilter(), ConformerRMSDFilter(max_conformers=10), and ElementFilter(allowed_elements=['H', 'C', 'N', 'O', 'S', 'P', 'F', 'Cl', 'Br', 'I'])Further information can be found in the curation scripts for the linked repositories. +* Purpose: B3LYP-D3BJ/DZVP conformers applicable to drug-like molecules for OpenFF 2.0.0 Sage +* Name: OpenFF Sage 2.0.0 Training Optimization Dataset v1.0 +* Number of unique molecules: 1025 +* Number of filtered molecules: 0 +* Number of conformers: 3663 +* Number of conformers (min, mean, max): 1.00, 3.53, 10.00 +* Molecular weight (min, mean, max): 76.05, 261.38, 544.64 +* Charges: -2.0, -1.0, 0.0, 1.0 +* Submitter: Jennifer A Clark + +## Metadata +* Elements: {Br, C, Cl, F, H, I, N, O, P, S} +* QC Specifications: default + * basis: DZVP + * implicit_solvent: None + * keywords: {} + * maxiter: 200 + * method: B3LYP-D3BJ + * program: psi4 + * SCF Properties: + * dipole + * quadrupole + * wiberg_lowdin_indices + * mayer_indices