├── LICENSE ├── README.md ├── __init.py__ ├── example ├── CATA │ ├── CATA_example.ipynb │ └── CATA_example.xlsx ├── IFP_example.csv └── fpkit_example.ipynb ├── filters.py └── similarity.py /LICENSE: -------------------------------------------------------------------------------- 1 | MIT License 2 | 3 | Copyright (c) 2018 4 | 5 | Permission is hereby granted, free of charge, to any person obtaining a copy 6 | of this software and associated documentation files (the "Software"), to deal 7 | in the Software without restriction, including without limitation the rights 8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell 9 | copies of the Software, and to permit persons to whom the Software is 10 | furnished to do so, subject to the following conditions: 11 | 12 | The above copyright notice and this permission notice shall be included in all 13 | copies or substantial portions of the Software. 14 | 15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR 16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, 17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE 18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER 19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, 20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE 21 | SOFTWARE. 22 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # FPKit 2 | FingerPrint Kit - Python-based cheminformatics package for fingerprint-related tasks. 3 | 4 | Support for molecular fingerprint types implemented in the [RDKit](https://github.com/rdkit/rdkit) and [cinfony](http://cinfony.github.io/) cheminformatics toolkits was added in the current version. 5 | 6 | # Installation 7 | Just place anywhere in your `PYTHONPATH`, or update your `PYTHONPATH` to include the `fpkit` folder. 8 | 9 | See usage tips in the example iPyNotebook. 10 | 11 | # Citation 12 | 13 | If you use FPKit in your research, please cite our work: [Rácz et al. _J. Cheminformatics_ 10:48, **2018**](https://jcheminf.biomedcentral.com/articles/10.1186/s13321-018-0302-y) 14 | 15 | If you use the Check-All-That-Apply (CATA) workflow, please cite the corresponding work: [Gere et al. _Foods_ 10(5):1123, **2021**](https://www.mdpi.com/2304-8158/10/5/1123) 16 | 17 | 18 | 19 | [![DOI](https://zenodo.org/badge/DOI/10.5281/zenodo.3246311.svg)](https://doi.org/10.5281/zenodo.3246311) 20 | -------------------------------------------------------------------------------- /__init.py__: -------------------------------------------------------------------------------- 1 | 2 | -------------------------------------------------------------------------------- /example/CATA/CATA_example.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 1, 6 | "metadata": {}, 7 | "outputs": [], 8 | "source": [ 9 | "import numpy as np\n", 10 | "import pandas as pd\n", 11 | "import fpkit.similarity as fpkit" 12 | ] 13 | }, 14 | { 15 | "cell_type": "markdown", 16 | "metadata": {}, 17 | "source": [ 18 | "# FPKit (Fingerprint Kit) usage example for CATA (check-all-that-apply) datasets\n", 19 | "\n", 20 | "If you use this code, please cite our work: [Gere et al. _Foods_ 10(5):1123, **2021**](https://www.mdpi.com/2304-8158/10/5/1123)\n", 21 | "\n", 22 | "The input table contains CATA sensory evaluation data for multiple assessors and multiple products (samples).\n", 23 | "\n", 24 | "The first cell reads the input data and produces two multi-sheet excel files: one for the assessors, one for the samples. Each sheet contains pairwise similarity values for each sample pair/assessor pair according to the 44 metrics implemented in FPKit, for one specific assessor/sample, respectively." 25 | ] 26 | }, 27 | { 28 | "cell_type": "code", 29 | "execution_count": 2, 30 | "metadata": {}, 31 | "outputs": [], 32 | "source": [ 33 | "# Read the excel file with the first two columns as indexes\n", 34 | "indata=pd.read_excel('./CATA_example.xlsx', header=0, index_col=[0,1])\n", 35 | "# Get rid of last column (overall liking)\n", 36 | "indata=indata.iloc[:,:-1]\n", 37 | "\n", 38 | "# Currently handles two-level indexes\n", 39 | "for lev in range(0,len(indata.index.levels)):\n", 40 | " with pd.ExcelWriter('CATA_'+indata.index.get_level_values(lev).name+'_44metrics.xlsx') as writer:\n", 41 | " # 'Fix' one of the index levels (assessor, sample) to iterate over the other one\n", 42 | " for fixed in indata.index.get_level_values(lev).unique():\n", 43 | " # One value from the fixed level picked\n", 44 | " dfSlice=indata[np.in1d(indata.index.get_level_values(lev), [fixed])]\n", 45 | " df=pd.DataFrame()\n", 46 | " # Calculate the similarity metrics\n", 47 | " for metric in fpkit.metrics:\n", 48 | " dm=[]\n", 49 | " counter=0\n", 50 | " indices=[]\n", 51 | " # Iterate over object pairs at the non-fixed index level\n", 52 | " for i in dfSlice.index:\n", 53 | " counter+=1\n", 54 | " for j in dfSlice.index[counter:]:\n", 55 | " # Collect index pairs from the non-fixed index level\n", 56 | " indices.append((i[1-lev],j[1-lev]))\n", 57 | " # Append similarity to flattened similarity matrix (upper triangle only)\n", 58 | " dm.append(fpkit.sim(*fpkit.get_abcdp(list(dfSlice.loc[i]),list(dfSlice.loc[j])),metric=metric,scale=True))\n", 59 | " # Collect to dataframe\n", 60 | " df[metric]=pd.Series(dm, name=metric)\n", 61 | " # Reattach index pairs and write to excel sheet\n", 62 | " df.index=indices\n", 63 | " df.to_excel(writer,sheet_name=str(fixed))" 64 | ] 65 | }, 66 | { 67 | "cell_type": "markdown", 68 | "metadata": {}, 69 | "source": [ 70 | "\n", 71 | "\n", 72 | "The second cell aggregates the primary results by copying the individual sheet contents to one large sheet, appending the name of the assessor and the row-wise average similarity as the last two columns. It also creates a second sheet by pivoting the first one, keeping the average similarities only." 73 | ] 74 | }, 75 | { 76 | "cell_type": "code", 77 | "execution_count": 3, 78 | "metadata": {}, 79 | "outputs": [], 80 | "source": [ 81 | "############## Aggregate results to a single table\n", 82 | "\n", 83 | "with pd.ExcelWriter('CATA_Assessor_collected.xlsx') as writer:\n", 84 | " xl = pd.ExcelFile('./CATA_Assessor_44metrics.xlsx')\n", 85 | " sheets=xl.sheet_names\n", 86 | "\n", 87 | " # Read list of columns\n", 88 | " df=pd.read_excel('./CATA_Assessor_44metrics.xlsx', sheet_name=sheets[0])\n", 89 | " columns=list(df.columns)\n", 90 | "\n", 91 | " # Append a column name for collecting the assessor names\n", 92 | " columns.append('Assessor')\n", 93 | "\n", 94 | " # Initiate dataframe to collect results\n", 95 | " collectiondf=pd.DataFrame(columns=columns)\n", 96 | "\n", 97 | " # Iterate over all assessors\n", 98 | " for sheet in sheets:\n", 99 | " df=pd.read_excel('./CATA_Assessor_44metrics.xlsx', sheet_name=str(sheet))\n", 100 | " df['Assessor']=sheet\n", 101 | " collectiondf=collectiondf.append(df)\n", 102 | "\n", 103 | " # Calculate row-wise average similarities\n", 104 | " collectiondf['mean']=collectiondf.iloc[:,:-1].mean(axis=1)\n", 105 | " # Write to excel\n", 106 | " collectiondf.to_excel(writer, sheet_name='All data')\n", 107 | " \n", 108 | " # Collect average similarities into second sheet, by pivoting first sheet\n", 109 | " collectiondf2=collectiondf.pivot(columns='Assessor', values='mean')\n", 110 | " \n", 111 | " # Reindex column names numerically\n", 112 | " collectiondf2.columns=pd.to_numeric(collectiondf2.columns)\n", 113 | " collectiondf2 = collectiondf2.reindex(sorted(collectiondf2.columns), axis=1)\n", 114 | " # Reindex row names based on last input sheet\n", 115 | " collectiondf2 = collectiondf2.reindex(df.index, axis=0)\n", 116 | " \n", 117 | " # Write to excel\n", 118 | " collectiondf2.to_excel(writer, sheet_name='Mean similarities')" 119 | ] 120 | }, 121 | { 122 | "cell_type": "code", 123 | "execution_count": null, 124 | "metadata": {}, 125 | "outputs": [], 126 | "source": [] 127 | } 128 | ], 129 | "metadata": { 130 | "kernelspec": { 131 | "display_name": "Python 3", 132 | "language": "python", 133 | "name": "python3" 134 | }, 135 | "language_info": { 136 | "codemirror_mode": { 137 | "name": "ipython", 138 | "version": 3 139 | }, 140 | "file_extension": ".py", 141 | "mimetype": "text/x-python", 142 | "name": "python", 143 | "nbconvert_exporter": "python", 144 | "pygments_lexer": "ipython3", 145 | "version": "3.8.5" 146 | } 147 | }, 148 | "nbformat": 4, 149 | "nbformat_minor": 1 150 | } 151 | -------------------------------------------------------------------------------- /example/CATA/CATA_example.xlsx: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/davidbajusz/fpkit/19cd7c286df51a4cfa0a26d0cf98728764b84cfd/example/CATA/CATA_example.xlsx -------------------------------------------------------------------------------- /example/IFP_example.csv: -------------------------------------------------------------------------------- 1 | ,A85_contact,A85_backbone,A85_sidechain,A85_polar,A85_hydrophobic,A85_acceptor,A85_donor,A85_aromatic,A85_charged,A86_contact,A86_backbone,A86_sidechain,A86_polar,A86_hydrophobic,A86_acceptor,A86_donor,A86_aromatic,A86_charged,A87_contact,A87_backbone,A87_sidechain,A87_polar,A87_hydrophobic,A87_acceptor,A87_donor,A87_aromatic,A87_charged,A88_contact,A88_backbone,A88_sidechain,A88_polar,A88_hydrophobic,A88_acceptor,A88_donor,A88_aromatic,A88_charged,A89_contact,A89_backbone,A89_sidechain,A89_polar,A89_hydrophobic,A89_acceptor,A89_donor,A89_aromatic,A89_charged,A90_contact,A90_backbone,A90_sidechain,A90_polar,A90_hydrophobic,A90_acceptor,A90_donor,A90_aromatic,A90_charged,A91_contact,A91_backbone,A91_sidechain,A91_polar,A91_hydrophobic,A91_acceptor,A91_donor,A91_aromatic,A91_charged,A92_contact,A92_backbone,A92_sidechain,A92_polar,A92_hydrophobic,A92_acceptor,A92_donor,A92_aromatic,A92_charged,A93_contact,A93_backbone,A93_sidechain,A93_polar,A93_hydrophobic,A93_acceptor,A93_donor,A93_aromatic,A93_charged,A94_contact,A94_backbone,A94_sidechain,A94_polar,A94_hydrophobic,A94_acceptor,A94_donor,A94_aromatic,A94_charged,A95_contact,A95_backbone,A95_sidechain,A95_polar,A95_hydrophobic,A95_acceptor,A95_donor,A95_aromatic,A95_charged,A96_contact,A96_backbone,A96_sidechain,A96_polar,A96_hydrophobic,A96_acceptor,A96_donor,A96_aromatic,A96_charged,A97_contact,A97_backbone,A97_sidechain,A97_polar,A97_hydrophobic,A97_acceptor,A97_donor,A97_aromatic,A97_charged,A98_contact,A98_backbone,A98_sidechain,A98_polar,A98_hydrophobic,A98_acceptor,A98_donor,A98_aromatic,A98_charged,A99_contact,A99_backbone,A99_sidechain,A99_polar,A99_hydrophobic,A99_acceptor,A99_donor,A99_aromatic,A99_charged,A100_contact,A100_backbone,A100_sidechain,A100_polar,A100_hydrophobic,A100_acceptor,A100_donor,A100_aromatic,A100_charged,A101_contact,A101_backbone,A101_sidechain,A101_polar,A101_hydrophobic,A101_acceptor,A101_donor,A101_aromatic,A101_charged,A102_contact,A102_backbone,A102_sidechain,A102_polar,A102_hydrophobic,A102_acceptor,A102_donor,A102_aromatic,A102_charged,A103_contact,A103_backbone,A103_sidechain,A103_polar,A103_hydrophobic,A103_acceptor,A103_donor,A103_aromatic,A103_charged,A104_contact,A104_backbone,A104_sidechain,A104_polar,A104_hydrophobic,A104_acceptor,A104_donor,A104_aromatic,A104_charged,A105_contact,A105_backbone,A105_sidechain,A105_polar,A105_hydrophobic,A105_acceptor,A105_donor,A105_aromatic,A105_charged,A106_contact,A106_backbone,A106_sidechain,A106_polar,A106_hydrophobic,A106_acceptor,A106_donor,A106_aromatic,A106_charged,A107_contact,A107_backbone,A107_sidechain,A107_polar,A107_hydrophobic,A107_acceptor,A107_donor,A107_aromatic,A107_charged,A108_contact,A108_backbone,A108_sidechain,A108_polar,A108_hydrophobic,A108_acceptor,A108_donor,A108_aromatic,A108_charged,A109_contact,A109_backbone,A109_sidechain,A109_polar,A109_hydrophobic,A109_acceptor,A109_donor,A109_aromatic,A109_charged,A110_contact,A110_backbone,A110_sidechain,A110_polar,A110_hydrophobic,A110_acceptor,A110_donor,A110_aromatic,A110_charged,A111_contact,A111_backbone,A111_sidechain,A111_polar,A111_hydrophobic,A111_acceptor,A111_donor,A111_aromatic,A111_charged,A112_contact,A112_backbone,A112_sidechain,A112_polar,A112_hydrophobic,A112_acceptor,A112_donor,A112_aromatic,A112_charged,A113_contact,A113_backbone,A113_sidechain,A113_polar,A113_hydrophobic,A113_acceptor,A113_donor,A113_aromatic,A113_charged,A114_contact,A114_backbone,A114_sidechain,A114_polar,A114_hydrophobic,A114_acceptor,A114_donor,A114_aromatic,A114_charged,A115_contact,A115_backbone,A115_sidechain,A115_polar,A115_hydrophobic,A115_acceptor,A115_donor,A115_aromatic,A115_charged,A116_contact,A116_backbone,A116_sidechain,A116_polar,A116_hydrophobic,A116_acceptor,A116_donor,A116_aromatic,A116_charged,A117_contact,A117_backbone,A117_sidechain,A117_polar,A117_hydrophobic,A117_acceptor,A117_donor,A117_aromatic,A117_charged,A118_contact,A118_backbone,A118_sidechain,A118_polar,A118_hydrophobic,A118_acceptor,A118_donor,A118_aromatic,A118_charged,A119_contact,A119_backbone,A119_sidechain,A119_polar,A119_hydrophobic,A119_acceptor,A119_donor,A119_aromatic,A119_charged,A120_contact,A120_backbone,A120_sidechain,A120_polar,A120_hydrophobic,A120_acceptor,A120_donor,A120_aromatic,A120_charged,A121_contact,A121_backbone,A121_sidechain,A121_polar,A121_hydrophobic,A121_acceptor,A121_donor,A121_aromatic,A121_charged,A122_contact,A122_backbone,A122_sidechain,A122_polar,A122_hydrophobic,A122_acceptor,A122_donor,A122_aromatic,A122_charged,A123_contact,A123_backbone,A123_sidechain,A123_polar,A123_hydrophobic,A123_acceptor,A123_donor,A123_aromatic,A123_charged,A124_contact,A124_backbone,A124_sidechain,A124_polar,A124_hydrophobic,A124_acceptor,A124_donor,A124_aromatic,A124_charged,A125_contact,A125_backbone,A125_sidechain,A125_polar,A125_hydrophobic,A125_acceptor,A125_donor,A125_aromatic,A125_charged,A126_contact,A126_backbone,A126_sidechain,A126_polar,A126_hydrophobic,A126_acceptor,A126_donor,A126_aromatic,A126_charged,A127_contact,A127_backbone,A127_sidechain,A127_polar,A127_hydrophobic,A127_acceptor,A127_donor,A127_aromatic,A127_charged,A128_contact,A128_backbone,A128_sidechain,A128_polar,A128_hydrophobic,A128_acceptor,A128_donor,A128_aromatic,A128_charged,A129_contact,A129_backbone,A129_sidechain,A129_polar,A129_hydrophobic,A129_acceptor,A129_donor,A129_aromatic,A129_charged,A130_contact,A130_backbone,A130_sidechain,A130_polar,A130_hydrophobic,A130_acceptor,A130_donor,A130_aromatic,A130_charged,A131_contact,A131_backbone,A131_sidechain,A131_polar,A131_hydrophobic,A131_acceptor,A131_donor,A131_aromatic,A131_charged,A132_contact,A132_backbone,A132_sidechain,A132_polar,A132_hydrophobic,A132_acceptor,A132_donor,A132_aromatic,A132_charged,A133_contact,A133_backbone,A133_sidechain,A133_polar,A133_hydrophobic,A133_acceptor,A133_donor,A133_aromatic,A133_charged,A134_contact,A134_backbone,A134_sidechain,A134_polar,A134_hydrophobic,A134_acceptor,A134_donor,A134_aromatic,A134_charged,A135_contact,A135_backbone,A135_sidechain,A135_polar,A135_hydrophobic,A135_acceptor,A135_donor,A135_aromatic,A135_charged,A136_contact,A136_backbone,A136_sidechain,A136_polar,A136_hydrophobic,A136_acceptor,A136_donor,A136_aromatic,A136_charged,A137_contact,A137_backbone,A137_sidechain,A137_polar,A137_hydrophobic,A137_acceptor,A137_donor,A137_aromatic,A137_charged,A138_contact,A138_backbone,A138_sidechain,A138_polar,A138_hydrophobic,A138_acceptor,A138_donor,A138_aromatic,A138_charged,A139_contact,A139_backbone,A139_sidechain,A139_polar,A139_hydrophobic,A139_acceptor,A139_donor,A139_aromatic,A139_charged,A140_contact,A140_backbone,A140_sidechain,A140_polar,A140_hydrophobic,A140_acceptor,A140_donor,A140_aromatic,A140_charged,A141_contact,A141_backbone,A141_sidechain,A141_polar,A141_hydrophobic,A141_acceptor,A141_donor,A141_aromatic,A141_charged,A142_contact,A142_backbone,A142_sidechain,A142_polar,A142_hydrophobic,A142_acceptor,A142_donor,A142_aromatic,A142_charged,A143_contact,A143_backbone,A143_sidechain,A143_polar,A143_hydrophobic,A143_acceptor,A143_donor,A143_aromatic,A143_charged,A144_contact,A144_backbone,A144_sidechain,A144_polar,A144_hydrophobic,A144_acceptor,A144_donor,A144_aromatic,A144_charged,A145_contact,A145_backbone,A145_sidechain,A145_polar,A145_hydrophobic,A145_acceptor,A145_donor,A145_aromatic,A145_charged,A146_contact,A146_backbone,A146_sidechain,A146_polar,A146_hydrophobic,A146_acceptor,A146_donor,A146_aromatic,A146_charged,A147_contact,A147_backbone,A147_sidechain,A147_polar,A147_hydrophobic,A147_acceptor,A147_donor,A147_aromatic,A147_charged,A148_contact,A148_backbone,A148_sidechain,A148_polar,A148_hydrophobic,A148_acceptor,A148_donor,A148_aromatic,A148_charged,A149_contact,A149_backbone,A149_sidechain,A149_polar,A149_hydrophobic,A149_acceptor,A149_donor,A149_aromatic,A149_charged,A150_contact,A150_backbone,A150_sidechain,A150_polar,A150_hydrophobic,A150_acceptor,A150_donor,A150_aromatic,A150_charged,A151_contact,A151_backbone,A151_sidechain,A151_polar,A151_hydrophobic,A151_acceptor,A151_donor,A151_aromatic,A151_charged,A152_contact,A152_backbone,A152_sidechain,A152_polar,A152_hydrophobic,A152_acceptor,A152_donor,A152_aromatic,A152_charged,A153_contact,A153_backbone,A153_sidechain,A153_polar,A153_hydrophobic,A153_acceptor,A153_donor,A153_aromatic,A153_charged,A154_contact,A154_backbone,A154_sidechain,A154_polar,A154_hydrophobic,A154_acceptor,A154_donor,A154_aromatic,A154_charged,A155_contact,A155_backbone,A155_sidechain,A155_polar,A155_hydrophobic,A155_acceptor,A155_donor,A155_aromatic,A155_charged,A156_contact,A156_backbone,A156_sidechain,A156_polar,A156_hydrophobic,A156_acceptor,A156_donor,A156_aromatic,A156_charged,A157_contact,A157_backbone,A157_sidechain,A157_polar,A157_hydrophobic,A157_acceptor,A157_donor,A157_aromatic,A157_charged,A158_contact,A158_backbone,A158_sidechain,A158_polar,A158_hydrophobic,A158_acceptor,A158_donor,A158_aromatic,A158_charged,A159_contact,A159_backbone,A159_sidechain,A159_polar,A159_hydrophobic,A159_acceptor,A159_donor,A159_aromatic,A159_charged,A160_contact,A160_backbone,A160_sidechain,A160_polar,A160_hydrophobic,A160_acceptor,A160_donor,A160_aromatic,A160_charged,A161_contact,A161_backbone,A161_sidechain,A161_polar,A161_hydrophobic,A161_acceptor,A161_donor,A161_aromatic,A161_charged,A162_contact,A162_backbone,A162_sidechain,A162_polar,A162_hydrophobic,A162_acceptor,A162_donor,A162_aromatic,A162_charged,A163_contact,A163_backbone,A163_sidechain,A163_polar,A163_hydrophobic,A163_acceptor,A163_donor,A163_aromatic,A163_charged,A164_contact,A164_backbone,A164_sidechain,A164_polar,A164_hydrophobic,A164_acceptor,A164_donor,A164_aromatic,A164_charged,A165_contact,A165_backbone,A165_sidechain,A165_polar,A165_hydrophobic,A165_acceptor,A165_donor,A165_aromatic,A165_charged,A166_contact,A166_backbone,A166_sidechain,A166_polar,A166_hydrophobic,A166_acceptor,A166_donor,A166_aromatic,A166_charged,A167_contact,A167_backbone,A167_sidechain,A167_polar,A167_hydrophobic,A167_acceptor,A167_donor,A167_aromatic,A167_charged,A168_contact,A168_backbone,A168_sidechain,A168_polar,A168_hydrophobic,A168_acceptor,A168_donor,A168_aromatic,A168_charged,A169_contact,A169_backbone,A169_sidechain,A169_polar,A169_hydrophobic,A169_acceptor,A169_donor,A169_aromatic,A169_charged,A170_contact,A170_backbone,A170_sidechain,A170_polar,A170_hydrophobic,A170_acceptor,A170_donor,A170_aromatic,A170_charged,A171_contact,A171_backbone,A171_sidechain,A171_polar,A171_hydrophobic,A171_acceptor,A171_donor,A171_aromatic,A171_charged,A172_contact,A172_backbone,A172_sidechain,A172_polar,A172_hydrophobic,A172_acceptor,A172_donor,A172_aromatic,A172_charged,A173_contact,A173_backbone,A173_sidechain,A173_polar,A173_hydrophobic,A173_acceptor,A173_donor,A173_aromatic,A173_charged,A174_contact,A174_backbone,A174_sidechain,A174_polar,A174_hydrophobic,A174_acceptor,A174_donor,A174_aromatic,A174_charged,A175_contact,A175_backbone,A175_sidechain,A175_polar,A175_hydrophobic,A175_acceptor,A175_donor,A175_aromatic,A175_charged,A176_contact,A176_backbone,A176_sidechain,A176_polar,A176_hydrophobic,A176_acceptor,A176_donor,A176_aromatic,A176_charged,A177_contact,A177_backbone,A177_sidechain,A177_polar,A177_hydrophobic,A177_acceptor,A177_donor,A177_aromatic,A177_charged,A178_contact,A178_backbone,A178_sidechain,A178_polar,A178_hydrophobic,A178_acceptor,A178_donor,A178_aromatic,A178_charged,A179_contact,A179_backbone,A179_sidechain,A179_polar,A179_hydrophobic,A179_acceptor,A179_donor,A179_aromatic,A179_charged,A180_contact,A180_backbone,A180_sidechain,A180_polar,A180_hydrophobic,A180_acceptor,A180_donor,A180_aromatic,A180_charged,A181_contact,A181_backbone,A181_sidechain,A181_polar,A181_hydrophobic,A181_acceptor,A181_donor,A181_aromatic,A181_charged,A182_contact,A182_backbone,A182_sidechain,A182_polar,A182_hydrophobic,A182_acceptor,A182_donor,A182_aromatic,A182_charged,A183_contact,A183_backbone,A183_sidechain,A183_polar,A183_hydrophobic,A183_acceptor,A183_donor,A183_aromatic,A183_charged,A184_contact,A184_backbone,A184_sidechain,A184_polar,A184_hydrophobic,A184_acceptor,A184_donor,A184_aromatic,A184_charged,A185_contact,A185_backbone,A185_sidechain,A185_polar,A185_hydrophobic,A185_acceptor,A185_donor,A185_aromatic,A185_charged,A186_contact,A186_backbone,A186_sidechain,A186_polar,A186_hydrophobic,A186_acceptor,A186_donor,A186_aromatic,A186_charged,A187_contact,A187_backbone,A187_sidechain,A187_polar,A187_hydrophobic,A187_acceptor,A187_donor,A187_aromatic,A187_charged,A188_contact,A188_backbone,A188_sidechain,A188_polar,A188_hydrophobic,A188_acceptor,A188_donor,A188_aromatic,A188_charged,A189_contact,A189_backbone,A189_sidechain,A189_polar,A189_hydrophobic,A189_acceptor,A189_donor,A189_aromatic,A189_charged,A190_contact,A190_backbone,A190_sidechain,A190_polar,A190_hydrophobic,A190_acceptor,A190_donor,A190_aromatic,A190_charged,A191_contact,A191_backbone,A191_sidechain,A191_polar,A191_hydrophobic,A191_acceptor,A191_donor,A191_aromatic,A191_charged,A192_contact,A192_backbone,A192_sidechain,A192_polar,A192_hydrophobic,A192_acceptor,A192_donor,A192_aromatic,A192_charged,A193_contact,A193_backbone,A193_sidechain,A193_polar,A193_hydrophobic,A193_acceptor,A193_donor,A193_aromatic,A193_charged,A194_contact,A194_backbone,A194_sidechain,A194_polar,A194_hydrophobic,A194_acceptor,A194_donor,A194_aromatic,A194_charged,A195_contact,A195_backbone,A195_sidechain,A195_polar,A195_hydrophobic,A195_acceptor,A195_donor,A195_aromatic,A195_charged,A196_contact,A196_backbone,A196_sidechain,A196_polar,A196_hydrophobic,A196_acceptor,A196_donor,A196_aromatic,A196_charged,A197_contact,A197_backbone,A197_sidechain,A197_polar,A197_hydrophobic,A197_acceptor,A197_donor,A197_aromatic,A197_charged,A198_contact,A198_backbone,A198_sidechain,A198_polar,A198_hydrophobic,A198_acceptor,A198_donor,A198_aromatic,A198_charged,A199_contact,A199_backbone,A199_sidechain,A199_polar,A199_hydrophobic,A199_acceptor,A199_donor,A199_aromatic,A199_charged,A200_contact,A200_backbone,A200_sidechain,A200_polar,A200_hydrophobic,A200_acceptor,A200_donor,A200_aromatic,A200_charged,A201_contact,A201_backbone,A201_sidechain,A201_polar,A201_hydrophobic,A201_acceptor,A201_donor,A201_aromatic,A201_charged,A202_contact,A202_backbone,A202_sidechain,A202_polar,A202_hydrophobic,A202_acceptor,A202_donor,A202_aromatic,A202_charged,A203_contact,A203_backbone,A203_sidechain,A203_polar,A203_hydrophobic,A203_acceptor,A203_donor,A203_aromatic,A203_charged,A204_contact,A204_backbone,A204_sidechain,A204_polar,A204_hydrophobic,A204_acceptor,A204_donor,A204_aromatic,A204_charged,A205_contact,A205_backbone,A205_sidechain,A205_polar,A205_hydrophobic,A205_acceptor,A205_donor,A205_aromatic,A205_charged,A206_contact,A206_backbone,A206_sidechain,A206_polar,A206_hydrophobic,A206_acceptor,A206_donor,A206_aromatic,A206_charged,A207_contact,A207_backbone,A207_sidechain,A207_polar,A207_hydrophobic,A207_acceptor,A207_donor,A207_aromatic,A207_charged,A208_contact,A208_backbone,A208_sidechain,A208_polar,A208_hydrophobic,A208_acceptor,A208_donor,A208_aromatic,A208_charged,A209_contact,A209_backbone,A209_sidechain,A209_polar,A209_hydrophobic,A209_acceptor,A209_donor,A209_aromatic,A209_charged,A210_contact,A210_backbone,A210_sidechain,A210_polar,A210_hydrophobic,A210_acceptor,A210_donor,A210_aromatic,A210_charged,A211_contact,A211_backbone,A211_sidechain,A211_polar,A211_hydrophobic,A211_acceptor,A211_donor,A211_aromatic,A211_charged,A212_contact,A212_backbone,A212_sidechain,A212_polar,A212_hydrophobic,A212_acceptor,A212_donor,A212_aromatic,A212_charged,A213_contact,A213_backbone,A213_sidechain,A213_polar,A213_hydrophobic,A213_acceptor,A213_donor,A213_aromatic,A213_charged,A214_contact,A214_backbone,A214_sidechain,A214_polar,A214_hydrophobic,A214_acceptor,A214_donor,A214_aromatic,A214_charged,A215_contact,A215_backbone,A215_sidechain,A215_polar,A215_hydrophobic,A215_acceptor,A215_donor,A215_aromatic,A215_charged,A216_contact,A216_backbone,A216_sidechain,A216_polar,A216_hydrophobic,A216_acceptor,A216_donor,A216_aromatic,A216_charged,A217_contact,A217_backbone,A217_sidechain,A217_polar,A217_hydrophobic,A217_acceptor,A217_donor,A217_aromatic,A217_charged,A218_contact,A218_backbone,A218_sidechain,A218_polar,A218_hydrophobic,A218_acceptor,A218_donor,A218_aromatic,A218_charged,A219_contact,A219_backbone,A219_sidechain,A219_polar,A219_hydrophobic,A219_acceptor,A219_donor,A219_aromatic,A219_charged,A220_contact,A220_backbone,A220_sidechain,A220_polar,A220_hydrophobic,A220_acceptor,A220_donor,A220_aromatic,A220_charged,A221_contact,A221_backbone,A221_sidechain,A221_polar,A221_hydrophobic,A221_acceptor,A221_donor,A221_aromatic,A221_charged,A222_contact,A222_backbone,A222_sidechain,A222_polar,A222_hydrophobic,A222_acceptor,A222_donor,A222_aromatic,A222_charged,A223_contact,A223_backbone,A223_sidechain,A223_polar,A223_hydrophobic,A223_acceptor,A223_donor,A223_aromatic,A223_charged,A224_contact,A224_backbone,A224_sidechain,A224_polar,A224_hydrophobic,A224_acceptor,A224_donor,A224_aromatic,A224_charged,A225_contact,A225_backbone,A225_sidechain,A225_polar,A225_hydrophobic,A225_acceptor,A225_donor,A225_aromatic,A225_charged,A226_contact,A226_backbone,A226_sidechain,A226_polar,A226_hydrophobic,A226_acceptor,A226_donor,A226_aromatic,A226_charged,A227_contact,A227_backbone,A227_sidechain,A227_polar,A227_hydrophobic,A227_acceptor,A227_donor,A227_aromatic,A227_charged,A228_contact,A228_backbone,A228_sidechain,A228_polar,A228_hydrophobic,A228_acceptor,A228_donor,A228_aromatic,A228_charged,A229_contact,A229_backbone,A229_sidechain,A229_polar,A229_hydrophobic,A229_acceptor,A229_donor,A229_aromatic,A229_charged,A230_contact,A230_backbone,A230_sidechain,A230_polar,A230_hydrophobic,A230_acceptor,A230_donor,A230_aromatic,A230_charged,A231_contact,A231_backbone,A231_sidechain,A231_polar,A231_hydrophobic,A231_acceptor,A231_donor,A231_aromatic,A231_charged,A232_contact,A232_backbone,A232_sidechain,A232_polar,A232_hydrophobic,A232_acceptor,A232_donor,A232_aromatic,A232_charged,A233_contact,A233_backbone,A233_sidechain,A233_polar,A233_hydrophobic,A233_acceptor,A233_donor,A233_aromatic,A233_charged,A234_contact,A234_backbone,A234_sidechain,A234_polar,A234_hydrophobic,A234_acceptor,A234_donor,A234_aromatic,A234_charged,A235_contact,A235_backbone,A235_sidechain,A235_polar,A235_hydrophobic,A235_acceptor,A235_donor,A235_aromatic,A235_charged,A236_contact,A236_backbone,A236_sidechain,A236_polar,A236_hydrophobic,A236_acceptor,A236_donor,A236_aromatic,A236_charged,A237_contact,A237_backbone,A237_sidechain,A237_polar,A237_hydrophobic,A237_acceptor,A237_donor,A237_aromatic,A237_charged,A238_contact,A238_backbone,A238_sidechain,A238_polar,A238_hydrophobic,A238_acceptor,A238_donor,A238_aromatic,A238_charged,A239_contact,A239_backbone,A239_sidechain,A239_polar,A239_hydrophobic,A239_acceptor,A239_donor,A239_aromatic,A239_charged,A240_contact,A240_backbone,A240_sidechain,A240_polar,A240_hydrophobic,A240_acceptor,A240_donor,A240_aromatic,A240_charged,A241_contact,A241_backbone,A241_sidechain,A241_polar,A241_hydrophobic,A241_acceptor,A241_donor,A241_aromatic,A241_charged,A242_contact,A242_backbone,A242_sidechain,A242_polar,A242_hydrophobic,A242_acceptor,A242_donor,A242_aromatic,A242_charged,A243_contact,A243_backbone,A243_sidechain,A243_polar,A243_hydrophobic,A243_acceptor,A243_donor,A243_aromatic,A243_charged,A244_contact,A244_backbone,A244_sidechain,A244_polar,A244_hydrophobic,A244_acceptor,A244_donor,A244_aromatic,A244_charged,A245_contact,A245_backbone,A245_sidechain,A245_polar,A245_hydrophobic,A245_acceptor,A245_donor,A245_aromatic,A245_charged,A246_contact,A246_backbone,A246_sidechain,A246_polar,A246_hydrophobic,A246_acceptor,A246_donor,A246_aromatic,A246_charged,A247_contact,A247_backbone,A247_sidechain,A247_polar,A247_hydrophobic,A247_acceptor,A247_donor,A247_aromatic,A247_charged,A248_contact,A248_backbone,A248_sidechain,A248_polar,A248_hydrophobic,A248_acceptor,A248_donor,A248_aromatic,A248_charged,A249_contact,A249_backbone,A249_sidechain,A249_polar,A249_hydrophobic,A249_acceptor,A249_donor,A249_aromatic,A249_charged,A250_contact,A250_backbone,A250_sidechain,A250_polar,A250_hydrophobic,A250_acceptor,A250_donor,A250_aromatic,A250_charged,A251_contact,A251_backbone,A251_sidechain,A251_polar,A251_hydrophobic,A251_acceptor,A251_donor,A251_aromatic,A251_charged,A252_contact,A252_backbone,A252_sidechain,A252_polar,A252_hydrophobic,A252_acceptor,A252_donor,A252_aromatic,A252_charged,A253_contact,A253_backbone,A253_sidechain,A253_polar,A253_hydrophobic,A253_acceptor,A253_donor,A253_aromatic,A253_charged,A254_contact,A254_backbone,A254_sidechain,A254_polar,A254_hydrophobic,A254_acceptor,A254_donor,A254_aromatic,A254_charged,A255_contact,A255_backbone,A255_sidechain,A255_polar,A255_hydrophobic,A255_acceptor,A255_donor,A255_aromatic,A255_charged,A256_contact,A256_backbone,A256_sidechain,A256_polar,A256_hydrophobic,A256_acceptor,A256_donor,A256_aromatic,A256_charged,A257_contact,A257_backbone,A257_sidechain,A257_polar,A257_hydrophobic,A257_acceptor,A257_donor,A257_aromatic,A257_charged,A258_contact,A258_backbone,A258_sidechain,A258_polar,A258_hydrophobic,A258_acceptor,A258_donor,A258_aromatic,A258_charged,A259_contact,A259_backbone,A259_sidechain,A259_polar,A259_hydrophobic,A259_acceptor,A259_donor,A259_aromatic,A259_charged,A260_contact,A260_backbone,A260_sidechain,A260_polar,A260_hydrophobic,A260_acceptor,A260_donor,A260_aromatic,A260_charged,A261_contact,A261_backbone,A261_sidechain,A261_polar,A261_hydrophobic,A261_acceptor,A261_donor,A261_aromatic,A261_charged,A262_contact,A262_backbone,A262_sidechain,A262_polar,A262_hydrophobic,A262_acceptor,A262_donor,A262_aromatic,A262_charged,A263_contact,A263_backbone,A263_sidechain,A263_polar,A263_hydrophobic,A263_acceptor,A263_donor,A263_aromatic,A263_charged,A264_contact,A264_backbone,A264_sidechain,A264_polar,A264_hydrophobic,A264_acceptor,A264_donor,A264_aromatic,A264_charged,A265_contact,A265_backbone,A265_sidechain,A265_polar,A265_hydrophobic,A265_acceptor,A265_donor,A265_aromatic,A265_charged,A266_contact,A266_backbone,A266_sidechain,A266_polar,A266_hydrophobic,A266_acceptor,A266_donor,A266_aromatic,A266_charged,A267_contact,A267_backbone,A267_sidechain,A267_polar,A267_hydrophobic,A267_acceptor,A267_donor,A267_aromatic,A267_charged,A268_contact,A268_backbone,A268_sidechain,A268_polar,A268_hydrophobic,A268_acceptor,A268_donor,A268_aromatic,A268_charged,A269_contact,A269_backbone,A269_sidechain,A269_polar,A269_hydrophobic,A269_acceptor,A269_donor,A269_aromatic,A269_charged,A270_contact,A270_backbone,A270_sidechain,A270_polar,A270_hydrophobic,A270_acceptor,A270_donor,A270_aromatic,A270_charged,A271_contact,A271_backbone,A271_sidechain,A271_polar,A271_hydrophobic,A271_acceptor,A271_donor,A271_aromatic,A271_charged,A272_contact,A272_backbone,A272_sidechain,A272_polar,A272_hydrophobic,A272_acceptor,A272_donor,A272_aromatic,A272_charged,A273_contact,A273_backbone,A273_sidechain,A273_polar,A273_hydrophobic,A273_acceptor,A273_donor,A273_aromatic,A273_charged,A274_contact,A274_backbone,A274_sidechain,A274_polar,A274_hydrophobic,A274_acceptor,A274_donor,A274_aromatic,A274_charged,A275_contact,A275_backbone,A275_sidechain,A275_polar,A275_hydrophobic,A275_acceptor,A275_donor,A275_aromatic,A275_charged,A276_contact,A276_backbone,A276_sidechain,A276_polar,A276_hydrophobic,A276_acceptor,A276_donor,A276_aromatic,A276_charged,A277_contact,A277_backbone,A277_sidechain,A277_polar,A277_hydrophobic,A277_acceptor,A277_donor,A277_aromatic,A277_charged,A278_contact,A278_backbone,A278_sidechain,A278_polar,A278_hydrophobic,A278_acceptor,A278_donor,A278_aromatic,A278_charged,A279_contact,A279_backbone,A279_sidechain,A279_polar,A279_hydrophobic,A279_acceptor,A279_donor,A279_aromatic,A279_charged,A280_contact,A280_backbone,A280_sidechain,A280_polar,A280_hydrophobic,A280_acceptor,A280_donor,A280_aromatic,A280_charged,A281_contact,A281_backbone,A281_sidechain,A281_polar,A281_hydrophobic,A281_acceptor,A281_donor,A281_aromatic,A281_charged,A282_contact,A282_backbone,A282_sidechain,A282_polar,A282_hydrophobic,A282_acceptor,A282_donor,A282_aromatic,A282_charged,A283_contact,A283_backbone,A283_sidechain,A283_polar,A283_hydrophobic,A283_acceptor,A283_donor,A283_aromatic,A283_charged,A284_contact,A284_backbone,A284_sidechain,A284_polar,A284_hydrophobic,A284_acceptor,A284_donor,A284_aromatic,A284_charged,A285_contact,A285_backbone,A285_sidechain,A285_polar,A285_hydrophobic,A285_acceptor,A285_donor,A285_aromatic,A285_charged,A286_contact,A286_backbone,A286_sidechain,A286_polar,A286_hydrophobic,A286_acceptor,A286_donor,A286_aromatic,A286_charged,A287_contact,A287_backbone,A287_sidechain,A287_polar,A287_hydrophobic,A287_acceptor,A287_donor,A287_aromatic,A287_charged,A288_contact,A288_backbone,A288_sidechain,A288_polar,A288_hydrophobic,A288_acceptor,A288_donor,A288_aromatic,A288_charged,A289_contact,A289_backbone,A289_sidechain,A289_polar,A289_hydrophobic,A289_acceptor,A289_donor,A289_aromatic,A289_charged,A290_contact,A290_backbone,A290_sidechain,A290_polar,A290_hydrophobic,A290_acceptor,A290_donor,A290_aromatic,A290_charged,A291_contact,A291_backbone,A291_sidechain,A291_polar,A291_hydrophobic,A291_acceptor,A291_donor,A291_aromatic,A291_charged,A292_contact,A292_backbone,A292_sidechain,A292_polar,A292_hydrophobic,A292_acceptor,A292_donor,A292_aromatic,A292_charged,A293_contact,A293_backbone,A293_sidechain,A293_polar,A293_hydrophobic,A293_acceptor,A293_donor,A293_aromatic,A293_charged,A294_contact,A294_backbone,A294_sidechain,A294_polar,A294_hydrophobic,A294_acceptor,A294_donor,A294_aromatic,A294_charged,A295_contact,A295_backbone,A295_sidechain,A295_polar,A295_hydrophobic,A295_acceptor,A295_donor,A295_aromatic,A295_charged,A296_contact,A296_backbone,A296_sidechain,A296_polar,A296_hydrophobic,A296_acceptor,A296_donor,A296_aromatic,A296_charged,A297_contact,A297_backbone,A297_sidechain,A297_polar,A297_hydrophobic,A297_acceptor,A297_donor,A297_aromatic,A297_charged,A298_contact,A298_backbone,A298_sidechain,A298_polar,A298_hydrophobic,A298_acceptor,A298_donor,A298_aromatic,A298_charged,A299_contact,A299_backbone,A299_sidechain,A299_polar,A299_hydrophobic,A299_acceptor,A299_donor,A299_aromatic,A299_charged,A300_contact,A300_backbone,A300_sidechain,A300_polar,A300_hydrophobic,A300_acceptor,A300_donor,A300_aromatic,A300_charged,A301_contact,A301_backbone,A301_sidechain,A301_polar,A301_hydrophobic,A301_acceptor,A301_donor,A301_aromatic,A301_charged,A302_contact,A302_backbone,A302_sidechain,A302_polar,A302_hydrophobic,A302_acceptor,A302_donor,A302_aromatic,A302_charged,A303_contact,A303_backbone,A303_sidechain,A303_polar,A303_hydrophobic,A303_acceptor,A303_donor,A303_aromatic,A303_charged,A304_contact,A304_backbone,A304_sidechain,A304_polar,A304_hydrophobic,A304_acceptor,A304_donor,A304_aromatic,A304_charged,A305_contact,A305_backbone,A305_sidechain,A305_polar,A305_hydrophobic,A305_acceptor,A305_donor,A305_aromatic,A305_charged,A306_contact,A306_backbone,A306_sidechain,A306_polar,A306_hydrophobic,A306_acceptor,A306_donor,A306_aromatic,A306_charged,A307_contact,A307_backbone,A307_sidechain,A307_polar,A307_hydrophobic,A307_acceptor,A307_donor,A307_aromatic,A307_charged,A308_contact,A308_backbone,A308_sidechain,A308_polar,A308_hydrophobic,A308_acceptor,A308_donor,A308_aromatic,A308_charged,A309_contact,A309_backbone,A309_sidechain,A309_polar,A309_hydrophobic,A309_acceptor,A309_donor,A309_aromatic,A309_charged,A310_contact,A310_backbone,A310_sidechain,A310_polar,A310_hydrophobic,A310_acceptor,A310_donor,A310_aromatic,A310_charged,A311_contact,A311_backbone,A311_sidechain,A311_polar,A311_hydrophobic,A311_acceptor,A311_donor,A311_aromatic,A311_charged,A312_contact,A312_backbone,A312_sidechain,A312_polar,A312_hydrophobic,A312_acceptor,A312_donor,A312_aromatic,A312_charged,A313_contact,A313_backbone,A313_sidechain,A313_polar,A313_hydrophobic,A313_acceptor,A313_donor,A313_aromatic,A313_charged,A314_contact,A314_backbone,A314_sidechain,A314_polar,A314_hydrophobic,A314_acceptor,A314_donor,A314_aromatic,A314_charged,A315_contact,A315_backbone,A315_sidechain,A315_polar,A315_hydrophobic,A315_acceptor,A315_donor,A315_aromatic,A315_charged,A316_contact,A316_backbone,A316_sidechain,A316_polar,A316_hydrophobic,A316_acceptor,A316_donor,A316_aromatic,A316_charged,A317_contact,A317_backbone,A317_sidechain,A317_polar,A317_hydrophobic,A317_acceptor,A317_donor,A317_aromatic,A317_charged,A318_contact,A318_backbone,A318_sidechain,A318_polar,A318_hydrophobic,A318_acceptor,A318_donor,A318_aromatic,A318_charged,A319_contact,A319_backbone,A319_sidechain,A319_polar,A319_hydrophobic,A319_acceptor,A319_donor,A319_aromatic,A319_charged,A320_contact,A320_backbone,A320_sidechain,A320_polar,A320_hydrophobic,A320_acceptor,A320_donor,A320_aromatic,A320_charged,A321_contact,A321_backbone,A321_sidechain,A321_polar,A321_hydrophobic,A321_acceptor,A321_donor,A321_aromatic,A321_charged,A322_contact,A322_backbone,A322_sidechain,A322_polar,A322_hydrophobic,A322_acceptor,A322_donor,A322_aromatic,A322_charged,A323_contact,A323_backbone,A323_sidechain,A323_polar,A323_hydrophobic,A323_acceptor,A323_donor,A323_aromatic,A323_charged,A324_contact,A324_backbone,A324_sidechain,A324_polar,A324_hydrophobic,A324_acceptor,A324_donor,A324_aromatic,A324_charged,A325_contact,A325_backbone,A325_sidechain,A325_polar,A325_hydrophobic,A325_acceptor,A325_donor,A325_aromatic,A325_charged,A326_contact,A326_backbone,A326_sidechain,A326_polar,A326_hydrophobic,A326_acceptor,A326_donor,A326_aromatic,A326_charged,A327_contact,A327_backbone,A327_sidechain,A327_polar,A327_hydrophobic,A327_acceptor,A327_donor,A327_aromatic,A327_charged,A328_contact,A328_backbone,A328_sidechain,A328_polar,A328_hydrophobic,A328_acceptor,A328_donor,A328_aromatic,A328_charged,A329_contact,A329_backbone,A329_sidechain,A329_polar,A329_hydrophobic,A329_acceptor,A329_donor,A329_aromatic,A329_charged,A330_contact,A330_backbone,A330_sidechain,A330_polar,A330_hydrophobic,A330_acceptor,A330_donor,A330_aromatic,A330_charged,A331_contact,A331_backbone,A331_sidechain,A331_polar,A331_hydrophobic,A331_acceptor,A331_donor,A331_aromatic,A331_charged,A332_contact,A332_backbone,A332_sidechain,A332_polar,A332_hydrophobic,A332_acceptor,A332_donor,A332_aromatic,A332_charged,A333_contact,A333_backbone,A333_sidechain,A333_polar,A333_hydrophobic,A333_acceptor,A333_donor,A333_aromatic,A333_charged,A334_contact,A334_backbone,A334_sidechain,A334_polar,A334_hydrophobic,A334_acceptor,A334_donor,A334_aromatic,A334_charged,A335_contact,A335_backbone,A335_sidechain,A335_polar,A335_hydrophobic,A335_acceptor,A335_donor,A335_aromatic,A335_charged,A336_contact,A336_backbone,A336_sidechain,A336_polar,A336_hydrophobic,A336_acceptor,A336_donor,A336_aromatic,A336_charged,A337_contact,A337_backbone,A337_sidechain,A337_polar,A337_hydrophobic,A337_acceptor,A337_donor,A337_aromatic,A337_charged,A338_contact,A338_backbone,A338_sidechain,A338_polar,A338_hydrophobic,A338_acceptor,A338_donor,A338_aromatic,A338_charged,A339_contact,A339_backbone,A339_sidechain,A339_polar,A339_hydrophobic,A339_acceptor,A339_donor,A339_aromatic,A339_charged,A340_contact,A340_backbone,A340_sidechain,A340_polar,A340_hydrophobic,A340_acceptor,A340_donor,A340_aromatic,A340_charged,A341_contact,A341_backbone,A341_sidechain,A341_polar,A341_hydrophobic,A341_acceptor,A341_donor,A341_aromatic,A341_charged,A342_contact,A342_backbone,A342_sidechain,A342_polar,A342_hydrophobic,A342_acceptor,A342_donor,A342_aromatic,A342_charged,A343_contact,A343_backbone,A343_sidechain,A343_polar,A343_hydrophobic,A343_acceptor,A343_donor,A343_aromatic,A343_charged,A344_contact,A344_backbone,A344_sidechain,A344_polar,A344_hydrophobic,A344_acceptor,A344_donor,A344_aromatic,A344_charged,A345_contact,A345_backbone,A345_sidechain,A345_polar,A345_hydrophobic,A345_acceptor,A345_donor,A345_aromatic,A345_charged,A346_contact,A346_backbone,A346_sidechain,A346_polar,A346_hydrophobic,A346_acceptor,A346_donor,A346_aromatic,A346_charged,A347_contact,A347_backbone,A347_sidechain,A347_polar,A347_hydrophobic,A347_acceptor,A347_donor,A347_aromatic,A347_charged,A348_contact,A348_backbone,A348_sidechain,A348_polar,A348_hydrophobic,A348_acceptor,A348_donor,A348_aromatic,A348_charged,A349_contact,A349_backbone,A349_sidechain,A349_polar,A349_hydrophobic,A349_acceptor,A349_donor,A349_aromatic,A349_charged,A350_contact,A350_backbone,A350_sidechain,A350_polar,A350_hydrophobic,A350_acceptor,A350_donor,A350_aromatic,A350_charged,A351_contact,A351_backbone,A351_sidechain,A351_polar,A351_hydrophobic,A351_acceptor,A351_donor,A351_aromatic,A351_charged,A352_contact,A352_backbone,A352_sidechain,A352_polar,A352_hydrophobic,A352_acceptor,A352_donor,A352_aromatic,A352_charged,A353_contact,A353_backbone,A353_sidechain,A353_polar,A353_hydrophobic,A353_acceptor,A353_donor,A353_aromatic,A353_charged,A354_contact,A354_backbone,A354_sidechain,A354_polar,A354_hydrophobic,A354_acceptor,A354_donor,A354_aromatic,A354_charged,A355_contact,A355_backbone,A355_sidechain,A355_polar,A355_hydrophobic,A355_acceptor,A355_donor,A355_aromatic,A355_charged,A356_contact,A356_backbone,A356_sidechain,A356_polar,A356_hydrophobic,A356_acceptor,A356_donor,A356_aromatic,A356_charged,A357_contact,A357_backbone,A357_sidechain,A357_polar,A357_hydrophobic,A357_acceptor,A357_donor,A357_aromatic,A357_charged,A358_contact,A358_backbone,A358_sidechain,A358_polar,A358_hydrophobic,A358_acceptor,A358_donor,A358_aromatic,A358_charged,A359_contact,A359_backbone,A359_sidechain,A359_polar,A359_hydrophobic,A359_acceptor,A359_donor,A359_aromatic,A359_charged,A360_contact,A360_backbone,A360_sidechain,A360_polar,A360_hydrophobic,A360_acceptor,A360_donor,A360_aromatic,A360_charged,A361_contact,A361_backbone,A361_sidechain,A361_polar,A361_hydrophobic,A361_acceptor,A361_donor,A361_aromatic,A361_charged,A362_contact,A362_backbone,A362_sidechain,A362_polar,A362_hydrophobic,A362_acceptor,A362_donor,A362_aromatic,A362_charged,A363_contact,A363_backbone,A363_sidechain,A363_polar,A363_hydrophobic,A363_acceptor,A363_donor,A363_aromatic,A363_charged,A364_contact,A364_backbone,A364_sidechain,A364_polar,A364_hydrophobic,A364_acceptor,A364_donor,A364_aromatic,A364_charged,A365_contact,A365_backbone,A365_sidechain,A365_polar,A365_hydrophobic,A365_acceptor,A365_donor,A365_aromatic,A365_charged,A366_contact,A366_backbone,A366_sidechain,A366_polar,A366_hydrophobic,A366_acceptor,A366_donor,A366_aromatic,A366_charged,A367_contact,A367_backbone,A367_sidechain,A367_polar,A367_hydrophobic,A367_acceptor,A367_donor,A367_aromatic,A367_charged,A368_contact,A368_backbone,A368_sidechain,A368_polar,A368_hydrophobic,A368_acceptor,A368_donor,A368_aromatic,A368_charged,A369_contact,A369_backbone,A369_sidechain,A369_polar,A369_hydrophobic,A369_acceptor,A369_donor,A369_aromatic,A369_charged,A370_contact,A370_backbone,A370_sidechain,A370_polar,A370_hydrophobic,A370_acceptor,A370_donor,A370_aromatic,A370_charged,A371_contact,A371_backbone,A371_sidechain,A371_polar,A371_hydrophobic,A371_acceptor,A371_donor,A371_aromatic,A371_charged,A372_contact,A372_backbone,A372_sidechain,A372_polar,A372_hydrophobic,A372_acceptor,A372_donor,A372_aromatic,A372_charged,A373_contact,A373_backbone,A373_sidechain,A373_polar,A373_hydrophobic,A373_acceptor,A373_donor,A373_aromatic,A373_charged,A374_contact,A374_backbone,A374_sidechain,A374_polar,A374_hydrophobic,A374_acceptor,A374_donor,A374_aromatic,A374_charged,A375_contact,A375_backbone,A375_sidechain,A375_polar,A375_hydrophobic,A375_acceptor,A375_donor,A375_aromatic,A375_charged,A376_contact,A376_backbone,A376_sidechain,A376_polar,A376_hydrophobic,A376_acceptor,A376_donor,A376_aromatic,A376_charged,A377_contact,A377_backbone,A377_sidechain,A377_polar,A377_hydrophobic,A377_acceptor,A377_donor,A377_aromatic,A377_charged,A378_contact,A378_backbone,A378_sidechain,A378_polar,A378_hydrophobic,A378_acceptor,A378_donor,A378_aromatic,A378_charged,A379_contact,A379_backbone,A379_sidechain,A379_polar,A379_hydrophobic,A379_acceptor,A379_donor,A379_aromatic,A379_charged,A380_contact,A380_backbone,A380_sidechain,A380_polar,A380_hydrophobic,A380_acceptor,A380_donor,A380_aromatic,A380_charged,A381_contact,A381_backbone,A381_sidechain,A381_polar,A381_hydrophobic,A381_acceptor,A381_donor,A381_aromatic,A381_charged,A382_contact,A382_backbone,A382_sidechain,A382_polar,A382_hydrophobic,A382_acceptor,A382_donor,A382_aromatic,A382_charged,A383_contact,A383_backbone,A383_sidechain,A383_polar,A383_hydrophobic,A383_acceptor,A383_donor,A383_aromatic,A383_charged,A384_contact,A384_backbone,A384_sidechain,A384_polar,A384_hydrophobic,A384_acceptor,A384_donor,A384_aromatic,A384_charged,A385_contact,A385_backbone,A385_sidechain,A385_polar,A385_hydrophobic,A385_acceptor,A385_donor,A385_aromatic,A385_charged,A386_contact,A386_backbone,A386_sidechain,A386_polar,A386_hydrophobic,A386_acceptor,A386_donor,A386_aromatic,A386_charged,A387_contact,A387_backbone,A387_sidechain,A387_polar,A387_hydrophobic,A387_acceptor,A387_donor,A387_aromatic,A387_charged,A388_contact,A388_backbone,A388_sidechain,A388_polar,A388_hydrophobic,A388_acceptor,A388_donor,A388_aromatic,A388_charged,A389_contact,A389_backbone,A389_sidechain,A389_polar,A389_hydrophobic,A389_acceptor,A389_donor,A389_aromatic,A389_charged,A390_contact,A390_backbone,A390_sidechain,A390_polar,A390_hydrophobic,A390_acceptor,A390_donor,A390_aromatic,A390_charged,A391_contact,A391_backbone,A391_sidechain,A391_polar,A391_hydrophobic,A391_acceptor,A391_donor,A391_aromatic,A391_charged,A392_contact,A392_backbone,A392_sidechain,A392_polar,A392_hydrophobic,A392_acceptor,A392_donor,A392_aromatic,A392_charged,A393_contact,A393_backbone,A393_sidechain,A393_polar,A393_hydrophobic,A393_acceptor,A393_donor,A393_aromatic,A393_charged,A394_contact,A394_backbone,A394_sidechain,A394_polar,A394_hydrophobic,A394_acceptor,A394_donor,A394_aromatic,A394_charged,A395_contact,A395_backbone,A395_sidechain,A395_polar,A395_hydrophobic,A395_acceptor,A395_donor,A395_aromatic,A395_charged,A396_contact,A396_backbone,A396_sidechain,A396_polar,A396_hydrophobic,A396_acceptor,A396_donor,A396_aromatic,A396_charged,A397_contact,A397_backbone,A397_sidechain,A397_polar,A397_hydrophobic,A397_acceptor,A397_donor,A397_aromatic,A397_charged,A398_contact,A398_backbone,A398_sidechain,A398_polar,A398_hydrophobic,A398_acceptor,A398_donor,A398_aromatic,A398_charged,A399_contact,A399_backbone,A399_sidechain,A399_polar,A399_hydrophobic,A399_acceptor,A399_donor,A399_aromatic,A399_charged,A400_contact,A400_backbone,A400_sidechain,A400_polar,A400_hydrophobic,A400_acceptor,A400_donor,A400_aromatic,A400_charged,A401_contact,A401_backbone,A401_sidechain,A401_polar,A401_hydrophobic,A401_acceptor,A401_donor,A401_aromatic,A401_charged,A402_contact,A402_backbone,A402_sidechain,A402_polar,A402_hydrophobic,A402_acceptor,A402_donor,A402_aromatic,A402_charged,A403_contact,A403_backbone,A403_sidechain,A403_polar,A403_hydrophobic,A403_acceptor,A403_donor,A403_aromatic,A403_charged,A404_contact,A404_backbone,A404_sidechain,A404_polar,A404_hydrophobic,A404_acceptor,A404_donor,A404_aromatic,A404_charged,A405_contact,A405_backbone,A405_sidechain,A405_polar,A405_hydrophobic,A405_acceptor,A405_donor,A405_aromatic,A405_charged,A406_contact,A406_backbone,A406_sidechain,A406_polar,A406_hydrophobic,A406_acceptor,A406_donor,A406_aromatic,A406_charged,A407_contact,A407_backbone,A407_sidechain,A407_polar,A407_hydrophobic,A407_acceptor,A407_donor,A407_aromatic,A407_charged,A408_contact,A408_backbone,A408_sidechain,A408_polar,A408_hydrophobic,A408_acceptor,A408_donor,A408_aromatic,A408_charged,A409_contact,A409_backbone,A409_sidechain,A409_polar,A409_hydrophobic,A409_acceptor,A409_donor,A409_aromatic,A409_charged,A410_contact,A410_backbone,A410_sidechain,A410_polar,A410_hydrophobic,A410_acceptor,A410_donor,A410_aromatic,A410_charged,A411_contact,A411_backbone,A411_sidechain,A411_polar,A411_hydrophobic,A411_acceptor,A411_donor,A411_aromatic,A411_charged,A412_contact,A412_backbone,A412_sidechain,A412_polar,A412_hydrophobic,A412_acceptor,A412_donor,A412_aromatic,A412_charged,A413_contact,A413_backbone,A413_sidechain,A413_polar,A413_hydrophobic,A413_acceptor,A413_donor,A413_aromatic,A413_charged,A414_contact,A414_backbone,A414_sidechain,A414_polar,A414_hydrophobic,A414_acceptor,A414_donor,A414_aromatic,A414_charged,A415_contact,A415_backbone,A415_sidechain,A415_polar,A415_hydrophobic,A415_acceptor,A415_donor,A415_aromatic,A415_charged,A416_contact,A416_backbone,A416_sidechain,A416_polar,A416_hydrophobic,A416_acceptor,A416_donor,A416_aromatic,A416_charged,A417_contact,A417_backbone,A417_sidechain,A417_polar,A417_hydrophobic,A417_acceptor,A417_donor,A417_aromatic,A417_charged,A418_contact,A418_backbone,A418_sidechain,A418_polar,A418_hydrophobic,A418_acceptor,A418_donor,A418_aromatic,A418_charged,A419_contact,A419_backbone,A419_sidechain,A419_polar,A419_hydrophobic,A419_acceptor,A419_donor,A419_aromatic,A419_charged,A420_contact,A420_backbone,A420_sidechain,A420_polar,A420_hydrophobic,A420_acceptor,A420_donor,A420_aromatic,A420_charged,A421_contact,A421_backbone,A421_sidechain,A421_polar,A421_hydrophobic,A421_acceptor,A421_donor,A421_aromatic,A421_charged,A422_contact,A422_backbone,A422_sidechain,A422_polar,A422_hydrophobic,A422_acceptor,A422_donor,A422_aromatic,A422_charged,A423_contact,A423_backbone,A423_sidechain,A423_polar,A423_hydrophobic,A423_acceptor,A423_donor,A423_aromatic,A423_charged,A424_contact,A424_backbone,A424_sidechain,A424_polar,A424_hydrophobic,A424_acceptor,A424_donor,A424_aromatic,A424_charged,A425_contact,A425_backbone,A425_sidechain,A425_polar,A425_hydrophobic,A425_acceptor,A425_donor,A425_aromatic,A425_charged,A426_contact,A426_backbone,A426_sidechain,A426_polar,A426_hydrophobic,A426_acceptor,A426_donor,A426_aromatic,A426_charged,A427_contact,A427_backbone,A427_sidechain,A427_polar,A427_hydrophobic,A427_acceptor,A427_donor,A427_aromatic,A427_charged,A428_contact,A428_backbone,A428_sidechain,A428_polar,A428_hydrophobic,A428_acceptor,A428_donor,A428_aromatic,A428_charged,A429_contact,A429_backbone,A429_sidechain,A429_polar,A429_hydrophobic,A429_acceptor,A429_donor,A429_aromatic,A429_charged,A430_contact,A430_backbone,A430_sidechain,A430_polar,A430_hydrophobic,A430_acceptor,A430_donor,A430_aromatic,A430_charged,A431_contact,A431_backbone,A431_sidechain,A431_polar,A431_hydrophobic,A431_acceptor,A431_donor,A431_aromatic,A431_charged,A432_contact,A432_backbone,A432_sidechain,A432_polar,A432_hydrophobic,A432_acceptor,A432_donor,A432_aromatic,A432_charged,A433_contact,A433_backbone,A433_sidechain,A433_polar,A433_hydrophobic,A433_acceptor,A433_donor,A433_aromatic,A433_charged,A434_contact,A434_backbone,A434_sidechain,A434_polar,A434_hydrophobic,A434_acceptor,A434_donor,A434_aromatic,A434_charged,A435_contact,A435_backbone,A435_sidechain,A435_polar,A435_hydrophobic,A435_acceptor,A435_donor,A435_aromatic,A435_charged,A436_contact,A436_backbone,A436_sidechain,A436_polar,A436_hydrophobic,A436_acceptor,A436_donor,A436_aromatic,A436_charged,A437_contact,A437_backbone,A437_sidechain,A437_polar,A437_hydrophobic,A437_acceptor,A437_donor,A437_aromatic,A437_charged,A438_contact,A438_backbone,A438_sidechain,A438_polar,A438_hydrophobic,A438_acceptor,A438_donor,A438_aromatic,A438_charged,A439_contact,A439_backbone,A439_sidechain,A439_polar,A439_hydrophobic,A439_acceptor,A439_donor,A439_aromatic,A439_charged,A440_contact,A440_backbone,A440_sidechain,A440_polar,A440_hydrophobic,A440_acceptor,A440_donor,A440_aromatic,A440_charged,A441_contact,A441_backbone,A441_sidechain,A441_polar,A441_hydrophobic,A441_acceptor,A441_donor,A441_aromatic,A441_charged,A442_contact,A442_backbone,A442_sidechain,A442_polar,A442_hydrophobic,A442_acceptor,A442_donor,A442_aromatic,A442_charged,A443_contact,A443_backbone,A443_sidechain,A443_polar,A443_hydrophobic,A443_acceptor,A443_donor,A443_aromatic,A443_charged,A444_contact,A444_backbone,A444_sidechain,A444_polar,A444_hydrophobic,A444_acceptor,A444_donor,A444_aromatic,A444_charged,A445_contact,A445_backbone,A445_sidechain,A445_polar,A445_hydrophobic,A445_acceptor,A445_donor,A445_aromatic,A445_charged,A446_contact,A446_backbone,A446_sidechain,A446_polar,A446_hydrophobic,A446_acceptor,A446_donor,A446_aromatic,A446_charged,A447_contact,A447_backbone,A447_sidechain,A447_polar,A447_hydrophobic,A447_acceptor,A447_donor,A447_aromatic,A447_charged,A448_contact,A448_backbone,A448_sidechain,A448_polar,A448_hydrophobic,A448_acceptor,A448_donor,A448_aromatic,A448_charged,A449_contact,A449_backbone,A449_sidechain,A449_polar,A449_hydrophobic,A449_acceptor,A449_donor,A449_aromatic,A449_charged,A450_contact,A450_backbone,A450_sidechain,A450_polar,A450_hydrophobic,A450_acceptor,A450_donor,A450_aromatic,A450_charged,A451_contact,A451_backbone,A451_sidechain,A451_polar,A451_hydrophobic,A451_acceptor,A451_donor,A451_aromatic,A451_charged,A452_contact,A452_backbone,A452_sidechain,A452_polar,A452_hydrophobic,A452_acceptor,A452_donor,A452_aromatic,A452_charged,A453_contact,A453_backbone,A453_sidechain,A453_polar,A453_hydrophobic,A453_acceptor,A453_donor,A453_aromatic,A453_charged,A454_contact,A454_backbone,A454_sidechain,A454_polar,A454_hydrophobic,A454_acceptor,A454_donor,A454_aromatic,A454_charged,A455_contact,A455_backbone,A455_sidechain,A455_polar,A455_hydrophobic,A455_acceptor,A455_donor,A455_aromatic,A455_charged,A456_contact,A456_backbone,A456_sidechain,A456_polar,A456_hydrophobic,A456_acceptor,A456_donor,A456_aromatic,A456_charged,A457_contact,A457_backbone,A457_sidechain,A457_polar,A457_hydrophobic,A457_acceptor,A457_donor,A457_aromatic,A457_charged,A458_contact,A458_backbone,A458_sidechain,A458_polar,A458_hydrophobic,A458_acceptor,A458_donor,A458_aromatic,A458_charged,A459_contact,A459_backbone,A459_sidechain,A459_polar,A459_hydrophobic,A459_acceptor,A459_donor,A459_aromatic,A459_charged,A460_contact,A460_backbone,A460_sidechain,A460_polar,A460_hydrophobic,A460_acceptor,A460_donor,A460_aromatic,A460_charged,A461_contact,A461_backbone,A461_sidechain,A461_polar,A461_hydrophobic,A461_acceptor,A461_donor,A461_aromatic,A461_charged,A462_contact,A462_backbone,A462_sidechain,A462_polar,A462_hydrophobic,A462_acceptor,A462_donor,A462_aromatic,A462_charged,A463_contact,A463_backbone,A463_sidechain,A463_polar,A463_hydrophobic,A463_acceptor,A463_donor,A463_aromatic,A463_charged,A464_contact,A464_backbone,A464_sidechain,A464_polar,A464_hydrophobic,A464_acceptor,A464_donor,A464_aromatic,A464_charged,A465_contact,A465_backbone,A465_sidechain,A465_polar,A465_hydrophobic,A465_acceptor,A465_donor,A465_aromatic,A465_charged,A466_contact,A466_backbone,A466_sidechain,A466_polar,A466_hydrophobic,A466_acceptor,A466_donor,A466_aromatic,A466_charged,A467_contact,A467_backbone,A467_sidechain,A467_polar,A467_hydrophobic,A467_acceptor,A467_donor,A467_aromatic,A467_charged,A468_contact,A468_backbone,A468_sidechain,A468_polar,A468_hydrophobic,A468_acceptor,A468_donor,A468_aromatic,A468_charged,A469_contact,A469_backbone,A469_sidechain,A469_polar,A469_hydrophobic,A469_acceptor,A469_donor,A469_aromatic,A469_charged,A470_contact,A470_backbone,A470_sidechain,A470_polar,A470_hydrophobic,A470_acceptor,A470_donor,A470_aromatic,A470_charged,A471_contact,A471_backbone,A471_sidechain,A471_polar,A471_hydrophobic,A471_acceptor,A471_donor,A471_aromatic,A471_charged,A472_contact,A472_backbone,A472_sidechain,A472_polar,A472_hydrophobic,A472_acceptor,A472_donor,A472_aromatic,A472_charged,A473_contact,A473_backbone,A473_sidechain,A473_polar,A473_hydrophobic,A473_acceptor,A473_donor,A473_aromatic,A473_charged,A474_contact,A474_backbone,A474_sidechain,A474_polar,A474_hydrophobic,A474_acceptor,A474_donor,A474_aromatic,A474_charged,A475_contact,A475_backbone,A475_sidechain,A475_polar,A475_hydrophobic,A475_acceptor,A475_donor,A475_aromatic,A475_charged,A476_contact,A476_backbone,A476_sidechain,A476_polar,A476_hydrophobic,A476_acceptor,A476_donor,A476_aromatic,A476_charged,A477_contact,A477_backbone,A477_sidechain,A477_polar,A477_hydrophobic,A477_acceptor,A477_donor,A477_aromatic,A477_charged,A478_contact,A478_backbone,A478_sidechain,A478_polar,A478_hydrophobic,A478_acceptor,A478_donor,A478_aromatic,A478_charged,A479_contact,A479_backbone,A479_sidechain,A479_polar,A479_hydrophobic,A479_acceptor,A479_donor,A479_aromatic,A479_charged,A480_contact,A480_backbone,A480_sidechain,A480_polar,A480_hydrophobic,A480_acceptor,A480_donor,A480_aromatic,A480_charged,A481_contact,A481_backbone,A481_sidechain,A481_polar,A481_hydrophobic,A481_acceptor,A481_donor,A481_aromatic,A481_charged,A482_contact,A482_backbone,A482_sidechain,A482_polar,A482_hydrophobic,A482_acceptor,A482_donor,A482_aromatic,A482_charged,A483_contact,A483_backbone,A483_sidechain,A483_polar,A483_hydrophobic,A483_acceptor,A483_donor,A483_aromatic,A483_charged,A484_contact,A484_backbone,A484_sidechain,A484_polar,A484_hydrophobic,A484_acceptor,A484_donor,A484_aromatic,A484_charged,A485_contact,A485_backbone,A485_sidechain,A485_polar,A485_hydrophobic,A485_acceptor,A485_donor,A485_aromatic,A485_charged,A486_contact,A486_backbone,A486_sidechain,A486_polar,A486_hydrophobic,A486_acceptor,A486_donor,A486_aromatic,A486_charged,A487_contact,A487_backbone,A487_sidechain,A487_polar,A487_hydrophobic,A487_acceptor,A487_donor,A487_aromatic,A487_charged,A488_contact,A488_backbone,A488_sidechain,A488_polar,A488_hydrophobic,A488_acceptor,A488_donor,A488_aromatic,A488_charged,A489_contact,A489_backbone,A489_sidechain,A489_polar,A489_hydrophobic,A489_acceptor,A489_donor,A489_aromatic,A489_charged,A490_contact,A490_backbone,A490_sidechain,A490_polar,A490_hydrophobic,A490_acceptor,A490_donor,A490_aromatic,A490_charged,A491_contact,A491_backbone,A491_sidechain,A491_polar,A491_hydrophobic,A491_acceptor,A491_donor,A491_aromatic,A491_charged,A492_contact,A492_backbone,A492_sidechain,A492_polar,A492_hydrophobic,A492_acceptor,A492_donor,A492_aromatic,A492_charged,A493_contact,A493_backbone,A493_sidechain,A493_polar,A493_hydrophobic,A493_acceptor,A493_donor,A493_aromatic,A493_charged,A494_contact,A494_backbone,A494_sidechain,A494_polar,A494_hydrophobic,A494_acceptor,A494_donor,A494_aromatic,A494_charged,A495_contact,A495_backbone,A495_sidechain,A495_polar,A495_hydrophobic,A495_acceptor,A495_donor,A495_aromatic,A495_charged,A496_contact,A496_backbone,A496_sidechain,A496_polar,A496_hydrophobic,A496_acceptor,A496_donor,A496_aromatic,A496_charged,A497_contact,A497_backbone,A497_sidechain,A497_polar,A497_hydrophobic,A497_acceptor,A497_donor,A497_aromatic,A497_charged,A498_contact,A498_backbone,A498_sidechain,A498_polar,A498_hydrophobic,A498_acceptor,A498_donor,A498_aromatic,A498_charged,A499_contact,A499_backbone,A499_sidechain,A499_polar,A499_hydrophobic,A499_acceptor,A499_donor,A499_aromatic,A499_charged,A500_contact,A500_backbone,A500_sidechain,A500_polar,A500_hydrophobic,A500_acceptor,A500_donor,A500_aromatic,A500_charged,A501_contact,A501_backbone,A501_sidechain,A501_polar,A501_hydrophobic,A501_acceptor,A501_donor,A501_aromatic,A501_charged,A502_contact,A502_backbone,A502_sidechain,A502_polar,A502_hydrophobic,A502_acceptor,A502_donor,A502_aromatic,A502_charged,A503_contact,A503_backbone,A503_sidechain,A503_polar,A503_hydrophobic,A503_acceptor,A503_donor,A503_aromatic,A503_charged,A504_contact,A504_backbone,A504_sidechain,A504_polar,A504_hydrophobic,A504_acceptor,A504_donor,A504_aromatic,A504_charged,A505_contact,A505_backbone,A505_sidechain,A505_polar,A505_hydrophobic,A505_acceptor,A505_donor,A505_aromatic,A505_charged,A506_contact,A506_backbone,A506_sidechain,A506_polar,A506_hydrophobic,A506_acceptor,A506_donor,A506_aromatic,A506_charged,A507_contact,A507_backbone,A507_sidechain,A507_polar,A507_hydrophobic,A507_acceptor,A507_donor,A507_aromatic,A507_charged,A508_contact,A508_backbone,A508_sidechain,A508_polar,A508_hydrophobic,A508_acceptor,A508_donor,A508_aromatic,A508_charged,A509_contact,A509_backbone,A509_sidechain,A509_polar,A509_hydrophobic,A509_acceptor,A509_donor,A509_aromatic,A509_charged,A510_contact,A510_backbone,A510_sidechain,A510_polar,A510_hydrophobic,A510_acceptor,A510_donor,A510_aromatic,A510_charged,A511_contact,A511_backbone,A511_sidechain,A511_polar,A511_hydrophobic,A511_acceptor,A511_donor,A511_aromatic,A511_charged,A512_contact,A512_backbone,A512_sidechain,A512_polar,A512_hydrophobic,A512_acceptor,A512_donor,A512_aromatic,A512_charged,A513_contact,A513_backbone,A513_sidechain,A513_polar,A513_hydrophobic,A513_acceptor,A513_donor,A513_aromatic,A513_charged,A514_contact,A514_backbone,A514_sidechain,A514_polar,A514_hydrophobic,A514_acceptor,A514_donor,A514_aromatic,A514_charged,A515_contact,A515_backbone,A515_sidechain,A515_polar,A515_hydrophobic,A515_acceptor,A515_donor,A515_aromatic,A515_charged,A516_contact,A516_backbone,A516_sidechain,A516_polar,A516_hydrophobic,A516_acceptor,A516_donor,A516_aromatic,A516_charged,A517_contact,A517_backbone,A517_sidechain,A517_polar,A517_hydrophobic,A517_acceptor,A517_donor,A517_aromatic,A517_charged,A518_contact,A518_backbone,A518_sidechain,A518_polar,A518_hydrophobic,A518_acceptor,A518_donor,A518_aromatic,A518_charged,A519_contact,A519_backbone,A519_sidechain,A519_polar,A519_hydrophobic,A519_acceptor,A519_donor,A519_aromatic,A519_charged,A520_contact,A520_backbone,A520_sidechain,A520_polar,A520_hydrophobic,A520_acceptor,A520_donor,A520_aromatic,A520_charged,A521_contact,A521_backbone,A521_sidechain,A521_polar,A521_hydrophobic,A521_acceptor,A521_donor,A521_aromatic,A521_charged,A522_contact,A522_backbone,A522_sidechain,A522_polar,A522_hydrophobic,A522_acceptor,A522_donor,A522_aromatic,A522_charged,A523_contact,A523_backbone,A523_sidechain,A523_polar,A523_hydrophobic,A523_acceptor,A523_donor,A523_aromatic,A523_charged,A524_contact,A524_backbone,A524_sidechain,A524_polar,A524_hydrophobic,A524_acceptor,A524_donor,A524_aromatic,A524_charged,A525_contact,A525_backbone,A525_sidechain,A525_polar,A525_hydrophobic,A525_acceptor,A525_donor,A525_aromatic,A525_charged,A526_contact,A526_backbone,A526_sidechain,A526_polar,A526_hydrophobic,A526_acceptor,A526_donor,A526_aromatic,A526_charged,A527_contact,A527_backbone,A527_sidechain,A527_polar,A527_hydrophobic,A527_acceptor,A527_donor,A527_aromatic,A527_charged,A528_contact,A528_backbone,A528_sidechain,A528_polar,A528_hydrophobic,A528_acceptor,A528_donor,A528_aromatic,A528_charged,A529_contact,A529_backbone,A529_sidechain,A529_polar,A529_hydrophobic,A529_acceptor,A529_donor,A529_aromatic,A529_charged 2 | 2H8H_ligand,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 3 | ZINC03939514,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 4 | ZINC03815499,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 5 | ZINC03815489,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 6 | ZINC03939513,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,0,1,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 7 | ZINC03815240,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 8 | ZINC03815491,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 9 | ZINC03815514,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 10 | ZINC03815490,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 11 | ZINC03815501,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,0,0,0,0,1,1,0,0,0,0,0,0,0,1,1,1,0,1,0,0,1,0,1,1,1,0,1,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,1,0,1,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,1,0,1,0,1,0,0,0,0,1,1,1,1,0,0,0,0,1,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0 12 | -------------------------------------------------------------------------------- /example/fpkit_example.ipynb: -------------------------------------------------------------------------------- 1 | { 2 | "cells": [ 3 | { 4 | "cell_type": "code", 5 | "execution_count": 6, 6 | "metadata": { 7 | "collapsed": true 8 | }, 9 | "outputs": [], 10 | "source": [ 11 | "import fpkit.similarity as fps\n", 12 | "import fpkit.filters as filters\n", 13 | "\n", 14 | "import pandas as pd" 15 | ] 16 | }, 17 | { 18 | "cell_type": "markdown", 19 | "metadata": {}, 20 | "source": [ 21 | "# FPKit (Fingerprint Kit) usage example\n", 22 | "FPKit currently provides two tools:\n", 23 | "- A set of 51 similarity measures (in _fpkit.similarity_), collected in the following work: [Todeschini et al, _J Chem Inf Model_ 52(11):2884-2901, **2012**](https://pubs.acs.org/doi/10.1021/ci300261r). This is entirely general and can be applied to any two python lists, numpy arrays and pandas Series containing 0s and 1s, as well as molecular fingerprint types implemented in the [*cinfony*](http://cinfony.github.io/) cheminformatics package, provided they are the same length (and same type).\n", 24 | "- Three filtering options for interaction fingerprints (in _fpkit.filters_). This currently requires the use of pandas DataFrames, and in some cases, Schrödinger-style column headers, as documented in _filters.py_.\n", 25 | "\n", 26 | "# Citation\n", 27 | "If you use FPKit in your research, please cite our work: [Rácz et al. _J. Cheminformatics_ 10:48, **2018**](https://jcheminf.biomedcentral.com/articles/10.1186/s13321-018-0302-y)" 28 | ] 29 | }, 30 | { 31 | "cell_type": "code", 32 | "execution_count": 14, 33 | "metadata": {}, 34 | "outputs": [ 35 | { 36 | "data": { 37 | "text/html": [ 38 | "
\n", 39 | "\n", 52 | "\n", 53 | " \n", 54 | " \n", 55 | " \n", 56 | " \n", 57 | " \n", 58 | " \n", 59 | " \n", 60 | " \n", 61 | " \n", 62 | " \n", 63 | " \n", 64 | " \n", 65 | " \n", 66 | " \n", 67 | " \n", 68 | " \n", 69 | " \n", 70 | " \n", 71 | " \n", 72 | " \n", 73 | " \n", 74 | " \n", 75 | " \n", 76 | " \n", 77 | " \n", 78 | " \n", 79 | " \n", 80 | " \n", 81 | " \n", 82 | " \n", 83 | " \n", 84 | " \n", 85 | " \n", 86 | " \n", 87 | " \n", 88 | " \n", 89 | " \n", 90 | " \n", 91 | " \n", 92 | " \n", 93 | " \n", 94 | " \n", 95 | " \n", 96 | " \n", 97 | " \n", 98 | " \n", 99 | " \n", 100 | " \n", 101 | " \n", 102 | " \n", 103 | " \n", 104 | " \n", 105 | " \n", 106 | " \n", 107 | " \n", 108 | " \n", 109 | " \n", 110 | " \n", 111 | " \n", 112 | " \n", 113 | " \n", 114 | " \n", 115 | " \n", 116 | " \n", 117 | " \n", 118 | " \n", 119 | " \n", 120 | " \n", 121 | " \n", 122 | " \n", 123 | " \n", 124 | " \n", 125 | " \n", 126 | " \n", 127 | " \n", 128 | " \n", 129 | " \n", 130 | " \n", 131 | " \n", 132 | " \n", 133 | " \n", 134 | " \n", 135 | " \n", 136 | " \n", 137 | " \n", 138 | " \n", 139 | " \n", 140 | " \n", 141 | " \n", 142 | " \n", 143 | " \n", 144 | " \n", 145 | " \n", 146 | " \n", 147 | " \n", 148 | " \n", 149 | " \n", 150 | " \n", 151 | " \n", 152 | " \n", 153 | " \n", 154 | " \n", 155 | " \n", 156 | " \n", 157 | " \n", 158 | " \n", 159 | " \n", 160 | " \n", 161 | " \n", 162 | " \n", 163 | " \n", 164 | " \n", 165 | " \n", 166 | " \n", 167 | " \n", 168 | " \n", 169 | " \n", 170 | " \n", 171 | " \n", 172 | " \n", 173 | " \n", 174 | " \n", 175 | " \n", 176 | " \n", 177 | " \n", 178 | " \n", 179 | " \n", 180 | " \n", 181 | " \n", 182 | " \n", 183 | " \n", 184 | " \n", 185 | " \n", 186 | " \n", 187 | " \n", 188 | " \n", 189 | " \n", 190 | " \n", 191 | " \n", 192 | " \n", 193 | " \n", 194 | " \n", 195 | " \n", 196 | " \n", 197 | " \n", 198 | " \n", 199 | " \n", 200 | " \n", 201 | " \n", 202 | " \n", 203 | " \n", 204 | " \n", 205 | " \n", 206 | " \n", 207 | " \n", 208 | " \n", 209 | " \n", 210 | " \n", 211 | " \n", 212 | " \n", 213 | " \n", 214 | " \n", 215 | " \n", 216 | " \n", 217 | " \n", 218 | " \n", 219 | " \n", 220 | " \n", 221 | " \n", 222 | " \n", 223 | " \n", 224 | " \n", 225 | " \n", 226 | " \n", 227 | " \n", 228 | " \n", 229 | " \n", 230 | " \n", 231 | " \n", 232 | " \n", 233 | " \n", 234 | " \n", 235 | " \n", 236 | " \n", 237 | " \n", 238 | " \n", 239 | " \n", 240 | " \n", 241 | " \n", 242 | " \n", 243 | " \n", 244 | " \n", 245 | " \n", 246 | " \n", 247 | " \n", 248 | " \n", 249 | " \n", 250 | " \n", 251 | " \n", 252 | " \n", 253 | " \n", 254 | " \n", 255 | " \n", 256 | " \n", 257 | " \n", 258 | " \n", 259 | " \n", 260 | " \n", 261 | " \n", 262 | " \n", 263 | " \n", 264 | " \n", 265 | " \n", 266 | " \n", 267 | " \n", 268 | " \n", 269 | " \n", 270 | " \n", 271 | " \n", 272 | " \n", 273 | " \n", 274 | " \n", 275 | " \n", 276 | " \n", 277 | " \n", 278 | " \n", 279 | " \n", 280 | " \n", 281 | " \n", 282 | " \n", 283 | " \n", 284 | " \n", 285 | " \n", 286 | " \n", 287 | " \n", 288 | " \n", 289 | " \n", 290 | " \n", 291 | " \n", 292 | " \n", 293 | " \n", 294 | " \n", 295 | " \n", 296 | " \n", 297 | " \n", 298 | " \n", 299 | " \n", 300 | " \n", 301 | " \n", 302 | " \n", 303 | " \n", 304 | " \n", 305 | " \n", 306 | " \n", 307 | " \n", 308 | " \n", 309 | " \n", 310 | " \n", 311 | " \n", 312 | " \n", 313 | " \n", 314 | " \n", 315 | " \n", 316 | " \n", 317 | " \n", 318 | " \n", 319 | " \n", 320 | " \n", 321 | "
A85_contactA85_backboneA85_sidechainA85_polarA85_hydrophobicA85_acceptorA85_donorA85_aromaticA85_chargedA86_contact...A528_chargedA529_contactA529_backboneA529_sidechainA529_polarA529_hydrophobicA529_acceptorA529_donorA529_aromaticA529_charged
2H8H_ligand0000000000...0000000000
ZINC039395140000000000...0000000000
ZINC038154990000000000...0000000000
ZINC038154890000000000...0000000000
ZINC039395130000000000...0000000000
ZINC038152400000000000...0000000000
ZINC038154910000000000...0000000000
ZINC038155140000000000...0000000000
ZINC038154900000000000...0000000000
ZINC038155010000000000...0000000000
\n", 322 | "

10 rows × 4005 columns

\n", 323 | "
" 324 | ], 325 | "text/plain": [ 326 | " A85_contact A85_backbone A85_sidechain A85_polar \\\n", 327 | "2H8H_ligand 0 0 0 0 \n", 328 | "ZINC03939514 0 0 0 0 \n", 329 | "ZINC03815499 0 0 0 0 \n", 330 | "ZINC03815489 0 0 0 0 \n", 331 | "ZINC03939513 0 0 0 0 \n", 332 | "ZINC03815240 0 0 0 0 \n", 333 | "ZINC03815491 0 0 0 0 \n", 334 | "ZINC03815514 0 0 0 0 \n", 335 | "ZINC03815490 0 0 0 0 \n", 336 | "ZINC03815501 0 0 0 0 \n", 337 | "\n", 338 | " A85_hydrophobic A85_acceptor A85_donor A85_aromatic \\\n", 339 | "2H8H_ligand 0 0 0 0 \n", 340 | "ZINC03939514 0 0 0 0 \n", 341 | "ZINC03815499 0 0 0 0 \n", 342 | "ZINC03815489 0 0 0 0 \n", 343 | "ZINC03939513 0 0 0 0 \n", 344 | "ZINC03815240 0 0 0 0 \n", 345 | "ZINC03815491 0 0 0 0 \n", 346 | "ZINC03815514 0 0 0 0 \n", 347 | "ZINC03815490 0 0 0 0 \n", 348 | "ZINC03815501 0 0 0 0 \n", 349 | "\n", 350 | " A85_charged A86_contact ... A528_charged \\\n", 351 | "2H8H_ligand 0 0 ... 0 \n", 352 | "ZINC03939514 0 0 ... 0 \n", 353 | "ZINC03815499 0 0 ... 0 \n", 354 | "ZINC03815489 0 0 ... 0 \n", 355 | "ZINC03939513 0 0 ... 0 \n", 356 | "ZINC03815240 0 0 ... 0 \n", 357 | "ZINC03815491 0 0 ... 0 \n", 358 | "ZINC03815514 0 0 ... 0 \n", 359 | "ZINC03815490 0 0 ... 0 \n", 360 | "ZINC03815501 0 0 ... 0 \n", 361 | "\n", 362 | " A529_contact A529_backbone A529_sidechain A529_polar \\\n", 363 | "2H8H_ligand 0 0 0 0 \n", 364 | "ZINC03939514 0 0 0 0 \n", 365 | "ZINC03815499 0 0 0 0 \n", 366 | "ZINC03815489 0 0 0 0 \n", 367 | "ZINC03939513 0 0 0 0 \n", 368 | "ZINC03815240 0 0 0 0 \n", 369 | "ZINC03815491 0 0 0 0 \n", 370 | "ZINC03815514 0 0 0 0 \n", 371 | "ZINC03815490 0 0 0 0 \n", 372 | "ZINC03815501 0 0 0 0 \n", 373 | "\n", 374 | " A529_hydrophobic A529_acceptor A529_donor A529_aromatic \\\n", 375 | "2H8H_ligand 0 0 0 0 \n", 376 | "ZINC03939514 0 0 0 0 \n", 377 | "ZINC03815499 0 0 0 0 \n", 378 | "ZINC03815489 0 0 0 0 \n", 379 | "ZINC03939513 0 0 0 0 \n", 380 | "ZINC03815240 0 0 0 0 \n", 381 | "ZINC03815491 0 0 0 0 \n", 382 | "ZINC03815514 0 0 0 0 \n", 383 | "ZINC03815490 0 0 0 0 \n", 384 | "ZINC03815501 0 0 0 0 \n", 385 | "\n", 386 | " A529_charged \n", 387 | "2H8H_ligand 0 \n", 388 | "ZINC03939514 0 \n", 389 | "ZINC03815499 0 \n", 390 | "ZINC03815489 0 \n", 391 | "ZINC03939513 0 \n", 392 | "ZINC03815240 0 \n", 393 | "ZINC03815491 0 \n", 394 | "ZINC03815514 0 \n", 395 | "ZINC03815490 0 \n", 396 | "ZINC03815501 0 \n", 397 | "\n", 398 | "[10 rows x 4005 columns]" 399 | ] 400 | }, 401 | "execution_count": 14, 402 | "metadata": {}, 403 | "output_type": "execute_result" 404 | } 405 | ], 406 | "source": [ 407 | "df=pd.read_csv('./IFP_example.csv',index_col=0)\n", 408 | "df" 409 | ] 410 | }, 411 | { 412 | "cell_type": "markdown", 413 | "metadata": {}, 414 | "source": [ 415 | "After importing the necessary modules and reading the plain csv file containing the IFPs into a DataFrame, let's apply some filtering rules! First we will filter out the _Any contact_ bit definition (simply labeled _contact_ in the headers)." 416 | ] 417 | }, 418 | { 419 | "cell_type": "code", 420 | "execution_count": 15, 421 | "metadata": {}, 422 | "outputs": [ 423 | { 424 | "data": { 425 | "text/html": [ 426 | "
\n", 427 | "\n", 440 | "\n", 441 | " \n", 442 | " \n", 443 | " \n", 444 | " \n", 445 | " \n", 446 | " \n", 447 | " \n", 448 | " \n", 449 | " \n", 450 | " \n", 451 | " \n", 452 | " \n", 453 | " \n", 454 | " \n", 455 | " \n", 456 | " \n", 457 | " \n", 458 | " \n", 459 | " \n", 460 | " \n", 461 | " \n", 462 | " \n", 463 | " \n", 464 | " \n", 465 | " \n", 466 | " \n", 467 | " \n", 468 | " \n", 469 | " \n", 470 | " \n", 471 | " \n", 472 | " \n", 473 | " \n", 474 | " \n", 475 | " \n", 476 | " \n", 477 | " \n", 478 | " \n", 479 | " \n", 480 | " \n", 481 | " \n", 482 | " \n", 483 | " \n", 484 | " \n", 485 | " \n", 486 | " \n", 487 | " \n", 488 | " \n", 489 | " \n", 490 | " \n", 491 | " \n", 492 | " \n", 493 | " \n", 494 | " \n", 495 | " \n", 496 | " \n", 497 | " \n", 498 | " \n", 499 | " \n", 500 | " \n", 501 | " \n", 502 | " \n", 503 | " \n", 504 | " \n", 505 | " \n", 506 | " \n", 507 | " \n", 508 | " \n", 509 | " \n", 510 | " \n", 511 | " \n", 512 | " \n", 513 | " \n", 514 | " \n", 515 | " \n", 516 | " \n", 517 | " \n", 518 | " \n", 519 | " \n", 520 | " \n", 521 | " \n", 522 | " \n", 523 | " \n", 524 | " \n", 525 | " \n", 526 | " \n", 527 | " \n", 528 | " \n", 529 | " \n", 530 | " \n", 531 | " \n", 532 | " \n", 533 | " \n", 534 | " \n", 535 | " \n", 536 | " \n", 537 | " \n", 538 | " \n", 539 | " \n", 540 | " \n", 541 | " \n", 542 | " \n", 543 | " \n", 544 | " \n", 545 | " \n", 546 | " \n", 547 | " \n", 548 | " \n", 549 | " \n", 550 | " \n", 551 | " \n", 552 | " \n", 553 | " \n", 554 | " \n", 555 | " \n", 556 | " \n", 557 | " \n", 558 | " \n", 559 | " \n", 560 | " \n", 561 | " \n", 562 | " \n", 563 | " \n", 564 | " \n", 565 | " \n", 566 | " \n", 567 | " \n", 568 | " \n", 569 | " \n", 570 | " \n", 571 | " \n", 572 | " \n", 573 | " \n", 574 | " \n", 575 | " \n", 576 | " \n", 577 | " \n", 578 | " \n", 579 | " \n", 580 | " \n", 581 | " \n", 582 | " \n", 583 | " \n", 584 | " \n", 585 | " \n", 586 | " \n", 587 | " \n", 588 | " \n", 589 | " \n", 590 | " \n", 591 | " \n", 592 | " \n", 593 | " \n", 594 | " \n", 595 | " \n", 596 | " \n", 597 | " \n", 598 | " \n", 599 | " \n", 600 | " \n", 601 | " \n", 602 | " \n", 603 | " \n", 604 | " \n", 605 | " \n", 606 | " \n", 607 | " \n", 608 | " \n", 609 | " \n", 610 | " \n", 611 | " \n", 612 | " \n", 613 | " \n", 614 | " \n", 615 | " \n", 616 | " \n", 617 | " \n", 618 | " \n", 619 | " \n", 620 | " \n", 621 | " \n", 622 | " \n", 623 | " \n", 624 | " \n", 625 | " \n", 626 | " \n", 627 | " \n", 628 | " \n", 629 | " \n", 630 | " \n", 631 | " \n", 632 | " \n", 633 | " \n", 634 | " \n", 635 | " \n", 636 | " \n", 637 | " \n", 638 | " \n", 639 | " \n", 640 | " \n", 641 | " \n", 642 | " \n", 643 | " \n", 644 | " \n", 645 | " \n", 646 | " \n", 647 | " \n", 648 | " \n", 649 | " \n", 650 | " \n", 651 | " \n", 652 | " \n", 653 | " \n", 654 | " \n", 655 | " \n", 656 | " \n", 657 | " \n", 658 | " \n", 659 | " \n", 660 | " \n", 661 | " \n", 662 | " \n", 663 | " \n", 664 | " \n", 665 | " \n", 666 | " \n", 667 | " \n", 668 | " \n", 669 | " \n", 670 | " \n", 671 | " \n", 672 | " \n", 673 | " \n", 674 | " \n", 675 | " \n", 676 | " \n", 677 | " \n", 678 | " \n", 679 | " \n", 680 | " \n", 681 | " \n", 682 | " \n", 683 | " \n", 684 | " \n", 685 | " \n", 686 | " \n", 687 | " \n", 688 | " \n", 689 | " \n", 690 | " \n", 691 | " \n", 692 | " \n", 693 | " \n", 694 | " \n", 695 | " \n", 696 | " \n", 697 | " \n", 698 | " \n", 699 | " \n", 700 | " \n", 701 | " \n", 702 | " \n", 703 | " \n", 704 | " \n", 705 | " \n", 706 | " \n", 707 | " \n", 708 | " \n", 709 | "
A85_backboneA85_sidechainA85_polarA85_hydrophobicA85_acceptorA85_donorA85_aromaticA85_chargedA86_backboneA86_sidechain...A528_aromaticA528_chargedA529_backboneA529_sidechainA529_polarA529_hydrophobicA529_acceptorA529_donorA529_aromaticA529_charged
2H8H_ligand0000000000...0000000000
ZINC039395140000000000...0000000000
ZINC038154990000000000...0000000000
ZINC038154890000000000...0000000000
ZINC039395130000000000...0000000000
ZINC038152400000000000...0000000000
ZINC038154910000000000...0000000000
ZINC038155140000000000...0000000000
ZINC038154900000000000...0000000000
ZINC038155010000000000...0000000000
\n", 710 | "

10 rows × 3560 columns

\n", 711 | "
" 712 | ], 713 | "text/plain": [ 714 | " A85_backbone A85_sidechain A85_polar A85_hydrophobic \\\n", 715 | "2H8H_ligand 0 0 0 0 \n", 716 | "ZINC03939514 0 0 0 0 \n", 717 | "ZINC03815499 0 0 0 0 \n", 718 | "ZINC03815489 0 0 0 0 \n", 719 | "ZINC03939513 0 0 0 0 \n", 720 | "ZINC03815240 0 0 0 0 \n", 721 | "ZINC03815491 0 0 0 0 \n", 722 | "ZINC03815514 0 0 0 0 \n", 723 | "ZINC03815490 0 0 0 0 \n", 724 | "ZINC03815501 0 0 0 0 \n", 725 | "\n", 726 | " A85_acceptor A85_donor A85_aromatic A85_charged \\\n", 727 | "2H8H_ligand 0 0 0 0 \n", 728 | "ZINC03939514 0 0 0 0 \n", 729 | "ZINC03815499 0 0 0 0 \n", 730 | "ZINC03815489 0 0 0 0 \n", 731 | "ZINC03939513 0 0 0 0 \n", 732 | "ZINC03815240 0 0 0 0 \n", 733 | "ZINC03815491 0 0 0 0 \n", 734 | "ZINC03815514 0 0 0 0 \n", 735 | "ZINC03815490 0 0 0 0 \n", 736 | "ZINC03815501 0 0 0 0 \n", 737 | "\n", 738 | " A86_backbone A86_sidechain ... A528_aromatic \\\n", 739 | "2H8H_ligand 0 0 ... 0 \n", 740 | "ZINC03939514 0 0 ... 0 \n", 741 | "ZINC03815499 0 0 ... 0 \n", 742 | "ZINC03815489 0 0 ... 0 \n", 743 | "ZINC03939513 0 0 ... 0 \n", 744 | "ZINC03815240 0 0 ... 0 \n", 745 | "ZINC03815491 0 0 ... 0 \n", 746 | "ZINC03815514 0 0 ... 0 \n", 747 | "ZINC03815490 0 0 ... 0 \n", 748 | "ZINC03815501 0 0 ... 0 \n", 749 | "\n", 750 | " A528_charged A529_backbone A529_sidechain A529_polar \\\n", 751 | "2H8H_ligand 0 0 0 0 \n", 752 | "ZINC03939514 0 0 0 0 \n", 753 | "ZINC03815499 0 0 0 0 \n", 754 | "ZINC03815489 0 0 0 0 \n", 755 | "ZINC03939513 0 0 0 0 \n", 756 | "ZINC03815240 0 0 0 0 \n", 757 | "ZINC03815491 0 0 0 0 \n", 758 | "ZINC03815514 0 0 0 0 \n", 759 | "ZINC03815490 0 0 0 0 \n", 760 | "ZINC03815501 0 0 0 0 \n", 761 | "\n", 762 | " A529_hydrophobic A529_acceptor A529_donor A529_aromatic \\\n", 763 | "2H8H_ligand 0 0 0 0 \n", 764 | "ZINC03939514 0 0 0 0 \n", 765 | "ZINC03815499 0 0 0 0 \n", 766 | "ZINC03815489 0 0 0 0 \n", 767 | "ZINC03939513 0 0 0 0 \n", 768 | "ZINC03815240 0 0 0 0 \n", 769 | "ZINC03815491 0 0 0 0 \n", 770 | "ZINC03815514 0 0 0 0 \n", 771 | "ZINC03815490 0 0 0 0 \n", 772 | "ZINC03815501 0 0 0 0 \n", 773 | "\n", 774 | " A529_charged \n", 775 | "2H8H_ligand 0 \n", 776 | "ZINC03939514 0 \n", 777 | "ZINC03815499 0 \n", 778 | "ZINC03815489 0 \n", 779 | "ZINC03939513 0 \n", 780 | "ZINC03815240 0 \n", 781 | "ZINC03815491 0 \n", 782 | "ZINC03815514 0 \n", 783 | "ZINC03815490 0 \n", 784 | "ZINC03815501 0 \n", 785 | "\n", 786 | "[10 rows x 3560 columns]" 787 | ] 788 | }, 789 | "execution_count": 15, 790 | "metadata": {}, 791 | "output_type": "execute_result" 792 | } 793 | ], 794 | "source": [ 795 | "df=filters.excludeBits(df,['contact'])\n", 796 | "df" 797 | ] 798 | }, 799 | { 800 | "cell_type": "markdown", 801 | "metadata": {}, 802 | "source": [ 803 | "Next, we will get rid of the large blocks of zeros by applying the interaction-based filtering rule." 804 | ] 805 | }, 806 | { 807 | "cell_type": "code", 808 | "execution_count": 16, 809 | "metadata": {}, 810 | "outputs": [ 811 | { 812 | "data": { 813 | "text/html": [ 814 | "
\n", 815 | "\n", 828 | "\n", 829 | " \n", 830 | " \n", 831 | " \n", 832 | " \n", 833 | " \n", 834 | " \n", 835 | " \n", 836 | " \n", 837 | " \n", 838 | " \n", 839 | " \n", 840 | " \n", 841 | " \n", 842 | " \n", 843 | " \n", 844 | " \n", 845 | " \n", 846 | " \n", 847 | " \n", 848 | " \n", 849 | " \n", 850 | " \n", 851 | " \n", 852 | " \n", 853 | " \n", 854 | " \n", 855 | " \n", 856 | " \n", 857 | " \n", 858 | " \n", 859 | " \n", 860 | " \n", 861 | " \n", 862 | " \n", 863 | " \n", 864 | " \n", 865 | " \n", 866 | " \n", 867 | " \n", 868 | " \n", 869 | " \n", 870 | " \n", 871 | " \n", 872 | " \n", 873 | " \n", 874 | " \n", 875 | " \n", 876 | " \n", 877 | " \n", 878 | " \n", 879 | " \n", 880 | " \n", 881 | " \n", 882 | " \n", 883 | " \n", 884 | " \n", 885 | " \n", 886 | " \n", 887 | " \n", 888 | " \n", 889 | " \n", 890 | " \n", 891 | " \n", 892 | " \n", 893 | " \n", 894 | " \n", 895 | " \n", 896 | " \n", 897 | " \n", 898 | " \n", 899 | " \n", 900 | " \n", 901 | " \n", 902 | " \n", 903 | " \n", 904 | " \n", 905 | " \n", 906 | " \n", 907 | " \n", 908 | " \n", 909 | " \n", 910 | " \n", 911 | " \n", 912 | " \n", 913 | " \n", 914 | " \n", 915 | " \n", 916 | " \n", 917 | " \n", 918 | " \n", 919 | " \n", 920 | " \n", 921 | " \n", 922 | " \n", 923 | " \n", 924 | " \n", 925 | " \n", 926 | " \n", 927 | " \n", 928 | " \n", 929 | " \n", 930 | " \n", 931 | " \n", 932 | " \n", 933 | " \n", 934 | " \n", 935 | " \n", 936 | " \n", 937 | " \n", 938 | " \n", 939 | " \n", 940 | " \n", 941 | " \n", 942 | " \n", 943 | " \n", 944 | " \n", 945 | " \n", 946 | " \n", 947 | " \n", 948 | " \n", 949 | " \n", 950 | " \n", 951 | " \n", 952 | " \n", 953 | " \n", 954 | " \n", 955 | " \n", 956 | " \n", 957 | " \n", 958 | " \n", 959 | " \n", 960 | " \n", 961 | " \n", 962 | " \n", 963 | " \n", 964 | " \n", 965 | " \n", 966 | " \n", 967 | " \n", 968 | " \n", 969 | " \n", 970 | " \n", 971 | " \n", 972 | " \n", 973 | " \n", 974 | " \n", 975 | " \n", 976 | " \n", 977 | " \n", 978 | " \n", 979 | " \n", 980 | " \n", 981 | " \n", 982 | " \n", 983 | " \n", 984 | " \n", 985 | " \n", 986 | " \n", 987 | " \n", 988 | " \n", 989 | " \n", 990 | " \n", 991 | " \n", 992 | " \n", 993 | " \n", 994 | " \n", 995 | " \n", 996 | " \n", 997 | " \n", 998 | " \n", 999 | " \n", 1000 | " \n", 1001 | " \n", 1002 | " \n", 1003 | " \n", 1004 | " \n", 1005 | " \n", 1006 | " \n", 1007 | " \n", 1008 | " \n", 1009 | " \n", 1010 | " \n", 1011 | " \n", 1012 | " \n", 1013 | " \n", 1014 | " \n", 1015 | " \n", 1016 | " \n", 1017 | " \n", 1018 | " \n", 1019 | " \n", 1020 | " \n", 1021 | " \n", 1022 | " \n", 1023 | " \n", 1024 | " \n", 1025 | " \n", 1026 | " \n", 1027 | " \n", 1028 | " \n", 1029 | " \n", 1030 | " \n", 1031 | " \n", 1032 | " \n", 1033 | " \n", 1034 | " \n", 1035 | " \n", 1036 | " \n", 1037 | " \n", 1038 | " \n", 1039 | " \n", 1040 | " \n", 1041 | " \n", 1042 | " \n", 1043 | " \n", 1044 | " \n", 1045 | " \n", 1046 | " \n", 1047 | " \n", 1048 | " \n", 1049 | " \n", 1050 | " \n", 1051 | " \n", 1052 | " \n", 1053 | " \n", 1054 | " \n", 1055 | " \n", 1056 | " \n", 1057 | " \n", 1058 | " \n", 1059 | " \n", 1060 | " \n", 1061 | " \n", 1062 | " \n", 1063 | " \n", 1064 | " \n", 1065 | " \n", 1066 | " \n", 1067 | " \n", 1068 | " \n", 1069 | " \n", 1070 | " \n", 1071 | " \n", 1072 | " \n", 1073 | " \n", 1074 | " \n", 1075 | " \n", 1076 | " \n", 1077 | " \n", 1078 | " \n", 1079 | " \n", 1080 | " \n", 1081 | " \n", 1082 | " \n", 1083 | " \n", 1084 | " \n", 1085 | " \n", 1086 | " \n", 1087 | " \n", 1088 | " \n", 1089 | " \n", 1090 | " \n", 1091 | " \n", 1092 | " \n", 1093 | " \n", 1094 | " \n", 1095 | " \n", 1096 | " \n", 1097 | "
A273_backboneA273_sidechainA273_hydrophobicA281_sidechainA281_hydrophobicA293_backboneA293_sidechainA293_hydrophobicA294_backboneA295_backbone...A404_backboneA404_sidechainA404_polarA404_chargedA405_backboneA405_sidechainA405_hydrophobicA405_aromaticA407_sidechainA407_hydrophobic
2H8H_ligand1111111111...1111000000
ZINC039395141111101100...1111111100
ZINC038154990111111111...1111000000
ZINC038154891111111111...1111000000
ZINC039395131111101100...1111100011
ZINC038152401111111111...1111000000
ZINC038154911111111111...1111000000
ZINC038155141111111111...1111000000
ZINC038154901111111111...1111000000
ZINC038155011111111111...1111000000
\n", 1098 | "

10 rows × 62 columns

\n", 1099 | "
" 1100 | ], 1101 | "text/plain": [ 1102 | " A273_backbone A273_sidechain A273_hydrophobic A281_sidechain \\\n", 1103 | "2H8H_ligand 1 1 1 1 \n", 1104 | "ZINC03939514 1 1 1 1 \n", 1105 | "ZINC03815499 0 1 1 1 \n", 1106 | "ZINC03815489 1 1 1 1 \n", 1107 | "ZINC03939513 1 1 1 1 \n", 1108 | "ZINC03815240 1 1 1 1 \n", 1109 | "ZINC03815491 1 1 1 1 \n", 1110 | "ZINC03815514 1 1 1 1 \n", 1111 | "ZINC03815490 1 1 1 1 \n", 1112 | "ZINC03815501 1 1 1 1 \n", 1113 | "\n", 1114 | " A281_hydrophobic A293_backbone A293_sidechain \\\n", 1115 | "2H8H_ligand 1 1 1 \n", 1116 | "ZINC03939514 1 0 1 \n", 1117 | "ZINC03815499 1 1 1 \n", 1118 | "ZINC03815489 1 1 1 \n", 1119 | "ZINC03939513 1 0 1 \n", 1120 | "ZINC03815240 1 1 1 \n", 1121 | "ZINC03815491 1 1 1 \n", 1122 | "ZINC03815514 1 1 1 \n", 1123 | "ZINC03815490 1 1 1 \n", 1124 | "ZINC03815501 1 1 1 \n", 1125 | "\n", 1126 | " A293_hydrophobic A294_backbone A295_backbone \\\n", 1127 | "2H8H_ligand 1 1 1 \n", 1128 | "ZINC03939514 1 0 0 \n", 1129 | "ZINC03815499 1 1 1 \n", 1130 | "ZINC03815489 1 1 1 \n", 1131 | "ZINC03939513 1 0 0 \n", 1132 | "ZINC03815240 1 1 1 \n", 1133 | "ZINC03815491 1 1 1 \n", 1134 | "ZINC03815514 1 1 1 \n", 1135 | "ZINC03815490 1 1 1 \n", 1136 | "ZINC03815501 1 1 1 \n", 1137 | "\n", 1138 | " ... A404_backbone A404_sidechain A404_polar \\\n", 1139 | "2H8H_ligand ... 1 1 1 \n", 1140 | "ZINC03939514 ... 1 1 1 \n", 1141 | "ZINC03815499 ... 1 1 1 \n", 1142 | "ZINC03815489 ... 1 1 1 \n", 1143 | "ZINC03939513 ... 1 1 1 \n", 1144 | "ZINC03815240 ... 1 1 1 \n", 1145 | "ZINC03815491 ... 1 1 1 \n", 1146 | "ZINC03815514 ... 1 1 1 \n", 1147 | "ZINC03815490 ... 1 1 1 \n", 1148 | "ZINC03815501 ... 1 1 1 \n", 1149 | "\n", 1150 | " A404_charged A405_backbone A405_sidechain A405_hydrophobic \\\n", 1151 | "2H8H_ligand 1 0 0 0 \n", 1152 | "ZINC03939514 1 1 1 1 \n", 1153 | "ZINC03815499 1 0 0 0 \n", 1154 | "ZINC03815489 1 0 0 0 \n", 1155 | "ZINC03939513 1 1 0 0 \n", 1156 | "ZINC03815240 1 0 0 0 \n", 1157 | "ZINC03815491 1 0 0 0 \n", 1158 | "ZINC03815514 1 0 0 0 \n", 1159 | "ZINC03815490 1 0 0 0 \n", 1160 | "ZINC03815501 1 0 0 0 \n", 1161 | "\n", 1162 | " A405_aromatic A407_sidechain A407_hydrophobic \n", 1163 | "2H8H_ligand 0 0 0 \n", 1164 | "ZINC03939514 1 0 0 \n", 1165 | "ZINC03815499 0 0 0 \n", 1166 | "ZINC03815489 0 0 0 \n", 1167 | "ZINC03939513 0 1 1 \n", 1168 | "ZINC03815240 0 0 0 \n", 1169 | "ZINC03815491 0 0 0 \n", 1170 | "ZINC03815514 0 0 0 \n", 1171 | "ZINC03815490 0 0 0 \n", 1172 | "ZINC03815501 0 0 0 \n", 1173 | "\n", 1174 | "[10 rows x 62 columns]" 1175 | ] 1176 | }, 1177 | "execution_count": 16, 1178 | "metadata": {}, 1179 | "output_type": "execute_result" 1180 | } 1181 | ], 1182 | "source": [ 1183 | "df=filters.filterInteractions(df)\n", 1184 | "df" 1185 | ] 1186 | }, 1187 | { 1188 | "cell_type": "markdown", 1189 | "metadata": {}, 1190 | "source": [ 1191 | "We can calculate the similarity of two fingerprints with any of the 51 metrics.\n", 1192 | "- The abbreviations and definitions of the similarity metrics are published in Table 1 of [Todeschini et al, _J Chem Inf Model_ 52(11):2884-2901, **2012**](https://pubs.acs.org/doi/10.1021/ci300261r) and as a supplementary table in our recent, open access work: [Rácz et al, _Metabolomics_ 14:29, **2018**](https://link.springer.com/article/10.1007/s11306-018-1327-y)" 1193 | ] 1194 | }, 1195 | { 1196 | "cell_type": "code", 1197 | "execution_count": 19, 1198 | "metadata": {}, 1199 | "outputs": [ 1200 | { 1201 | "data": { 1202 | "text/plain": [ 1203 | "[0.5571428571428572, 0.7741935483870968]" 1204 | ] 1205 | }, 1206 | "execution_count": 19, 1207 | "metadata": {}, 1208 | "output_type": "execute_result" 1209 | } 1210 | ], 1211 | "source": [ 1212 | "a=fps.similarity(df.iloc[0],df.iloc[1],metric='RG',scale=True)\n", 1213 | "b=fps.similarity(df.loc['2H8H_ligand'],df.loc['ZINC03815240'],metric='SM',scale=False)\n", 1214 | "\n", 1215 | "[a,b]" 1216 | ] 1217 | }, 1218 | { 1219 | "cell_type": "markdown", 1220 | "metadata": {}, 1221 | "source": [ 1222 | "We can also iterate over all similarity measures, these are stored in the lists *metrics\\_redundant* (51 measures from Todeschini et al, _JCIM_, 2012) and _metrics_ (44 measures, the rest are removed as they give identical results to one of the 44)." 1223 | ] 1224 | }, 1225 | { 1226 | "cell_type": "code", 1227 | "execution_count": 25, 1228 | "metadata": {}, 1229 | "outputs": [], 1230 | "source": [ 1231 | "sim=[]\n", 1232 | "for metric in fps.metrics:\n", 1233 | " sim.append(fps.similarity(df.iloc[0],df.iloc[1],metric=metric,scale=True))" 1234 | ] 1235 | }, 1236 | { 1237 | "cell_type": "markdown", 1238 | "metadata": {}, 1239 | "source": [ 1240 | "Or we can iterate over the similarity measures, as well as the query molecules to provide a summarizing table with the similarities of each molecule to the reference ligand, according to each metric." 1241 | ] 1242 | }, 1243 | { 1244 | "cell_type": "code", 1245 | "execution_count": 32, 1246 | "metadata": {}, 1247 | "outputs": [ 1248 | { 1249 | "data": { 1250 | "text/html": [ 1251 | "
\n", 1252 | "\n", 1265 | "\n", 1266 | " \n", 1267 | " \n", 1268 | " \n", 1269 | " \n", 1270 | " \n", 1271 | " \n", 1272 | " \n", 1273 | " \n", 1274 | " \n", 1275 | " \n", 1276 | " \n", 1277 | " \n", 1278 | " \n", 1279 | " \n", 1280 | " \n", 1281 | " \n", 1282 | " \n", 1283 | " \n", 1284 | " \n", 1285 | " \n", 1286 | " \n", 1287 | " \n", 1288 | " \n", 1289 | " \n", 1290 | " \n", 1291 | " \n", 1292 | " \n", 1293 | " \n", 1294 | " \n", 1295 | " \n", 1296 | " \n", 1297 | " \n", 1298 | " \n", 1299 | " \n", 1300 | " \n", 1301 | " \n", 1302 | " \n", 1303 | " \n", 1304 | " \n", 1305 | " \n", 1306 | " \n", 1307 | " \n", 1308 | " \n", 1309 | " \n", 1310 | " \n", 1311 | " \n", 1312 | " \n", 1313 | " \n", 1314 | " \n", 1315 | " \n", 1316 | " \n", 1317 | " \n", 1318 | " \n", 1319 | " \n", 1320 | " \n", 1321 | " \n", 1322 | " \n", 1323 | " \n", 1324 | " \n", 1325 | " \n", 1326 | " \n", 1327 | " \n", 1328 | " \n", 1329 | " \n", 1330 | " \n", 1331 | " \n", 1332 | " \n", 1333 | " \n", 1334 | " \n", 1335 | " \n", 1336 | " \n", 1337 | " \n", 1338 | " \n", 1339 | " \n", 1340 | " \n", 1341 | " \n", 1342 | " \n", 1343 | " \n", 1344 | " \n", 1345 | " \n", 1346 | " \n", 1347 | " \n", 1348 | " \n", 1349 | " \n", 1350 | " \n", 1351 | " \n", 1352 | " \n", 1353 | " \n", 1354 | " \n", 1355 | " \n", 1356 | " \n", 1357 | " \n", 1358 | " \n", 1359 | " \n", 1360 | " \n", 1361 | " \n", 1362 | " \n", 1363 | " \n", 1364 | " \n", 1365 | " \n", 1366 | " \n", 1367 | " \n", 1368 | " \n", 1369 | " \n", 1370 | " \n", 1371 | " \n", 1372 | " \n", 1373 | " \n", 1374 | " \n", 1375 | " \n", 1376 | " \n", 1377 | " \n", 1378 | " \n", 1379 | " \n", 1380 | " \n", 1381 | " \n", 1382 | " \n", 1383 | " \n", 1384 | " \n", 1385 | " \n", 1386 | " \n", 1387 | " \n", 1388 | " \n", 1389 | " \n", 1390 | " \n", 1391 | " \n", 1392 | " \n", 1393 | " \n", 1394 | " \n", 1395 | " \n", 1396 | " \n", 1397 | " \n", 1398 | " \n", 1399 | " \n", 1400 | " \n", 1401 | " \n", 1402 | " \n", 1403 | " \n", 1404 | " \n", 1405 | " \n", 1406 | " \n", 1407 | " \n", 1408 | " \n", 1409 | " \n", 1410 | " \n", 1411 | " \n", 1412 | " \n", 1413 | " \n", 1414 | " \n", 1415 | " \n", 1416 | " \n", 1417 | " \n", 1418 | " \n", 1419 | " \n", 1420 | " \n", 1421 | " \n", 1422 | " \n", 1423 | " \n", 1424 | " \n", 1425 | " \n", 1426 | " \n", 1427 | " \n", 1428 | " \n", 1429 | " \n", 1430 | " \n", 1431 | " \n", 1432 | " \n", 1433 | " \n", 1434 | " \n", 1435 | " \n", 1436 | " \n", 1437 | " \n", 1438 | " \n", 1439 | " \n", 1440 | " \n", 1441 | " \n", 1442 | " \n", 1443 | " \n", 1444 | " \n", 1445 | " \n", 1446 | " \n", 1447 | " \n", 1448 | " \n", 1449 | " \n", 1450 | " \n", 1451 | " \n", 1452 | " \n", 1453 | " \n", 1454 | " \n", 1455 | " \n", 1456 | " \n", 1457 | " \n", 1458 | " \n", 1459 | " \n", 1460 | " \n", 1461 | " \n", 1462 | " \n", 1463 | " \n", 1464 | " \n", 1465 | " \n", 1466 | " \n", 1467 | " \n", 1468 | " \n", 1469 | " \n", 1470 | " \n", 1471 | " \n", 1472 | " \n", 1473 | " \n", 1474 | " \n", 1475 | " \n", 1476 | " \n", 1477 | " \n", 1478 | " \n", 1479 | " \n", 1480 | " \n", 1481 | " \n", 1482 | " \n", 1483 | " \n", 1484 | " \n", 1485 | " \n", 1486 | " \n", 1487 | " \n", 1488 | " \n", 1489 | " \n", 1490 | " \n", 1491 | " \n", 1492 | " \n", 1493 | " \n", 1494 | " \n", 1495 | " \n", 1496 | " \n", 1497 | " \n", 1498 | " \n", 1499 | " \n", 1500 | " \n", 1501 | " \n", 1502 | " \n", 1503 | " \n", 1504 | " \n", 1505 | " \n", 1506 | " \n", 1507 | " \n", 1508 | " \n", 1509 | " \n", 1510 | "
SMRTJTGleRRForSimBBDKBUB...Pe1Pe2MPHLCT1CT2CT3CT4CT5AC
ZINC039395140.6129030.4418600.5555560.7142860.4838710.5148740.7894740.6521740.7175470.654636...0.5614040.5760870.5679610.2446240.8842490.2230820.8288380.8569260.5454930.572502
ZINC038154990.7419350.5897440.6595740.7948720.5000000.6322370.8157890.7750000.7951330.766641...0.7203950.7284090.7243300.4666900.9292840.3161670.8365010.8952610.6445110.660770
ZINC038154890.7580650.6103900.6808510.8101270.5161290.6572530.8421050.7804880.8107110.782321...0.7335530.7473870.7402710.4858440.9343650.3307990.8439280.9032100.6578490.672628
ZINC039395130.6774190.5121950.6078430.7560980.5000000.5747610.8157890.7045450.7581300.712090...0.6370610.6578280.6467140.3456570.9078150.2651650.8365010.8771250.5955760.615464
ZINC038152400.7741940.6315790.7083330.8292680.5483870.6913880.8947370.7727270.8314970.799477...0.7390350.7752530.7558690.4929440.9393420.3463770.8581300.9135440.6786240.684758
ZINC038154910.7580650.6103900.6808510.8101270.5161290.6572530.8421050.7804880.8107110.782321...0.7335530.7473870.7402710.4858440.9343650.3307990.8439280.9032100.6578490.672628
ZINC038155140.7580650.6103900.6808510.8101270.5161290.6572530.8421050.7804880.8107110.782321...0.7335530.7473870.7402710.4858440.9343650.3307990.8439280.9032100.6578490.672628
ZINC038154900.7580650.6103900.6808510.8101270.5161290.6572530.8421050.7804880.8107110.782321...0.7335530.7473870.7402710.4858440.9343650.3307990.8439280.9032100.6578490.672628
ZINC038155010.7580650.6103900.6808510.8101270.5161290.6572530.8421050.7804880.8107110.782321...0.7335530.7473870.7402710.4858440.9343650.3307990.8439280.9032100.6578490.672628
\n", 1511 | "

9 rows × 44 columns

\n", 1512 | "
" 1513 | ], 1514 | "text/plain": [ 1515 | " SM RT JT Gle RR For \\\n", 1516 | "ZINC03939514 0.612903 0.441860 0.555556 0.714286 0.483871 0.514874 \n", 1517 | "ZINC03815499 0.741935 0.589744 0.659574 0.794872 0.500000 0.632237 \n", 1518 | "ZINC03815489 0.758065 0.610390 0.680851 0.810127 0.516129 0.657253 \n", 1519 | "ZINC03939513 0.677419 0.512195 0.607843 0.756098 0.500000 0.574761 \n", 1520 | "ZINC03815240 0.774194 0.631579 0.708333 0.829268 0.548387 0.691388 \n", 1521 | "ZINC03815491 0.758065 0.610390 0.680851 0.810127 0.516129 0.657253 \n", 1522 | "ZINC03815514 0.758065 0.610390 0.680851 0.810127 0.516129 0.657253 \n", 1523 | "ZINC03815490 0.758065 0.610390 0.680851 0.810127 0.516129 0.657253 \n", 1524 | "ZINC03815501 0.758065 0.610390 0.680851 0.810127 0.516129 0.657253 \n", 1525 | "\n", 1526 | " Sim BB DK BUB ... Pe1 \\\n", 1527 | "ZINC03939514 0.789474 0.652174 0.717547 0.654636 ... 0.561404 \n", 1528 | "ZINC03815499 0.815789 0.775000 0.795133 0.766641 ... 0.720395 \n", 1529 | "ZINC03815489 0.842105 0.780488 0.810711 0.782321 ... 0.733553 \n", 1530 | "ZINC03939513 0.815789 0.704545 0.758130 0.712090 ... 0.637061 \n", 1531 | "ZINC03815240 0.894737 0.772727 0.831497 0.799477 ... 0.739035 \n", 1532 | "ZINC03815491 0.842105 0.780488 0.810711 0.782321 ... 0.733553 \n", 1533 | "ZINC03815514 0.842105 0.780488 0.810711 0.782321 ... 0.733553 \n", 1534 | "ZINC03815490 0.842105 0.780488 0.810711 0.782321 ... 0.733553 \n", 1535 | "ZINC03815501 0.842105 0.780488 0.810711 0.782321 ... 0.733553 \n", 1536 | "\n", 1537 | " Pe2 MP HL CT1 CT2 CT3 \\\n", 1538 | "ZINC03939514 0.576087 0.567961 0.244624 0.884249 0.223082 0.828838 \n", 1539 | "ZINC03815499 0.728409 0.724330 0.466690 0.929284 0.316167 0.836501 \n", 1540 | "ZINC03815489 0.747387 0.740271 0.485844 0.934365 0.330799 0.843928 \n", 1541 | "ZINC03939513 0.657828 0.646714 0.345657 0.907815 0.265165 0.836501 \n", 1542 | "ZINC03815240 0.775253 0.755869 0.492944 0.939342 0.346377 0.858130 \n", 1543 | "ZINC03815491 0.747387 0.740271 0.485844 0.934365 0.330799 0.843928 \n", 1544 | "ZINC03815514 0.747387 0.740271 0.485844 0.934365 0.330799 0.843928 \n", 1545 | "ZINC03815490 0.747387 0.740271 0.485844 0.934365 0.330799 0.843928 \n", 1546 | "ZINC03815501 0.747387 0.740271 0.485844 0.934365 0.330799 0.843928 \n", 1547 | "\n", 1548 | " CT4 CT5 AC \n", 1549 | "ZINC03939514 0.856926 0.545493 0.572502 \n", 1550 | "ZINC03815499 0.895261 0.644511 0.660770 \n", 1551 | "ZINC03815489 0.903210 0.657849 0.672628 \n", 1552 | "ZINC03939513 0.877125 0.595576 0.615464 \n", 1553 | "ZINC03815240 0.913544 0.678624 0.684758 \n", 1554 | "ZINC03815491 0.903210 0.657849 0.672628 \n", 1555 | "ZINC03815514 0.903210 0.657849 0.672628 \n", 1556 | "ZINC03815490 0.903210 0.657849 0.672628 \n", 1557 | "ZINC03815501 0.903210 0.657849 0.672628 \n", 1558 | "\n", 1559 | "[9 rows x 44 columns]" 1560 | ] 1561 | }, 1562 | "execution_count": 32, 1563 | "metadata": {}, 1564 | "output_type": "execute_result" 1565 | } 1566 | ], 1567 | "source": [ 1568 | "results=pd.DataFrame(index=df.index[1:])\n", 1569 | "\n", 1570 | "ref=df.iloc[0].values\n", 1571 | "for metric in fps.metrics:\n", 1572 | " dm=[]\n", 1573 | " for query in df.index[1:]:\n", 1574 | " dm.append(fps.similarity(ref,df.loc[query].values,metric=metric,scale=True))\n", 1575 | " results[metric]=pd.Series(dm, index=df.index[1:], name=metric)\n", 1576 | " \n", 1577 | "results" 1578 | ] 1579 | }, 1580 | { 1581 | "cell_type": "code", 1582 | "execution_count": null, 1583 | "metadata": { 1584 | "collapsed": true 1585 | }, 1586 | "outputs": [], 1587 | "source": [] 1588 | } 1589 | ], 1590 | "metadata": { 1591 | "kernelspec": { 1592 | "display_name": "Python 3", 1593 | "language": "python", 1594 | "name": "python3" 1595 | }, 1596 | "language_info": { 1597 | "codemirror_mode": { 1598 | "name": "ipython", 1599 | "version": 3 1600 | }, 1601 | "file_extension": ".py", 1602 | "mimetype": "text/x-python", 1603 | "name": "python", 1604 | "nbconvert_exporter": "python", 1605 | "pygments_lexer": "ipython3", 1606 | "version": "3.6.5" 1607 | } 1608 | }, 1609 | "nbformat": 4, 1610 | "nbformat_minor": 1 1611 | } 1612 | -------------------------------------------------------------------------------- /filters.py: -------------------------------------------------------------------------------- 1 | ''' FPKit. Filtering rules implemented for interaction fingerprints. Note that the current implementation relies on the use of pandas, and - for filterResidues - Schrödinger-style column headers, such as: A523_charged 2 | ''' 3 | 4 | def excludeBits(dataset, interaction_list): 5 | '''Exclude specific interaction types. This function will filter out any columns from *dataset*, whose header contains as a substring any strings from *interaction_list*. Requires column headers, without any limitations on their format. 6 | ''' 7 | interactions=[column for column in dataset.columns if not any([i for i in interaction_list if i in column])] 8 | filtered=dataset.filter(items=interactions) 9 | 10 | return filtered 11 | 12 | def filterInteractions(dataset): 13 | '''Filter for interactions with at least one occurrence. In other words, any interaction without a single occurrence in the whole *dataset* will be filtered out. 14 | ''' 15 | interactions=[column for column in dataset.columns if 1 in dataset[column].values] 16 | filtered=dataset.filter(items=interactions) 17 | 18 | return filtered 19 | 20 | 21 | def filterResidues(dataset): 22 | '''Filter for residues with at least one occurrence of any interaction. 23 | 24 | For identifying the residues, this requires column headers in the following general format: Axxx_yyyy, where *A* is the 1-character chain identifier *xxx* is the residue number and *yyyy* is the interaction type. (e.g. A523_charged) 25 | 26 | The residue number is read from the second character of the column header until the first underscore. 27 | ''' 28 | residues=set([column.split('_')[0] for column in dataset.columns if 1 in dataset[column].values]) 29 | dataframesPerResidue=[dataset.filter(regex=i+'_.*') for i in sorted(residues,key=lambda element: int(element.split('_')[0][1:]))] 30 | 31 | filtered=dataframesPerResidue[0] 32 | for i in dataframesPerResidue[1:]: 33 | filtered=filtered.join(i) 34 | 35 | return filtered 36 | -------------------------------------------------------------------------------- /similarity.py: -------------------------------------------------------------------------------- 1 | ''' FPKit. Module for bitvector similarity calculations. 2 | For the abbreviations and similarity definitions, see Todeschini et al, J Chem Inf Model 52(11):2884-2901, 2012. 3 | ''' 4 | 5 | from math import sqrt, log, asin, pi 6 | import numpy as np 7 | 8 | metrics_redundant=['SM','RT','JT','Gle','RR','For','Sim','BB','DK','BUB','Kul','SS1','SS2','Ja','Fai','Mou','Mic','RG','HD','Yu1','Yu2','Fos','Den','Co1','Co2','dis','GK','SS3','SS4','Phi','Di1','Di2','Sor','Coh','Pe1','Pe2','MP','HL','CT1','CT2','CT3','CT4','CT5','AC','Ham','McC','GL','BU2','Joh','Sco','Maa'] 9 | 10 | metrics=['SM','RT','JT','Gle','RR','For','Sim','BB','DK','BUB','Kul','SS1','SS2','Ja','Fai','Mou','Mic','RG','HD','Yu1','Yu2','Fos','Den','Co1','Co2','dis','GK','SS3','SS4','Phi','Di1','Di2','Sor','Coh','Pe1','Pe2','MP','HL','CT1','CT2','CT3','CT4','CT5','AC'] 11 | 12 | class FPError(Exception): 13 | def __init__(self, value): 14 | self.value = value 15 | def __str__(self): 16 | return repr(self.value) 17 | 18 | def GetLen(aFP): 19 | '''Collect getlength methods here and decide based on data type. 20 | ''' 21 | 22 | # Get type 23 | datatype=str(type(aFP)) 24 | 25 | # Calculate length by type 26 | if datatype=="" or datatype=="": 27 | length=len(aFP) 28 | elif datatype=="": 29 | length=len(aFP) 30 | elif datatype=="": 31 | length=len(aFP) 32 | elif datatype=="": 33 | cdkFPlengths=np.array([881,1024,79,166,4860,307]) 34 | length=min(cdkFPlengths[cdkFPlengths <= aFP.fp.size()],key=lambda x:abs(x-aFP.fp.size())) 35 | # Not the most elegant solution, but cdkMolecule.fp.length() gives highest occupied bit position, not length! 36 | elif datatype=="": 37 | length=len(aFP.fp) 38 | elif datatype=="" or datatype=="": 39 | length=aFP.GetLength() 40 | elif datatype=="" or datatype=="": 41 | length=aFP.GetNumBits() 42 | elif datatype=="": 43 | length=len(aFP.fp) 44 | 45 | return float(length) 46 | 47 | def get_abcdp(aFP,bFP): 48 | ''' Get a,b,c,d and p (length) from two FP objects. 49 | ''' 50 | 51 | #Get type 52 | if str(type(aFP))==str(type(bFP)): 53 | datatype=str(type(aFP)) 54 | else: 55 | raise FPError('Fingerprints of different types supplied') 56 | 57 | # Get Length 58 | if GetLen(aFP)==GetLen(bFP): 59 | p=GetLen(aFP) 60 | else: 61 | raise FPError('Fingerprints with different lengths supplied') 62 | 63 | # Extract fingerprints to list of "on" bit positions 64 | if datatype=="" or datatype=="": 65 | aList=[i for i,j in enumerate(aFP) if aFP[i]!=0] 66 | elif datatype=="": 67 | aList=np.nonzero(aFP) 68 | elif datatype=="": 69 | aList=[i for i in aFP.index if aFP[i]!=0] 70 | elif datatype=="": 71 | aList=aFP.bits 72 | elif datatype=="": 73 | aList=aFP.bits 74 | elif datatype=="" or datatype=="": 75 | aList=aFP.GetNonzeroElements().keys() 76 | elif datatype=="": 77 | aList=aFP.bits 78 | elif datatype=="" or datatype=="": 79 | aList=[i for i in aFP.GetOnBits()] 80 | 81 | if datatype=="" or datatype=="": 82 | bList=[i for i,j in enumerate(bFP) if bFP[i]!=0] 83 | elif datatype=="": 84 | bList=np.nonzero(bFP) 85 | elif datatype=="": 86 | bList=[i for i in bFP.index if bFP[i]!=0] 87 | elif datatype=="": 88 | bList=bFP.bits 89 | elif datatype=="": 90 | bList=bFP.bits 91 | elif datatype=="" or datatype=="": 92 | bList=bFP.GetNonzeroElements().keys() 93 | elif datatype=="": 94 | bList=bFP.bits 95 | elif datatype=="" or datatype=="": 96 | bList=[i for i in bFP.GetOnBits()] 97 | 98 | # Calculate a,b,c by set operations 99 | a=float(np.sum(np.in1d(aList,bList))) 100 | b=float(len(np.setdiff1d(aList,bList))) 101 | c=float(len(np.setdiff1d(bList,aList))) 102 | 103 | # Calculate d from the rest 104 | d=p-a-b-c 105 | 106 | return [a,b,c,d,p] 107 | 108 | def sim(a,b,c,d,p,metric='JT',scale=False): 109 | ''' Calculate similarities from precomputed parameters. 110 | ''' 111 | 112 | oneConditions={ 113 | 'SM': False, 114 | 'RT': False, 115 | 'JT': False, 116 | 'Gle': False, 117 | 'RR': False, 118 | 'For': False, 119 | 'Sim': False, 120 | 'BB': False, 121 | 'DK': False, 122 | 'BUB': d==p, 123 | 'Kul': False, 124 | 'SS1': False, 125 | 'SS2': False, 126 | 'Ja': False, 127 | 'Fai': False, 128 | 'Mou': False, 129 | 'Mic': a==p or d==p or (b+c)==0, 130 | 'RG': a==p or d==p, 131 | 'HD': a==p or d==p, 132 | 'Yu1': a==p or d==p or (b*c)==0, 133 | 'Yu2': a==p or d==p or (b*c)==0, 134 | 'Fos': False, 135 | 'Den': a==p or d==p, 136 | 'Co1': a==p or d==p, 137 | 'Co2': a==p or d==p, 138 | 'dis': a==p or d==p, 139 | 'GK': a==p or d==p, 140 | 'SS3': a==p or d==p, 141 | 'SS4': a==p or d==p, 142 | 'Phi': a==p or d==p, 143 | 'Di1': False, 144 | 'Di2': False, 145 | 'Sor': False, 146 | 'Coh': a==p or d==p, 147 | 'Pe1': a==p or d==p, 148 | 'Pe2': a==p or d==p, 149 | 'MP': a==p or d==p, 150 | 'HL': a==p or d==p, 151 | 'CT1': False, 152 | 'CT2': False, 153 | 'CT3': False, 154 | 'CT4': False, 155 | 'CT5': False, 156 | 'AC': False, 157 | 'Ham': False, 158 | 'McC': False, 159 | 'GL': False, 160 | 'BU2': d==p, 161 | 'Joh': False, 162 | 'Sco': a==p or d==p, 163 | 'Maa': False, 164 | } 165 | 166 | zeroConditions={ 167 | 'SM': False, 168 | 'RT': False, 169 | 'JT': a==0, 170 | 'Gle': a==0, 171 | 'RR': False, 172 | 'For': (a+b)*(a+c)==0 or a==0, 173 | 'Sim': min((a+b),(a+c))==0 or a==0, 174 | 'BB': a==0, 175 | 'DK': sqrt((a+b)*(a+c))==0, 176 | 'BUB': False, 177 | 'Kul': a==0, 178 | 'SS1': a==0, 179 | 'SS2': False, 180 | 'Ja': a==0, 181 | 'Fai': False, 182 | 'Mou': False, 183 | 'Mic': False, 184 | 'RG': False, 185 | 'HD': False, 186 | 'Yu1': False, 187 | 'Yu2': False, 188 | 'Fos': (a+b)*(a+c)==0, 189 | 'Den': sqrt(p*(a+b)*(a+c))==0, 190 | 'Co1': (a+c)*(c+d)==0, 191 | 'Co2': (a+b)*(b+d)==0, 192 | 'dis': False, 193 | 'GK': False, 194 | 'SS3': a==0 and d==0, 195 | 'SS4': a==0 or d==0, 196 | 'Phi': b==p or c==p or sqrt((a+b)*(a+c)*(b+d)*(c+d))==0, 197 | 'Di1': a==0, 198 | 'Di2': a==0, 199 | 'Sor': a==0, 200 | 'Coh': ((a+b)*(b+d)+(a+c)*(c+d))==0, 201 | 'Pe1': b==p or c==p, 202 | 'Pe2': b==p or c==p, 203 | 'MP': ((a+b)*(c+d)+(a+c)*(b+d))==0, 204 | 'HL': (2*(a+b+c))==0 or (2*(b+c+d))==0, 205 | 'CT1': False, 206 | 'CT2': False, 207 | 'CT3': False, 208 | 'CT4': False, 209 | 'CT5': False, 210 | 'AC': False, 211 | 'Ham': False, 212 | 'McC': a==0, 213 | 'GL': False, 214 | 'BU2': False, 215 | 'Joh': a==0, 216 | 'Sco': False, 217 | 'Maa': a==0, 218 | } 219 | 220 | if metric=='Mou' and (a*b+a*c+2*b*c)==0: 221 | return a/p 222 | 223 | if oneConditions[metric]: 224 | return 1.0 225 | 226 | if zeroConditions[metric]: 227 | return 0.0 228 | 229 | int_result = { 230 | 'SM': lambda a,b,c,d,p: (a+d)/p, 231 | 'RT': lambda a,b,c,d,p: (a+d)/(b+c+p), 232 | 'JT': lambda a,b,c,d,p: a/(a+b+c), 233 | 'Gle': lambda a,b,c,d,p: 2*a/(2*a+b+c), 234 | 'RR': lambda a,b,c,d,p: a/p, 235 | 'For': lambda a,b,c,d,p: p*a/((a+b)*(a+c)), 236 | 'Sim': lambda a,b,c,d,p: a/min((a+b),(a+c)), 237 | 'BB': lambda a,b,c,d,p: a/max((a+b),(a+c)), 238 | 'DK': lambda a,b,c,d,p: a/sqrt((a+b)*(a+c)), 239 | 'BUB': lambda a,b,c,d,p: (sqrt(a*d)+a)/(sqrt(a*d)+a+b+c), 240 | 'Kul': lambda a,b,c,d,p: 0.5*(a/(a+b)+a/(a+c)), 241 | 'SS1': lambda a,b,c,d,p: a/(a+2*b+2*c), 242 | 'SS2': lambda a,b,c,d,p: (2*a+2*d)/(p+a+d), 243 | 'Ja': lambda a,b,c,d,p: 3*a/(3*a+b+c), 244 | 'Fai': lambda a,b,c,d,p: (a+0.5*d)/p, 245 | 'Mou': lambda a,b,c,d,p: (2*a)/(a*b+a*c+2*b*c), 246 | 'Mic': lambda a,b,c,d,p: 4*(a*d-b*c)/((a+d)**2+(b+c)**2), 247 | 'RG': lambda a,b,c,d,p: a/(2*a+b+c)+d/(2*d+b+c), 248 | 'HD': lambda a,b,c,d,p: 0.5*(a/(a+b+c)+d/(b+c+d)), 249 | 'Yu1': lambda a,b,c,d,p: (a*d-b*c)/(a*d+b*c), 250 | 'Yu2': lambda a,b,c,d,p: (sqrt(a*d)-sqrt(b*c))/(sqrt(a*d)+sqrt(b*c)), 251 | 'Fos': lambda a,b,c,d,p: p*(a-0.5)**2/((a+b)*(a+c)), 252 | 'Den': lambda a,b,c,d,p: (a*d-b*c)/sqrt(p*(a+b)*(a+c)), 253 | 'Co1': lambda a,b,c,d,p: (a*d-b*c)/((a+c)*(c+d)), 254 | 'Co2': lambda a,b,c,d,p: (a*d-b*c)/((a+b)*(b+d)), 255 | 'dis': lambda a,b,c,d,p: (a*d-b*c)/p**2, 256 | 'GK': lambda a,b,c,d,p: (2*min(a,d)-b-c)/(2*min(a,d)+b+c), 257 | 'SS3': lambda a,b,c,d,p: 0.25*( (a/(a+b) if not a==0 else 0) + (a/(a+c) if not a==0 else 0) + (d/(b+d) if not d==0 else 0) + (d/(c+d) if not d==0 else 0) ), 258 | 'SS4': lambda a,b,c,d,p: a/sqrt((a+b)*(a+c))*d/sqrt((b+d)*(c+d)), 259 | 'Phi': lambda a,b,c,d,p: (a*d-b*c)/sqrt((a+b)*(a+c)*(b+d)*(c+d)), 260 | 'Di1': lambda a,b,c,d,p: a/(a+b), 261 | 'Di2': lambda a,b,c,d,p: a/(a+c), 262 | 'Sor': lambda a,b,c,d,p: a**2/((a+b)*(a+c)), 263 | 'Coh': lambda a,b,c,d,p: 2*(a*d-b*c)/((a+b)*(b+d)+(a+c)*(c+d)), 264 | 'Pe1': lambda a,b,c,d,p: ( (a*d-b*c)/((a+b)*(c+d)) if not ((a+b)*(c+d))==0 else 0 ), 265 | 'Pe2': lambda a,b,c,d,p: ( (a*d-b*c)/((a+c)*(b+d)) if not ((a+c)*(b+d))==0 else 0 ), 266 | 'MP': lambda a,b,c,d,p: 2*(a*d-b*c)/((a+b)*(c+d)+(a+c)*(b+d)), 267 | 'HL': lambda a,b,c,d,p: (a*(2*d)+b+c)/(2*(a+b+c))+(d*(2*a+b+c))/(2*(b+c+d)), 268 | 'CT1': lambda a,b,c,d,p: log(1+a+d)/log(1+p), 269 | 'CT2': lambda a,b,c,d,p: (log(1+p)-log(1+b+c))/log(1+p), 270 | 'CT3': lambda a,b,c,d,p: log(1+a)/log(1+p), 271 | 'CT4': lambda a,b,c,d,p: (log(1+a)/log(1+a+b+c) if not (a+b+c)==0 else 0), 272 | 'CT5': lambda a,b,c,d,p: (log(1+a*d)-log(1+b*c))/log(1+p**2/4), 273 | 'AC': lambda a,b,c,d,p: (2/pi)*asin(sqrt((a+d)/p)), 274 | 'Ham': lambda a,b,c,d,p: (a+d-b-c)/p, 275 | 'McC': lambda a,b,c,d,p: (a**2-b*c)/((a+b)*(a+c)), 276 | 'GL': lambda a,b,c,d,p: (a+d)/(a+0.5*(b+c)+d), 277 | 'BU2': lambda a,b,c,d,p: (sqrt(a*d)+a-b-c)/((sqrt(a*d)+a+b+c)), 278 | 'Joh': lambda a,b,c,d,p: a/(a+b)+a/(a+c), 279 | 'Sco': lambda a,b,c,d,p: (4*a*d-(b+c)**2)/((2*a+b+c)*(2*d+b+c)), 280 | 'Maa': lambda a,b,c,d,p: (2*a-b-c)/(2*a+b+c), 281 | }[metric] 282 | 283 | if not scale: 284 | return int_result(a,b,c,d,p) 285 | 286 | alpha = { 287 | 'SM': 0, 288 | 'RT': 0, 289 | 'JT': 0, 290 | 'Gle': 0, 291 | 'RR': 0, 292 | 'For': 0, 293 | 'Sim': 0, 294 | 'BB': 0, 295 | 'DK': 0, 296 | 'BUB': 0, 297 | 'Kul': 0, 298 | 'SS1': 0, 299 | 'SS2': 0, 300 | 'Ja': 0, 301 | 'Fai': 0, 302 | 'Mou': 0, 303 | 'Mic': 1, 304 | 'RG': 0, 305 | 'HD': 0, 306 | 'Yu1': 1, 307 | 'Yu2': 1, 308 | 'Fos': 0, 309 | 'Den': sqrt(p)/2.0, 310 | 'Co1': p-1, 311 | 'Co2': p-1, 312 | 'dis': 0.25, 313 | 'GK': 1, 314 | 'SS3': 0, 315 | 'SS4': 0, 316 | 'Phi': 1, 317 | 'Di1': 0, 318 | 'Di2': 0, 319 | 'Sor': 0, 320 | 'Coh': 1, 321 | 'Pe1': 1, 322 | 'Pe2': 1, 323 | 'MP': 1, 324 | 'HL': 0, 325 | 'CT1': 0, 326 | 'CT2': 0, 327 | 'CT3': 0, 328 | 'CT4': 0, 329 | 'CT5': 1, 330 | 'AC': 0, 331 | 'Ham': 1, 332 | 'McC': 1, 333 | 'GL': 0, 334 | 'BU2': 1, 335 | 'Joh': 0, 336 | 'Sco': 1, 337 | 'Maa': 1, 338 | }[metric] 339 | 340 | beta = { 341 | 'SM': 1, 342 | 'RT': 1, 343 | 'JT': 1, 344 | 'Gle': 1, 345 | 'RR': 1, 346 | 'For': (p/a if not a==0 else 0.00001), # Should be ruled out by zeroCondition, but clearly visible if not 347 | 'Sim': 1, 348 | 'BB': 1, 349 | 'DK': 1, 350 | 'BUB': 1, 351 | 'Kul': 1, 352 | 'SS1': 1, 353 | 'SS2': 1, 354 | 'Ja': 1, 355 | 'Fai': 1, 356 | 'Mou': 2, 357 | 'Mic': 2, 358 | 'RG': 1, 359 | 'HD': 1, 360 | 'Yu1': 2, 361 | 'Yu2': 2, 362 | 'Fos': (p-0.5)**2/p, 363 | 'Den': 3*sqrt(p)/2, 364 | 'Co1': p, 365 | 'Co2': p, 366 | 'dis': 0.5, 367 | 'GK': 2, 368 | 'SS3': 1, 369 | 'SS4': 1, 370 | 'Phi': 2, 371 | 'Di1': 1, 372 | 'Di2': 1, 373 | 'Sor': 1, 374 | 'Coh': 2, 375 | 'Pe1': 2, 376 | 'Pe2': 2, 377 | 'MP': 2, 378 | 'HL': p, 379 | 'CT1': 1, 380 | 'CT2': 1, 381 | 'CT3': 1, 382 | 'CT4': 1, 383 | 'CT5': 2, 384 | 'AC': 1, 385 | 'Ham': 2, 386 | 'McC': 2, 387 | 'GL': 1, 388 | 'BU2': 2, 389 | 'Joh': 2, 390 | 'Sco': 2, 391 | 'Maa': 2, 392 | }[metric] 393 | 394 | result = (int_result(a,b,c,d,p)+float(alpha))/float(beta) 395 | 396 | return result 397 | 398 | 399 | def similarity(aFP,bFP,metric='JT',scale=False): 400 | ''' Shortcut for complete similarity calculation of two fingerprints.''' 401 | 402 | return sim(*get_abcdp(aFP,bFP),metric=metric,scale=scale) 403 | 404 | def dissimilarity(aFP,bFP,metric='JT',scale=True): 405 | ''' Shortcut for complete dissimilarity calculation of two fingerprints. 406 | By default, dissimilarities are calculated from the [0,1]-scaled similarity values.''' 407 | 408 | return (1 - sim(*get_abcdp(aFP,bFP),metric=metric,scale=scale)) 409 | 410 | def distance(aFP,bFP,metric='JT',scale=True): 411 | ''' Shortcut for complete distance calculation of two fingerprints. 412 | By default, distances are calculated from the [0,1]-scaled similarity values.''' 413 | 414 | return (1 / sim(*get_abcdp(aFP,bFP),metric=metric,scale=scale) - 1) 415 | --------------------------------------------------------------------------------