├── dependencies.txt ├── README.md ├── Data ├── Spike test data │ └── Spike_SergeevaMutants.csv └── AB-Bind test data │ ├── Surfaces_RosettaMutants.csv │ └── Surfaces_FoldXMutants.csv ├── create_lig_file.py ├── AMINO_FlexAID.def ├── Vpoly.h ├── clean_structure.py ├── steric_clashes.py ├── cif2pdb.py ├── ligand_atomtypes.py ├── pymol_image_surfaces.py ├── surface_cont.py ├── surface_cont_res.py ├── surface_cont_lig.py ├── pymol_image_surfaces_lig.py ├── image_surfaces.py ├── image_surfaces_lig.py └── FlexAID.dat /dependencies.txt: -------------------------------------------------------------------------------- 1 | ###### Dependencies for Surfaces scripts ###### 2 | argparse 3 | clang 4 | colour 5 | pandas 6 | biopython 7 | -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- 1 | # Surfaces 2 | 3 | You can find the tutorial to use Surfaces [here](https://surfaces-tutorial.readthedocs.io/en/latest/index.html). 4 | 5 | Cite this work as [*Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023). Surfaces: A software to quantify and visualize interactions within and between proteins and ligands. Bioinformatics, btad608*](https://academic.oup.com/bioinformatics/advance-article/doi/10.1093/bioinformatics/btad608/7288175). 6 | -------------------------------------------------------------------------------- /Data/Spike test data/Spike_SergeevaMutants.csv: -------------------------------------------------------------------------------- 1 | RBD mutation,ΔCF Surfaces,ΔCF Surfaces (linear regression) 2 | N501Y,-2837.644,-2.046 3 | Y453F,128.306,0.093 4 | S477N,-951.060,-0.686 5 | N501T,-1312.217,-0.946 6 | N439K,0.000,0.000 7 | N440K,0.000,0.000 8 | F490S,-104.361,-0.075 9 | L452M,0.000,0.000 10 | L452R,0.000,0.000 11 | E484Q,993.905,0.717 12 | T478K,0.000,0.000 13 | N481K,0.000,0.000 14 | E484K,1564.068,1.128 15 | Q498R,1345.495,0.970 16 | S477I,68.569,0.049 17 | G446V,-145.363,-0.105 18 | T478R,0.000,0.000 19 | S477R,-413.462,-0.298 20 | A475V,-760.326,-0.548 21 | L455F,-1850.595,-1.335 22 | K417T,3011.745,2.172 23 | F486L,842.937,0.608 24 | K417N,2210.627,1.594 25 | ,, 26 | PCC,,0.556 27 | RMSE,,0.747 28 | PCC Φ (stabilizing ≤ -0.4),,0.593 -------------------------------------------------------------------------------- /create_lig_file.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | import argparse 6 | 7 | def read_atom(line): 8 | atnum = int(line[6:11]) 9 | attype = line[11:16].strip() 10 | resnum = line[23:30].strip() 11 | res = line[17:20].strip() 12 | chain = line[21:22].strip() 13 | return (atnum,attype,resnum,res,chain) 14 | 15 | def create_ligand_file (pdb_file_name, lig_name): 16 | pdb_file = open(pdb_file_name, "r") 17 | lig_pdb_file = open(lig_name+".pdb", "w") 18 | Lines = pdb_file.readlines() 19 | for line in Lines: 20 | if line[:4] == 'ATOM' or line[:4] == 'HETA': 21 | atnum,attype,resnum,res,chain = read_atom(line) 22 | if res == lig_name: 23 | lig_pdb_file.write(line) 24 | lig_pdb_file.close() 25 | return 26 | 27 | def main(): 28 | 29 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 30 | parser.add_argument("-f","--pdb_file", action="store") 31 | parser.add_argument("-lig","--lig_name", action="store") 32 | args=parser.parse_args() 33 | 34 | list_ligs = args.lig_name.split(",") 35 | for lig in list_ligs: 36 | create_ligand_file (args.pdb_file, lig) 37 | 38 | return 39 | 40 | main() 41 | -------------------------------------------------------------------------------- /AMINO_FlexAID.def: -------------------------------------------------------------------------------- 1 | ALA | N:11, CA:3, C:2, O:13, CB:3, OXT:13, 2 | ARG | N:11, CA:3, C:2, O:13, CB:3, CG:3, CD:3, NE:12, CZ:5, NH:12, NH1:12, NH2:12, OXT:13, 3 | ASN | N:11, CA:3, C:2, O:13, CB:3, CG:2, OD:13, OD1:13, ND:11, ND2:11, OXT:13, 4 | ASP | N:11, CA:3, C:2, O:13, CB:3, CG:2, OD:15, OD1:15, OD2:15, OXT:13, 5 | CYS | N:11, CA:3, C:2, O:13, CB:3, SG:18, OXT:13, 6 | GLN | N:11, CA:3, C:2, O:13, CB:3, CG:3, CD:2, OE:13, OE1:13, NE:11, NE2:11, OXT:13, 7 | GLU | N:11, CA:3, C:2, O:13, CB:3, CG:3, CD:2, OE:15, OE1:15, OE2:15, OXT:13, 8 | GLY | N:11, CA:3, C:2, O:13, OXT:13, 9 | HIS | N:11, CA:3, C:2, O:13, CB:7, CG:4, ND:10, ND1:10, ND2:10, CD:4, CD1:4, CD2:4, CE:4, CE1:4, CE2:4, NE:10, NE1:10, NE2:10, OXT:13, 10 | ILE | N:11, CA:3, C:2, O:13, CB:3, CG:3, CG1:3, CG2:3, CD:3, CD1:3, OXT:13, 11 | LEU | N:11, CA:3, C:2, O:13, CB:3, CG:3, CD:3, CD1:3, CD2:3, OXT:13, 12 | LYS | N:11, CA:3, C:2, O:13, CB:3, CG:3, CD:3, CE:3, NZ:9, OXT:13, 13 | MET | N:11, CA:3, C:2, O:13, CB:3, CG:3, SD:18, CE:3, OXT:13, 14 | PHE | N:11, CA:3, C:2, O:13, CB:3, CG:4, CD:4, CD1:4, CD2:4, CE:4, CE1:4, CE2:4, CZ:4, OXT:13, 15 | PRO | N:11, CA:3, C:2, O:13, CB:3, CG:3, CD:3, OXT:13, 16 | SER | N:11, CA:3, C:2, O:13, CB:3, OG:14, OXT:13, 17 | THR | N:11, CA:3, C:2, O:13, CB:3, OG:14, OG1:14, CG:3, CG1:3, CG2:3, OXT:13, 18 | TRP | N:11, CA:3, C:2, O:13, CB:3, CG:4, CD:4, CD1:4, CD2:4, NE:10, NE1:10, CE:4, CE1:4, CE2:4, CE3:4, CZ:4, CZ1:4, CZ2:4, CZ3:4, CH:4, CH2:4, OXT:13, 19 | TYR | N:11, CA:3, C:2, O:13, CB:3, CG:4, CD:4, CD1:4, CD2:4, CE:4, CE1:4, CE2:4, CZ:4, OH:14, OXT:13, 20 | VAL | N:11, CA:3, C:2, O:13, CB:3, CG:3, CG1:3, CG2:3, OXT:13, -------------------------------------------------------------------------------- /Vpoly.h: -------------------------------------------------------------------------------- 1 | /*************************************************** 2 | * HEADER: Voronoi polyhedron set of programs 3 | * Vsurfaces, Vcontacts, and Vvolumes, for 4 | * calculating solvent accessible surfaces, 5 | * atom-atom contacts, and atom volumes. 6 | * An analytical solution is used for all 7 | * calculations. 8 | ***************************************************/ 9 | 10 | #include 11 | #include 12 | #include 13 | #include 14 | 15 | #define CELLSIZE 7.0 // set to (maximum contact radius x 2) 16 | #define PI 3.14159265 // pi. 17 | #define Rw 1.4 // radius of water 18 | 19 | // ------------------------- structure definitions ---------------------- 20 | 21 | struct atom { 22 | int atomnum; // record number from PDB 23 | float coor[3]; // xyz coordinates of atom 24 | char atomname[5]; // name of atom, CA, etc 25 | char res[4]; // residue name from PDB 26 | char chain; 27 | int resnum; 28 | float radius; // radius of atom 29 | int boxnum; // the box number atom is assigned to. 30 | char source; // source of atom, protein, ligand, 31 | float SAS; // solvent exposed surface area 32 | float vol; // atom volume 33 | char done; // flag if atom contacts have already been calculated 34 | }; 35 | 36 | struct atomindex { 37 | int nument; // number of entries in box 38 | int first; // location of first entry in PDBlist 39 | }; 40 | 41 | struct contactlist { 42 | int index; // index to PDB atom 43 | double area; // contact area, square angstroms 44 | double dist; // distance to atom zero 45 | char flag; // to keep or not. 'X' == omit. 46 | }; 47 | 48 | 49 | // ----------------- Global variables ----------------- 50 | 51 | struct atom *PDB; // pointer to PDB array (dynamically allocated) 52 | struct atomindex *box; // index to PDB atoms within cubic grid 53 | int *PDBlist; // list of atoms ordered by box number 54 | struct contactlist contlist[100]; // list of possible atom contacts 55 | 56 | // ----------------- prototype definitions ------------------ 57 | 58 | struct atom *read_PDB(char *FILE_ptr, struct atom *PDB, long int *totatoms); 59 | int index_protein(int totatoms); 60 | -------------------------------------------------------------------------------- /clean_structure.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | #Imports 6 | import argparse 7 | 8 | def get_atoms(line): #take strings after the ' ' and before the ':' 9 | list_atoms = [] 10 | L = line[5:-2].split(",") 11 | for item in L: 12 | if len(item) > 0: 13 | item = item.strip() 14 | id = item.index(":") 15 | list_atoms.append(item[:id]) 16 | return (list_atoms) 17 | 18 | def read_atom(line): 19 | atnum = int(line[6:11]) 20 | attype = line[11:16].strip() 21 | resnum = line[23:30].strip() 22 | res = line[17:20].strip() 23 | chain = line[21:22].strip() 24 | return (atnum,attype,resnum,res,chain) 25 | 26 | def check_line(line,res,atoms): #see if the atom of that line is described in the def file 27 | atnum,attype,resnum,residue,chain = read_atom(line) 28 | if residue in res: 29 | id = res.index(residue) 30 | if attype in atoms[id]: 31 | return (True) 32 | else: 33 | print ("WARNING: ATOM " + attype + " NOT DEFINED FOR " + residue) 34 | return (False) 35 | else: 36 | print ("WARNING: " + residue + " NOT DEFINED") 37 | return (False) 38 | 39 | def main(): 40 | 41 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 42 | parser.add_argument("-f","--pdb_file", action="store") 43 | parser.add_argument("-def","--atomtypes_definition", action="store") 44 | args=parser.parse_args() 45 | 46 | res = [] 47 | atoms = [] 48 | 49 | def_file = open(args.atomtypes_definition, "r") 50 | Lines = def_file.readlines() 51 | for line in Lines: 52 | res.append(line[:3]) 53 | atoms.append(get_atoms(line)) 54 | def_file.close() 55 | 56 | #print (res) 57 | #print (atoms) 58 | 59 | pdb_file = open(args.pdb_file, "r") 60 | clean_pdb_file = open(args.pdb_file[:-4]+"_clean.pdb" , "w") 61 | Lines = pdb_file.readlines() 62 | for line in Lines: 63 | if line[:4] == 'ATOM' or line[:4] == 'HETA': 64 | if check_line(line,res,atoms): 65 | clean_pdb_file.write(line) 66 | 67 | pdb_file.close() 68 | clean_pdb_file.close() 69 | 70 | return 71 | 72 | main() 73 | -------------------------------------------------------------------------------- /steric_clashes.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | import argparse 6 | import re 7 | 8 | 9 | def get_atoms(pdb_file): 10 | atoms = [] 11 | f = open(pdb_file, 'r') 12 | Lines = f.readlines() 13 | for line in Lines: 14 | if (line[:4] == 'ATOM' or line[:4] == 'HETA'): 15 | atom_n = (int(line[6:12])) 16 | coord1 = (float(line[31:38])) 17 | coord2 = (float(line[39:46])) 18 | coord3 = (float(line[47:54])) 19 | #print (coord1, coord2, coord3) 20 | atoms.append([atom_n, coord1, coord2, coord3]) 21 | return (atoms) 22 | 23 | def get_residue_name(pdb_line): 24 | res_num = re.findall('\d',pdb_line[22:27]) 25 | res_num = int(''.join(res_num)) 26 | res_name = pdb_line[17:20] 27 | string = res_name + str(res_num) + pdb_line[21] 28 | return (string, res_num) 29 | 30 | def get_residues(pdb_file): 31 | residue_names = [] 32 | residue_numbers = [] 33 | f = open(pdb_file, 'r') 34 | Lines = f.readlines() 35 | for line in Lines: 36 | if (line[:4] == 'ATOM' or line[:4] == 'HETA'): 37 | name, res_num = get_residue_name(line) 38 | residue_names.append(name) 39 | residue_numbers.append(res_num) 40 | return (residue_names, residue_numbers) 41 | 42 | def check_bond(atom1, atom2): 43 | pymol.cmd.select('id ' + str(atom1)) 44 | pymol.cmd.set_name('sele', 'atom1') 45 | pymol.cmd.select('bound_to atom1') 46 | list_bound = pymol.cmd.identify('sele') 47 | #print (list_bound) 48 | if atom2 in list_bound: 49 | return (True) 50 | else: 51 | return (False) 52 | 53 | def calculate_distance(atom1, atom2): 54 | delta1 = abs(atom1[1] - atom2[1]) 55 | delta2 = abs(atom1[2] - atom2[2]) 56 | delta3 = abs(atom1[3] - atom2[3]) 57 | dist = ((delta1**2) + (delta2**2) + (delta3**2))**(0.5) 58 | #print (dist) 59 | if dist > 2: 60 | return (False) 61 | else: 62 | return (True) 63 | 64 | def check_adjacence(res_num1, res_num2): 65 | if abs(res_num1 - res_num2) > 1: 66 | return (False) 67 | else: 68 | return (True) 69 | 70 | def give_warning(pairs): 71 | 72 | for pair in pairs: 73 | print ("WARNING: STERIC CLASH BETWEEN RESIDUES " + pair[0] + " AND " + pair[1]) 74 | 75 | return 76 | 77 | def get_steric_clashes(pdb_file): 78 | 79 | # get numbers of atoms 80 | atoms = get_atoms(pdb_file) 81 | # get names and numbers of residues 82 | residue_names, residue_numbers = get_residues(pdb_file) 83 | 84 | 85 | # iterate over every atom 86 | pairs = [] 87 | for i in range(len(atoms)): 88 | for j in range(len(atoms)): 89 | if j > i: 90 | if (calculate_distance(atoms[i], atoms[j])) and not (check_adjacence(residue_numbers[i], residue_numbers[j])): 91 | pair = [residue_names[i], residue_names[j]] 92 | if pair not in pairs: 93 | pairs.append(pair) 94 | 95 | give_warning (pairs) 96 | 97 | return 98 | 99 | def main(): 100 | 101 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 102 | parser.add_argument("-f","--pdb_file", action="store") 103 | args=parser.parse_args() 104 | 105 | get_steric_clashes(args.pdb_file) 106 | 107 | return 108 | 109 | main() 110 | -------------------------------------------------------------------------------- /cif2pdb.py: -------------------------------------------------------------------------------- 1 | #!/usr/bin/env python 2 | """ 3 | Script to convert mmCIF files to PDB format. 4 | 5 | usage: python cif2pdb.py ciffile [pdbfile] 6 | 7 | Requires python BioPython (`pip install biopython`). It should work with recent version of python 2 or 3. 8 | 9 | @author Spencer Bliven 10 | """ 11 | 12 | import sys 13 | import argparse 14 | import logging 15 | from Bio.PDB.MMCIFParser import MMCIFParser 16 | from Bio.PDB import PDBIO 17 | 18 | def int_to_chain(i,base=62): 19 | """ 20 | int_to_chain(int,int) -> str 21 | 22 | Converts a positive integer to a chain ID. Chain IDs include uppercase 23 | characters, numbers, and optionally lowercase letters. 24 | 25 | i = a positive integer to convert 26 | base = the alphabet size to include. Typically 36 or 62. 27 | """ 28 | if i < 0: 29 | raise ValueError("positive integers only") 30 | if base < 0 or 62 < base: 31 | raise ValueError("Invalid base") 32 | 33 | quot = int(i)//base 34 | rem = i%base 35 | if rem < 26: 36 | letter = chr( ord("A") + rem) 37 | elif rem < 36: 38 | letter = str( rem-26) 39 | else: 40 | letter = chr( ord("a") + rem - 36) 41 | if quot == 0: 42 | return letter 43 | else: 44 | return int_to_chain(quot-1,base) + letter 45 | 46 | class OutOfChainsError(Exception): pass 47 | def rename_chains(structure): 48 | """Renames chains to be one-letter chains 49 | 50 | Existing one-letter chains will be kept. Multi-letter chains will be truncated 51 | or renamed to the next available letter of the alphabet. 52 | 53 | If more than 62 chains are present in the structure, raises an OutOfChainsError 54 | 55 | Returns a map between new and old chain IDs, as well as modifying the input structure 56 | """ 57 | next_chain = 0 # 58 | # single-letters stay the same 59 | chainmap = {c.id:c.id for c in structure.get_chains() if len(c.id) == 1} 60 | for o in structure.get_chains(): 61 | if len(o.id) != 1: 62 | if o.id[0] not in chainmap: 63 | chainmap[o.id[0]] = o.id 64 | o.id = o.id[0] 65 | else: 66 | c = int_to_chain(next_chain) 67 | while c in chainmap: 68 | next_chain += 1 69 | c = int_to_chain(next_chain) 70 | if next_chain >= 62: 71 | raise OutOfChainsError() 72 | chainmap[c] = o.id 73 | o.id = c 74 | return chainmap 75 | 76 | if __name__ == "__main__": 77 | parser = argparse.ArgumentParser(description='Convert mmCIF to PDB format') 78 | parser.add_argument("ciffile",help="mmCIF input file") 79 | parser.add_argument("pdbfile",nargs="?",help="PDB output file. Default based on CIF filename") 80 | parser.add_argument("-v","--verbose", help="Long messages", 81 | dest="verbose",default=False, action="store_true") 82 | args = parser.parse_args() 83 | 84 | logging.basicConfig(format='%(levelname)s: %(message)s', level=logging.DEBUG if args.verbose else logging.WARN) 85 | 86 | ciffile = args.ciffile 87 | pdbfile = args.pdbfile or ciffile[:-4]+".pdb" 88 | #Not sure why biopython needs this to read a cif file 89 | strucid = ciffile[:4] if len(ciffile)>4 else "1xxx" 90 | 91 | # Read file 92 | parser = MMCIFParser() 93 | structure = parser.get_structure(strucid, ciffile) 94 | 95 | # rename long chains 96 | try: 97 | chainmap = rename_chains(structure) 98 | except OutOfChainsError: 99 | logging.error("Too many chains to represent in PDB format") 100 | sys.exit(1) 101 | 102 | if args.verbose: 103 | for new,old in chainmap.items(): 104 | if new != old: 105 | logging.info("Renaming chain {0} to {1}".format(old,new)) 106 | 107 | #Write PDB 108 | io = PDBIO() 109 | io.set_structure(structure) 110 | #TODO What happens with large structures? 111 | io.save(pdbfile) 112 | 113 | -------------------------------------------------------------------------------- /ligand_atomtypes.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | import pandas as pd 6 | import argparse 7 | 8 | # ANY ATOM NOT IN THIS LIST WILL BE CONSIDERED DUMMY:39 9 | dict_types={'C.1':'1', 'C.2':'2', 'C.3':'3', 'C.ar':'4', 'C.cat':'5', 'N.1':'6', 10 | 'N.2':'7', 'N.3':'8', 'N.4':'9', 'N.ar':'10', 'N.am':'11', 'N.pl3':'12', 11 | 'O.2':'13', 'O.3':'14', 'O.co2':'15', 'O.ar':'16', 'S.2':'17', 'S.3':'18', 12 | 'S.o':'19', 'S.O2':'20', 'S.ar':'21', 'P.3':'22', 'F':'23', 'Cl':'24', 'Br':'25', 'I':'26', 'Se':'27', 'Mg':'28', 'Sr':'29', 13 | 'Cu':'30', 'Mn':'31', 'Hg':'32', 'Cd':'33', 'Ni':'34', 'Zn':'35', 'Ca':'36', 'Fe':'37', 'Cooh':'38', 'Du':'39'} 14 | 15 | def convertto_mol2 (pdb_file): 16 | import pymol 17 | pymol.cmd.load(pdb_file) 18 | pymol.cmd.save(pdb_file[:-4] + '.mol2') 19 | pymol.cmd.delete('all') 20 | return 21 | 22 | def convertto_pdb (mol_file): 23 | import pymol 24 | pymol.cmd.load(mol_file) 25 | pymol.cmd.save(mol_file[:-5] + '.pdb') 26 | pymol.cmd.delete('all') 27 | return 28 | 29 | def read_mol2 (mol_file): 30 | f = open(mol_file, 'r') 31 | Lines = f.readlines() 32 | selected_Lines = [] 33 | # select lines after "@ATOM" and before "@BOND" 34 | select = False 35 | for i in range(len(Lines)): 36 | if Lines[i] == '@BOND\n': 37 | select = False 38 | if select: 39 | selected_Lines.append(Lines[i]) 40 | if Lines[i] == '@ATOM\n': 41 | select = True 42 | # breaks between columns: '\t' 43 | df = pd.DataFrame(columns=['number','name','coord1','coord2','coord3','type','n','res','k']) 44 | for line in selected_Lines: 45 | add = line[:-2].split("\t") 46 | df.loc[len(df)] = add 47 | list_atomnames = df['name'].tolist() 48 | for k in range(len(list_atomnames)): 49 | list_atomnames[k] = list_atomnames[k].strip() 50 | list_atomtypes = df['type'].tolist() 51 | res = df.loc[0,'res'] 52 | return (list_atomnames, list_atomtypes, res) 53 | 54 | def atomtypes_to_numbers (list_atomtypes): 55 | list_atomnumbers = [] 56 | for i in range(len(list_atomtypes)): 57 | if list_atomtypes[i] in dict_types: 58 | list_atomnumbers.append(dict_types[list_atomtypes[i]]) 59 | else: 60 | list_atomnumbers.append(dict_types['Du']) 61 | return (list_atomnumbers) 62 | 63 | def check_atoms (list_atomnames, list_atomtypes): 64 | for i in range(len(list_atomnames)): 65 | for j in range(len(list_atomnames)): 66 | if list_atomnames[i] == list_atomnames[j] and list_atomtypes[i] != list_atomtypes[j]: 67 | return (False) 68 | return (True) 69 | 70 | def check_atom_names_pdb (pdb_file): 71 | f = open(pdb_file, 'r') 72 | Lines = f.readlines() 73 | for line in Lines: 74 | if (line[:4] == 'ATOM' or line[:4] == 'HETA'): 75 | atom_name = line[12:17] 76 | atom_name = atom_name.strip() 77 | if len(atom_name) > 3: 78 | return (False) 79 | return (True) 80 | 81 | def check_atom_names_mol2 (mol2_file): 82 | f = open(mol2_file, 'r') 83 | Lines = f.readlines() 84 | selected_Lines = [] 85 | select = False 86 | for i in range(len(Lines)): 87 | if Lines[i] == '@BOND\n': 88 | select = False 89 | if select: 90 | selected_Lines.append(Lines[i]) 91 | if Lines[i] == '@ATOM\n': 92 | select = True 93 | df = pd.DataFrame(columns=['number','name','coord1','coord2','coord3','type','n','res','k']) 94 | for line in selected_Lines: 95 | add = line[:-2].split("\t") 96 | df.loc[len(df)] = add 97 | list_atomnames = df['name'].tolist() 98 | for atom_name in list_atomnames: 99 | atom_name = atom_name.strip() 100 | if len(atom_name) > 3: 101 | return (False) 102 | return (True) 103 | 104 | def custom_def_file (f, g, list_atomnames, list_atomnumbers, res): 105 | Lines = f.readlines() 106 | new_line = '\n' + res[:3] + ' | ' 107 | for i in range(len(list_atomnames)): 108 | new_line = new_line + list_atomnames[i] + ':' + list_atomnumbers[i] + ', ' 109 | for line in Lines: 110 | g.write(line) 111 | g.write(new_line) 112 | return 113 | 114 | def remove_duplicates (list_atomnames, list_atomnumbers): 115 | new_list_atomnames = [] 116 | new_list_atomnumbers = [] 117 | for k in range(len(list_atomnames)): 118 | if list_atomnames[k] not in new_list_atomnames: 119 | new_list_atomnames.append(list_atomnames[k]) 120 | new_list_atomnumbers.append(list_atomnumbers[k]) 121 | return (new_list_atomnames, new_list_atomnumbers) 122 | 123 | def add_mol2 (ligand_file, f, g): 124 | list_atomnames, list_atomtypes, res = read_mol2 (ligand_file) 125 | # EVERY ATOM NAME SHOULD HAVE UP TO 3 CHARACTERS IN ORDER TO AVOID MOL2 CONVERSION ISSUES 126 | if not check_atom_names_mol2 (ligand_file): 127 | print ("WARNING: ATOM NAMES LARGER THAN 3 CHARACTERS - POSSIBLE PROBLEM WITH ATOM TYPE READING") 128 | # EVERY ATOM FROM THE LIGAND NEEDS TO HAVE A DIFFERENT NAME; EG. CA,CB... 129 | if not check_atoms (list_atomnames, list_atomtypes): 130 | print ("WARNING: ATOMS WITH DIFFERENT ATOM TYPES AND SAME ATOM NAME") 131 | list_atomnumbers = atomtypes_to_numbers (list_atomtypes) 132 | list_atomnames, list_atomnumbers = remove_duplicates (list_atomnames, list_atomnumbers) 133 | custom_def_file (f, g, list_atomnames, list_atomnumbers, res) 134 | return 135 | 136 | def add_pdb (ligand_file, f, g): 137 | convertto_mol2 (ligand_file) 138 | list_atomnames, list_atomtypes, res = read_mol2 (ligand_file[:-4] + '.mol2') 139 | # EVERY ATOM NAME SHOULD HAVE UP TO 3 CHARACTERS IN ORDER TO AVOID MOL2 CONVERSION ISSUES 140 | if not check_atom_names_pdb (ligand_file): 141 | print ("WARNING: ATOM NAMES LARGER THAN 3 CHARACTERS - POSSIBLE PROBLEM WITH ATOM TYPE READING") 142 | # EVERY ATOM FROM THE LIGAND NEEDS TO HAVE A DIFFERENT NAME; EG. CA,CB... 143 | if not check_atoms (list_atomnames, list_atomtypes): 144 | print ("WARNING: ATOMS WITH DIFFERENT ATOM TYPES AND SAME ATOM NAME") 145 | list_atomnumbers = atomtypes_to_numbers (list_atomtypes) 146 | list_atomnames, list_atomnumbers = remove_duplicates (list_atomnames, list_atomnumbers) 147 | custom_def_file (f, g, list_atomnames, list_atomnumbers, res) 148 | return 149 | 150 | def main(): 151 | 152 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 153 | parser.add_argument("-pdb","--ligand_pdb_file", action="store") 154 | parser.add_argument("-mol2","--ligand_mol2_file", action="store") 155 | parser.add_argument("-def","--atomtypes_definition", action="store") 156 | parser.add_argument("-prefix","--prefix_new_atomtypes_definition", action="store") 157 | args=parser.parse_args() 158 | 159 | f = open(args.atomtypes_definition, 'r') 160 | if args.prefix_new_atomtypes_definition == None: 161 | g = open('custom_' + args.atomtypes_definition, 'w') 162 | else: 163 | g = open(args.prefix_new_atomtypes_definition + '_' + args.atomtypes_definition, 'w') 164 | 165 | if args.ligand_mol2_file == None: 166 | list_ligand_files = args.ligand_pdb_file.split(",") 167 | for ligand_file in list_ligand_files: 168 | add_pdb (ligand_file, f, g) 169 | 170 | else: 171 | list_ligand_files = args.ligand_mol2_file.split(",") 172 | for ligand_file in list_ligand_files: 173 | add_mol2 (ligand_file, f, g) 174 | 175 | 176 | g.close() 177 | 178 | return 179 | 180 | 181 | main() 182 | -------------------------------------------------------------------------------- /pymol_image_surfaces.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | #Imports 6 | import argparse 7 | import sys 8 | import pymol 9 | import pandas as pd 10 | from colour import Color 11 | 12 | def get_sum_per_residue(surfaces_file): 13 | residues = [] 14 | values = [] 15 | surf = pd.read_csv(surfaces_file, index_col=0) 16 | sum_column = surf.sum() 17 | sum_row = surf.sum(axis='columns') 18 | for x in range(len(sum_column)): 19 | values.append(sum_column[x]) 20 | residues.append(surf.columns[x]) 21 | for y in range(len(sum_row)): 22 | values.append(sum_row[y]) 23 | residues.append(surf.index[y]) 24 | return (residues, values) 25 | 26 | def get_pairs_contacts(surfaces_file): 27 | pairs = [] 28 | values = [] 29 | surf = pd.read_csv(surfaces_file, index_col=0) 30 | for i in range (len(surf.index)): 31 | for j in range (len(surf.columns)): 32 | if surf.loc[surf.index[i],surf.columns[j]] != 0: 33 | pairs.append([surf.index[i],surf.columns[j]]) 34 | values.append(surf.loc[surf.index[i],surf.columns[j]]) 35 | return (pairs, values) 36 | 37 | def read_residue(res): 38 | type_res = res[:3] 39 | chain_res = res[-1] 40 | num_res = res[3:-1] 41 | return (type_res, chain_res, num_res) 42 | 43 | def color_residue(res, color): 44 | type_res, chain_res, num_res = read_residue(res) 45 | selection_string = 'chain' + chain_res + ' and resi ' + num_res 46 | pymol.cmd.set_color(res, color) 47 | pymol.cmd.select(selection_string) 48 | #pymol.cmd.show('spheres', 'sele') 49 | pymol.cmd.set("cartoon_transparency", 0.00, 'sele') 50 | pymol.cmd.color(res, 'sele') 51 | pymol.cmd.delete('sele') 52 | return 53 | 54 | def generate_color_scale(values, color_scale_range, color_scale): 55 | 56 | if color_scale is None: 57 | top_color = "red" 58 | mid_color = "white" 59 | bottom_color = "blue" 60 | else: 61 | color_scale = list(color_scale[1:-1].split(",")) 62 | top_color = color_scale[2] 63 | mid_color = color_scale[1] 64 | bottom_color = color_scale[0] 65 | 66 | Total_colors = [] 67 | 68 | for i in range(5): 69 | c = Color(bottom_color, saturation=1/(i+1)) 70 | Total_colors.append(c.rgb) 71 | white = Color(mid_color) 72 | Total_colors.append(white.rgb) 73 | for i in range(5): 74 | c = Color(top_color, saturation=1/(5-i)) 75 | Total_colors.append(c.rgb) 76 | #print (Total_colors) 77 | 78 | if color_scale_range is None: 79 | max_value = max(values) 80 | min_value = min(values) 81 | if abs(min_value) > abs(max_value): 82 | range_value = 2 * abs(min_value) 83 | else: 84 | range_value = 2 * abs(max_value) 85 | step_value = range_value/10 86 | else: 87 | min_value = float(color_scale_range[0]) 88 | max_value = float(color_scale_range[1]) 89 | range_value = max_value - min_value 90 | step_value = range_value/10 91 | 92 | color_codes = [] 93 | for value in values: 94 | s = range_value/2 - (-1*value) 95 | n = int(s // step_value) 96 | if n < 0: 97 | n = 0 98 | elif n >= len(Total_colors): 99 | n = len(Total_colors) - 1 100 | color_codes.append(list(Total_colors[n])) 101 | 102 | return (color_codes) 103 | 104 | def color_distance(pair, value, color, selected_pairs): 105 | #create distance object 106 | distance_string = 'dashed_' + pair[0] + '-' + pair[1] 107 | type_res1, chain_res1, num_res1 = read_residue(pair[0]) 108 | type_res2, chain_res2, num_res2 = read_residue(pair[1]) 109 | selection_string1 = 'chain' + chain_res1 + ' and resi ' + num_res1 + ' and n. CA' 110 | selection_string2 = 'chain' + chain_res2 + ' and resi ' + num_res2 + ' and n. CA' 111 | pymol.cmd.set_color(distance_string, color) 112 | pymol.cmd.distance(distance_string, selection_string1, selection_string2) 113 | pymol.cmd.color(distance_string, distance_string) 114 | pymol.cmd.hide('labels', distance_string) 115 | if pair not in selected_pairs: 116 | pymol.cmd.disable(distance_string) 117 | return 118 | 119 | def label_pairs(pair,selected_pairs): 120 | #create selection 121 | pair_string = pair[0] + '-' + pair[1] 122 | type_res1, chain_res1, num_res1 = read_residue(pair[0]) 123 | type_res2, chain_res2, num_res2 = read_residue(pair[1]) 124 | selection_string1 = 'chain' + chain_res1 + ' & resi ' + num_res1 + ' & n. CA' 125 | selection_string2 = 'chain' + chain_res2 + ' & resi ' + num_res2 + ' & n. CA' 126 | pymol.cmd.select(pair_string, selection_string1 + ' ' + selection_string2) 127 | #label residues 128 | pymol.cmd.label(selection_string1,"'%s %s %s' %(resn,resi,chain)") 129 | pymol.cmd.label(selection_string2,"'%s %s %s' %(resn,resi,chain)") 130 | selected_residues = pairs_to_residues(selected_pairs) 131 | if pair[0] not in selected_residues: 132 | pymol.cmd.hide('labels', selection_string1) 133 | if pair[1] not in selected_residues: 134 | pymol.cmd.hide('labels', selection_string2) 135 | pymol.cmd.disable(pair_string) 136 | return 137 | 138 | def pairs_to_residues(pairs): 139 | residues = [] 140 | for i in range(len(pairs)): 141 | for j in range(len(pairs[0])): 142 | if pairs[i][j] not in residues: 143 | residues.append(pairs[i][j]) 144 | return (residues) 145 | 146 | def get_top_10(pairs, values): 147 | top_pairs = [] 148 | absolute_values = [] 149 | size_10_percent = len(values)//10 150 | for value in values: 151 | absolute_values.append(abs(value)) 152 | absolute_values.sort(reverse=True) 153 | top_values = absolute_values[:size_10_percent] 154 | for f in range(len(pairs)): 155 | if len(top_pairs) <= len(top_values): 156 | if (values[f] in top_values) or (-1*values[f] in top_values): 157 | top_pairs.append(pairs[f]) 158 | return (top_pairs) 159 | 160 | def all_pairs_from_interest(pairs, residues_of_interest): 161 | selected_pairs = [] 162 | for pair in pairs: 163 | if pair[0] in residues_of_interest or pair[1] in residues_of_interest: 164 | selected_pairs.append(pair) 165 | return (selected_pairs) 166 | 167 | def split_states(residues, pdb_file): 168 | chains = [] 169 | for res in residues: 170 | type_res, chain_res, num_res = read_residue(res) 171 | if chain_res not in chains: 172 | chains.append(chain_res) 173 | for C in chains: 174 | pymol.cmd.select('chain ' + C) 175 | pymol.cmd.extract('chain' + C, 'sele') 176 | pymol.cmd.delete(pdb_file[:-4]) 177 | return (chains) 178 | 179 | def show_separate_surfaces(chains): 180 | for C in chains: 181 | pymol.cmd.show('surface', 'chain' + C) 182 | return 183 | 184 | def generate_session(pdb_file, surfaces_file, residues_of_interest=None, color_scale=None, color_scale_range=None): 185 | residues, values = get_sum_per_residue(surfaces_file) 186 | color_codes = generate_color_scale(values, color_scale_range, color_scale) 187 | pymol.cmd.load(pdb_file) 188 | pymol.cmd.color('grey60', pdb_file[:-4]) 189 | chains = split_states(residues, pdb_file) 190 | for C in chains: 191 | pymol.cmd.set("cartoon_transparency", 0.55, 'chain' + C) 192 | for i in range(len(residues)): 193 | if values[i] != 0: 194 | color_residue(residues[i], color_codes[i]) 195 | pairs, values = get_pairs_contacts(surfaces_file) 196 | if residues_of_interest is None: 197 | selected_pairs = get_top_10(pairs, values) # get pairs with largest absolute value of interaction - top 10% 198 | else: 199 | residues_of_interest = list(residues_of_interest.split(",")) 200 | selected_pairs = all_pairs_from_interest(pairs, residues_of_interest) 201 | color_codes = generate_color_scale(values, color_scale_range, color_scale) 202 | for j in range(len(pairs)): 203 | color_distance(pairs[j], values[j], color_codes[j], selected_pairs) 204 | for k in range(len(pairs)): 205 | label_pairs(pairs[k], selected_pairs) 206 | show_separate_surfaces(chains) 207 | return 208 | 209 | 210 | """ 211 | USAGE: 212 | generate_session(pdb_file, input_csv_file, residues_of_interest, color_scale, color_scale_range) 213 | """ 214 | -------------------------------------------------------------------------------- /surface_cont.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | #Imports 6 | import argparse 7 | import sys 8 | import os 9 | import re 10 | import pandas as pd 11 | from vconpy import run_vcon 12 | 13 | 14 | #Useful dicts 15 | aa = {'C':'CYS', 'D':'ASP', 'S':'SER', 'Q':'GLN', 'K':'LYS', 'I':'ILE', 'P':'PRO', 'T':'THR', 'F':'PHE', 'N':'ASN', 'G':'GLY', 'H':'HIS', 'L':'LEU', 'R':'ARG', 'W':'TRP', 'A':'ALA', 'V':'VAL', 'E':'GLU', 'Y':'TYR', 'M':'MET'} 16 | 17 | #Input of pdb file and the 2 chains between which we want to evaluate the interactions 18 | 19 | def read_residues(pdb_file, chain1, chain2): 20 | list_chain1 = [] 21 | list_chain2 = [] 22 | f = open(pdb_file, 'r') 23 | Lines = f.readlines() 24 | for line in Lines: 25 | if (line[:4] == 'ATOM' or line[:4] == 'HETA'): 26 | if line[21] in chain1: 27 | res_num = re.findall(r'[+-]?\d+',line[22:27]) 28 | res_name = line[17:20] 29 | string = res_name + str(res_num[0]) + line[21] 30 | if string not in list_chain1: 31 | list_chain1.append(string) 32 | if line[21] in chain2: 33 | res_num = re.findall(r'[+-]?\d+',line[22:27]) 34 | res_name = line[17:20] 35 | string = res_name + str(res_num[0]) + line[21] 36 | if string not in list_chain2: 37 | list_chain2.append(string) 38 | chains = chain1 + chain2 39 | atoms_numbers = [] 40 | for k in range(len(chains)): 41 | atoms_numbers.append([]) 42 | for line in Lines: 43 | for i in range(len(chains)): 44 | if (line[:4] == 'ATOM' or line[:4] == 'HETA') and line[21] == chains[i]: 45 | atoms_numbers[i].append(int(line[6:12])) 46 | return (list_chain1, list_chain2, chains, atoms_numbers) 47 | 48 | #Function to generate the file with the output of perl code vcont.pl 49 | 50 | def vcon(pdb_name): 51 | #run_vcon(pdb_name, showbonded=True) 52 | os.system(f"./vcon {pdb_name} > {pdb_name[:-4]}.vcon") 53 | 54 | def get_chain(atom, og_chain, chains, atom_numbers): 55 | if og_chain in chains: 56 | index = chains.index(og_chain) 57 | else: 58 | return (og_chain) 59 | if atom in atom_numbers[index]: 60 | return (og_chain) 61 | else: 62 | for i in range(len(chains)): 63 | if i != index: 64 | if atom in atom_numbers[i]: 65 | return (chains[i]) 66 | return (0) 67 | 68 | #Functions to open vcon results, .def and .dat for atom types interactions 69 | 70 | def read_atom(line): 71 | atnum = int(line[:6]) 72 | attype = line[8:11] 73 | resnum = int(line[12:17]) 74 | res = line[19:22] 75 | chain = line[23:24] 76 | return (atnum,attype,resnum,res,chain) 77 | 78 | def read_surface(line): 79 | # Extract all floats on the line (handles 0, 0., 1.23, 1e-3, etc.) 80 | floats = re.findall(r'[-+]?(?:\d*\.\d+|\d+)(?:[eE][-+]?\d+)?', line) 81 | if 'Sol_acc_surf' in line: 82 | # Atom header line: only one numeric value at the end (the solvent-accessible area) 83 | return float(floats[-1]) 84 | else: 85 | # Contact line: last two numbers are AREA and DIST → take penultimate as AREA 86 | if len(floats) < 2: 87 | raise ValueError(f"Could not find AREA/DIST on line: {line!r}") 88 | return float(floats[-2]) 89 | 90 | def read_interactions(file, matrix, chain1, chain2, def_file, dat_file, atom_numbers, scale_factor): 91 | chains = chain1 + chain2 92 | f = open(file, 'r') 93 | Lines = f.readlines() 94 | for line in Lines: 95 | if line[:1] != '#' and line != '\n': 96 | if line[31:34] == 'Sol': 97 | main_line = line 98 | main_atnum,main_attype,main_resnum,main_res,main_chain = read_atom(main_line) 99 | fixed_main_chain = get_chain(main_atnum,main_chain,chains,atom_numbers) 100 | if fixed_main_chain != 0: 101 | main_residue = main_res+str(main_resnum)+fixed_main_chain 102 | else: 103 | atnum,attype,resnum,res,chain = read_atom(line[22:]) 104 | fixed_other_chain = get_chain(atnum,chain,chains,atom_numbers) 105 | if fixed_other_chain != 0: 106 | other_residue = res+str(resnum)+fixed_other_chain 107 | surf = read_surface(line) 108 | if (fixed_other_chain in chain1 and fixed_main_chain in chain2) or (fixed_other_chain in chain2 and fixed_main_chain in chain1): 109 | if fixed_main_chain in chain2: 110 | matrix.loc[other_residue, main_residue] += (surf * score(main_attype, main_res, attype, res, def_file, dat_file) * scale_factor)/2 111 | if fixed_main_chain in chain1: 112 | matrix.loc[main_residue, other_residue] += (surf * score(main_attype, main_res, attype, res, def_file, dat_file) * scale_factor)/2 113 | return(matrix) 114 | 115 | #get the atom type number from def file of choice 116 | def atomtype_num(def_file, res, attyp): 117 | attyp = attyp.replace(" ", "") 118 | f = open(def_file, 'r') 119 | Lines = f.readlines() 120 | for i in range(len(Lines)): 121 | if Lines[i][:3] == res: 122 | ind = Lines[i].index(attyp+':') 123 | ind_end = Lines[i][ind:].index(',') 124 | attype_num = int(Lines[i][ind+len(attyp)+1:ind+ind_end]) 125 | f.close() 126 | return(attype_num) 127 | 128 | #get the interaction between atom type 1 and atom type 2 from dat file of choice 129 | def interactions(dat_file, at1, at2): 130 | if len(str(at1)) == 1: 131 | at1 = ' ' + str(at1) 132 | if len(str(at2)) == 1: 133 | at2 = ' ' + str(at2) 134 | f = open(dat_file, 'r') 135 | Lines = f.readlines() 136 | for line in Lines: 137 | if str(at1)+'-'+str(at2) == line[5:10] or str(at2)+'-'+str(at1) == line[5:10]: 138 | interact = float(line[13:]) 139 | f.close() 140 | return(interact) 141 | 142 | #get the final score based on atom type num and interactions 143 | def score(attype1, res1, attype2, res2, def_file, dat_file): 144 | at1 = atomtype_num(def_file, res1, attype1) 145 | at2 = atomtype_num(def_file, res2, attype2) 146 | value = interactions(dat_file, at1, at2) 147 | return (value) 148 | 149 | #create file of list of interactions 150 | def list_file(matrix,output_name): 151 | residues1 = [] 152 | residues2 = [] 153 | values = [] 154 | abs_values = [] 155 | for i in range(len(matrix.index)): 156 | for j in range(len(matrix.columns)): 157 | num = matrix.loc[matrix.index[i], matrix.columns[j]] 158 | if num != 0: 159 | residues1.append(matrix.index[i]) 160 | residues2.append(matrix.columns[j]) 161 | values.append(num) 162 | abs_values.append(abs(num)) 163 | sorted_residues1 = [x for _,x in sorted(zip(abs_values,residues1),reverse=True)] 164 | sorted_residues2 = [x for _,x in sorted(zip(abs_values,residues2),reverse=True)] 165 | sorted_values = [x for _,x in sorted(zip(abs_values,values),reverse=True)] 166 | f = open(output_name[:-4] + "_list.txt", "w") 167 | for k in range(len(values)): 168 | f.write(sorted_residues1[k] + "," + sorted_residues2[k] + "," + str(sorted_values[k]) + "\n") 169 | f.close() 170 | return 171 | 172 | def main(): 173 | 174 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 175 | parser.add_argument("-f","--pdb_file", action="store") 176 | parser.add_argument("-c1","--chain1", action="store") 177 | parser.add_argument("-c2","--chain2", action="store") 178 | parser.add_argument("-o","--output_name", action="store") 179 | parser.add_argument("-def","--atomtypes_definition", action="store") 180 | parser.add_argument("-dat","--atomtypes_interactions", action="store") 181 | args=parser.parse_args() 182 | 183 | res1, res2, chains, atom_numbers = read_residues(args.pdb_file, args.chain1, args.chain2) 184 | #print (res1, res2) 185 | #print (chains, atom_numbers) 186 | 187 | vcon(args.pdb_file) 188 | 189 | matrix = [ [ 0.0 for i in range(len(res2)) ] for j in range(len(res1)) ] 190 | matrix = pd.DataFrame(matrix) 191 | matrix.columns = res2 192 | matrix.index = res1 193 | 194 | # Determined according to the AB-Bind dataset results 195 | scale_factor = 0.00024329 196 | 197 | matrix = read_interactions(args.pdb_file[:-4]+".vcon", matrix, args.chain1, args.chain2, args.atomtypes_definition, args.atomtypes_interactions, atom_numbers, scale_factor) 198 | 199 | matrix.to_csv(args.output_name) 200 | 201 | list_file(matrix,args.output_name) 202 | 203 | os.remove(args.pdb_file[:-4]+".vcon") 204 | 205 | return 206 | 207 | main() 208 | -------------------------------------------------------------------------------- /surface_cont_res.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | #Imports 6 | import argparse 7 | import sys 8 | import os 9 | import re 10 | import pandas as pd 11 | 12 | 13 | #Useful dicts 14 | aa = {'C':'CYS', 'D':'ASP', 'S':'SER', 'Q':'GLN', 'K':'LYS', 'I':'ILE', 'P':'PRO', 'T':'THR', 'F':'PHE', 'N':'ASN', 'G':'GLY', 'H':'HIS', 'L':'LEU', 'R':'ARG', 'W':'TRP', 'A':'ALA', 'V':'VAL', 'E':'GLU', 'Y':'TYR', 'M':'MET'} 15 | 16 | #Input of pdb file and list of residues for us to evaluate the interactions 17 | 18 | def get_residue_name(pdb_line): 19 | res_num = re.findall('\d',pdb_line[22:27]) 20 | res_num = int(''.join(res_num)) 21 | res_name = pdb_line[17:20] 22 | string = res_name + str(res_num) + pdb_line[21] 23 | return (string) 24 | 25 | def read_chains(pdb_file): 26 | chains = [] 27 | atoms = [] 28 | residues = [] 29 | f = open(pdb_file, 'r') 30 | Lines = f.readlines() 31 | for line in Lines: 32 | if line[:4] == 'ATOM' or line[:4] == 'HETE': 33 | # correspondent chain for each atom 34 | chain = line[21] 35 | if chain not in chains: 36 | chains.append(chain) 37 | atoms.append([int(line[6:12])]) 38 | else: 39 | index = chains.index(chain) 40 | atoms[index].append(int(line[6:12])) 41 | # correct names for each residue 42 | string = get_residue_name(line) 43 | if string not in residues: 44 | residues.append(string) 45 | return (residues, chains, atoms) 46 | 47 | def read_residues(pdb_file, list_residues): 48 | sele_atom_numbers = [] 49 | for k in range(len(list_residues)): 50 | sele_atom_numbers.append([]) 51 | f = open(pdb_file, 'r') 52 | Lines = f.readlines() 53 | for line in Lines: 54 | for i in range(len(list_residues)): 55 | if (line[:4] == 'ATOM' or line[:4] == 'HETA') and (get_residue_name(line)==list_residues[i]): 56 | sele_atom_numbers[i].append(int(line[6:12])) 57 | return (sele_atom_numbers) 58 | 59 | #Function to generate the file with the output of vcon 60 | 61 | def vcon(pdb_name): 62 | string = f'{os.path.join(".", "vcon")} {pdb_name} > vcon_file.txt' 63 | os.system(string) 64 | 65 | #Functions to fix the names of the chains 66 | 67 | def get_chain(atom, og_chain, chains, atom_numbers): 68 | if og_chain in chains: 69 | index = chains.index(og_chain) 70 | else: 71 | return (og_chain) 72 | if atom in atom_numbers[index]: 73 | return (og_chain) 74 | else: 75 | for i in range(len(chains)): 76 | if i != index: 77 | if atom in atom_numbers[i]: 78 | return (chains[i]) 79 | return (0) 80 | 81 | #Functions to open vcon results, .def and .dat for atom types interactions 82 | 83 | def read_atom(line): 84 | atnum = int(line[:6]) 85 | attype = line[8:11] 86 | resnum = int(line[12:17]) 87 | res = line[19:22] 88 | chain = line[23:24] 89 | return (atnum,attype,resnum,res,chain) 90 | 91 | def read_surface(line): 92 | # Extract all floats on the line (handles 0, 0., 1.23, 1e-3, etc.) 93 | floats = re.findall(r'[-+]?(?:\d*\.\d+|\d+)(?:[eE][-+]?\d+)?', line) 94 | if 'Sol_acc_surf' in line: 95 | # Atom header line: only one numeric value at the end (the solvent-accessible area) 96 | return float(floats[-1]) 97 | else: 98 | # Contact line: last two numbers are AREA and DIST → take penultimate as AREA 99 | if len(floats) < 2: 100 | raise ValueError(f"Could not find AREA/DIST on line: {line!r}") 101 | return float(floats[-2]) 102 | 103 | def read_interactions(file, matrix, chains, sele_res, all_res, def_file, dat_file, atom_numbers, scale_factor): 104 | f = open(file, 'r') 105 | Lines = f.readlines() 106 | for line in Lines: 107 | if line[:1] != '#' and line != '\n': 108 | if line[31:34] == 'Sol': 109 | main_line = line 110 | main_atnum,main_attype,main_resnum,main_res,main_chain = read_atom(main_line) 111 | fixed_main_chain = get_chain(main_atnum,main_chain,chains,atom_numbers) 112 | if fixed_main_chain != 0: 113 | main_residue = main_res+str(main_resnum)+fixed_main_chain 114 | else: 115 | atnum,attype,resnum,res,chain = read_atom(line[22:]) 116 | fixed_other_chain = get_chain(atnum,chain,chains,atom_numbers) 117 | if fixed_other_chain != 0: 118 | other_residue = res+str(resnum)+fixed_other_chain 119 | surf = read_surface(line) 120 | if main_residue in sele_res: 121 | matrix.loc[main_residue, other_residue] += (surf * score(main_attype, main_res, attype, res, def_file, dat_file) * scale_factor)/2 122 | if other_residue in sele_res: 123 | matrix.loc[other_residue, main_residue] += (surf * score(main_attype, main_res, attype, res, def_file, dat_file) * scale_factor)/2 124 | 125 | 126 | return(matrix) 127 | 128 | #get the atom type number from def file of choice 129 | def atomtype_num(def_file, res, attyp): 130 | attyp = attyp.replace(" ", "") 131 | f = open(def_file, 'r') 132 | Lines = f.readlines() 133 | for i in range(len(Lines)): 134 | if Lines[i][:3] == res: 135 | ind = Lines[i].index(attyp+':') 136 | ind_end = Lines[i][ind:].index(',') 137 | attype_num = int(Lines[i][ind+len(attyp)+1:ind+ind_end]) 138 | f.close() 139 | return(attype_num) 140 | 141 | #get the interaction between atom type 1 and atom type 2 from dat file of choice 142 | def interactions(dat_file, at1, at2): 143 | if len(str(at1)) == 1: 144 | at1 = ' ' + str(at1) 145 | if len(str(at2)) == 1: 146 | at2 = ' ' + str(at2) 147 | f = open(dat_file, 'r') 148 | Lines = f.readlines() 149 | for line in Lines: 150 | if str(at1)+'-'+str(at2) == line[5:10] or str(at2)+'-'+str(at1) == line[5:10]: 151 | interact = float(line[13:]) 152 | f.close() 153 | return(interact) 154 | 155 | #get the final score based on atom type num and interactions 156 | def score(attype1, res1, attype2, res2, def_file, dat_file): 157 | at1 = atomtype_num(def_file, res1, attype1) 158 | at2 = atomtype_num(def_file, res2, attype2) 159 | value = interactions(dat_file, at1, at2) 160 | return (value) 161 | 162 | #create file of list of interactions 163 | def list_file(matrix,output_name): 164 | residues1 = [] 165 | residues2 = [] 166 | values = [] 167 | abs_values = [] 168 | for i in range(len(matrix.index)): 169 | for j in range(len(matrix.columns)): 170 | num = matrix.loc[matrix.index[i], matrix.columns[j]] 171 | if num != 0: 172 | residues1.append(matrix.index[i]) 173 | residues2.append(matrix.columns[j]) 174 | values.append(num) 175 | abs_values.append(abs(num)) 176 | sorted_residues1 = [x for _,x in sorted(zip(abs_values,residues1),reverse=True)] 177 | sorted_residues2 = [x for _,x in sorted(zip(abs_values,residues2),reverse=True)] 178 | sorted_values = [x for _,x in sorted(zip(abs_values,values),reverse=True)] 179 | f = open("List_" + output_name[:-4] + ".txt", "w") 180 | for k in range(len(values)): 181 | f.write(sorted_residues1[k] + "," + sorted_residues2[k] + "," + str(sorted_values[k]) + "\n") 182 | f.close() 183 | return 184 | 185 | def main(): 186 | 187 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 188 | parser.add_argument("-f","--pdb_file", action="store") 189 | parser.add_argument("-res","--list_residues", action="store") 190 | parser.add_argument("-o","--output_name", action="store") 191 | parser.add_argument("-def","--atomtypes_definition", action="store") 192 | parser.add_argument("-dat","--atomtypes_interactions", action="store") 193 | args=parser.parse_args() 194 | 195 | sele_res = list(args.list_residues.split(",")) 196 | #print (sele_res) 197 | all_res, chains, atom_numbers = read_chains(args.pdb_file) 198 | 199 | vcon(args.pdb_file) 200 | 201 | matrix = [ [ 0.0 for i in range(len(all_res)) ] for j in range(len(sele_res)) ] 202 | matrix = pd.DataFrame(matrix) 203 | matrix.columns = all_res 204 | matrix.index = sele_res 205 | 206 | # Determined according to the AB-Bind dataset results 207 | scale_factor = 0.00024329 208 | 209 | matrix = read_interactions('vcon_file.txt', matrix, chains, sele_res, all_res, args.atomtypes_definition, args.atomtypes_interactions, atom_numbers, scale_factor) 210 | 211 | matrix.to_csv(args.output_name) 212 | 213 | list_file(matrix,args.output_name) 214 | 215 | os.remove('vcon_file.txt') 216 | 217 | return 218 | 219 | main() 220 | -------------------------------------------------------------------------------- /surface_cont_lig.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | #Imports 6 | import argparse 7 | import sys 8 | import os 9 | import re 10 | import pandas as pd 11 | 12 | 13 | #Useful dicts 14 | aa = {'C':'CYS', 'D':'ASP', 'S':'SER', 'Q':'GLN', 'K':'LYS', 'I':'ILE', 'P':'PRO', 'T':'THR', 'F':'PHE', 'N':'ASN', 'G':'GLY', 'H':'HIS', 'L':'LEU', 'R':'ARG', 'W':'TRP', 'A':'ALA', 'V':'VAL', 'E':'GLU', 'Y':'TYR', 'M':'MET'} 15 | 16 | #Input of pdb file and the 2 chains between which we want to evaluate the interactions 17 | 18 | def read_residues(pdb_file, chains, ligands): 19 | list_chains = [] 20 | list_atoms = [] 21 | f = open(pdb_file, 'r') 22 | Lines = f.readlines() 23 | for line in Lines: 24 | if (line[:4] == 'ATOM' or line[:4] == 'HETA'): 25 | if line[21] in chains: 26 | res_num = re.findall('[+-]?\d+',line[22:27]) 27 | res_name = line[17:20] 28 | string = res_name + str(res_num[0]) + line[21] 29 | if string not in list_chains and res_name not in ligands: 30 | list_chains.append(string) 31 | if line[17:20] in ligands: 32 | atom_name = line[12:16].strip() 33 | atom_number = re.findall('[+-]?\d+',line[6:12]) 34 | string = str(atom_number[0]) + atom_name 35 | list_atoms.append(string) 36 | atoms_numbers = [] 37 | for k in range(len(chains)): 38 | atoms_numbers.append([]) 39 | for line in Lines: 40 | for i in range(len(chains)): 41 | if (line[:4] == 'ATOM' or line[:4] == 'HETA') and line[21] == chains[i]: 42 | atoms_numbers[i].append(int(line[6:12])) 43 | return (list_chains, list_atoms, atoms_numbers) 44 | 45 | #Function to generate the file with the output of perl code vcont.pl 46 | 47 | def vcon(pdb_name): 48 | string = f'{os.path.join(".", "vcon")} {pdb_name} > vcon_file.txt' 49 | os.system(string) 50 | 51 | #Functions to fix the names of the chains 52 | 53 | def total_chains(pdb_file): 54 | all_chains = [] 55 | f = open(pdb_file, 'r') 56 | Lines = f.readlines() 57 | for line in Lines: 58 | if (line[:4] == 'ATOM' or line[:4] == 'HETA'): 59 | if line[21] not in all_chains: 60 | all_chains.append(line[21]) 61 | return (all_chains) 62 | 63 | def get_chain(atom, og_chain, chains, atom_numbers): 64 | if og_chain in chains: 65 | index = chains.index(og_chain) 66 | else: 67 | return (og_chain) 68 | if atom in atom_numbers[index]: 69 | return (og_chain) 70 | else: 71 | for i in range(len(chains)): 72 | if i != index: 73 | if atom in atom_numbers[i]: 74 | return (chains[i]) 75 | return (0) 76 | 77 | #Functions to open vcon results, AMINO.def and MC_st0r5.2_6.dat for atom types interactions 78 | 79 | def read_atom(line): 80 | atnum = int(line[:6]) 81 | attype = line[7:11].strip() 82 | resnum = int(line[12:17]) 83 | res = line[19:22] 84 | chain = line[23:24] 85 | return (atnum,attype,resnum,res,chain) 86 | 87 | def read_surface(line): 88 | # Extract all floats on the line (handles 0, 0., 1.23, 1e-3, etc.) 89 | floats = re.findall(r'[-+]?(?:\d*\.\d+|\d+)(?:[eE][-+]?\d+)?', line) 90 | if 'Sol_acc_surf' in line: 91 | # Atom header line: only one numeric value at the end (the solvent-accessible area) 92 | return float(floats[-1]) 93 | else: 94 | # Contact line: last two numbers are AREA and DIST → take penultimate as AREA 95 | if len(floats) < 2: 96 | raise ValueError(f"Could not find AREA/DIST on line: {line!r}") 97 | return float(floats[-2]) 98 | 99 | def read_interactions(file, matrix, chains, ligands, def_file, dat_file, all_chains, atom_numbers, scale_factor): 100 | f = open(file, 'r') 101 | Lines = f.readlines() 102 | for line in Lines: 103 | if line[:1] != '#' and line != '\n': 104 | if line[31:34] == 'Sol': 105 | atnum,attype,resnum,res,chain = read_atom(line) 106 | fixed_chain = get_chain(atnum,chain,all_chains,atom_numbers) 107 | if res in ligands: 108 | atom_name = str(atnum) + attype 109 | else: 110 | main_atnum,main_attype,main_resnum,main_res,main_chain = read_atom(line[22:]) 111 | fixed_main_chain = get_chain(main_atnum,main_chain,all_chains,atom_numbers) 112 | if fixed_main_chain != 0: 113 | if main_res not in ligands: 114 | main_residue = main_res+str(main_resnum)+fixed_main_chain 115 | surf = read_surface(line) 116 | if (fixed_main_chain in chains) and (res in ligands): 117 | matrix.loc[main_residue, atom_name] += (surf * score(main_attype, main_res, attype, res, def_file, dat_file) * scale_factor) 118 | 119 | return(matrix) 120 | 121 | 122 | #get the atom type number from def file of choice 123 | def atomtype_num(def_file, res, attyp): 124 | attyp = attyp.replace(" ", "") 125 | f = open(def_file, 'r') 126 | Lines = f.readlines() 127 | for i in range(len(Lines)): 128 | if Lines[i][:3] == res: 129 | ind = Lines[i].index(attyp+':') 130 | ind_end = Lines[i][ind:].index(',') 131 | attype_num = int(Lines[i][ind+len(attyp)+1:ind+ind_end]) 132 | f.close() 133 | return(attype_num) 134 | 135 | #get the interaction between atom type 1 and atom type 2 from dat file of choice 136 | def interactions(dat_file, at1, at2): 137 | if len(str(at1)) == 1: 138 | at1 = ' ' + str(at1) 139 | if len(str(at2)) == 1: 140 | at2 = ' ' + str(at2) 141 | f = open(dat_file, 'r') 142 | Lines = f.readlines() 143 | for line in Lines: 144 | if str(at1)+'-'+str(at2) == line[5:10] or str(at2)+'-'+str(at1) == line[5:10]: 145 | interact = float(line[13:]) 146 | f.close() 147 | return(interact) 148 | 149 | #get the final score based on atom type num and interactions 150 | def score(attype1, res1, attype2, res2, def_file, dat_file): 151 | at1 = atomtype_num(def_file, res1, attype1) 152 | at2 = atomtype_num(def_file, res2, attype2) 153 | value = interactions(dat_file, at1, at2) 154 | return (value) 155 | 156 | #create file of list of interactions 157 | def list_file(matrix,output_name): 158 | residues1 = [] 159 | residues2 = [] 160 | values = [] 161 | abs_values = [] 162 | for i in range(len(matrix.index)): 163 | for j in range(len(matrix.columns)): 164 | num = matrix.loc[matrix.index[i], matrix.columns[j]] 165 | if num != 0: 166 | residues1.append(matrix.index[i]) 167 | residues2.append(matrix.columns[j]) 168 | values.append(num) 169 | abs_values.append(abs(num)) 170 | sorted_residues1 = [x for _,x in sorted(zip(abs_values,residues1),reverse=True)] 171 | sorted_residues2 = [x for _,x in sorted(zip(abs_values,residues2),reverse=True)] 172 | sorted_values = [x for _,x in sorted(zip(abs_values,values),reverse=True)] 173 | f = open("List_" + output_name[:-4] + ".txt", "w") 174 | for k in range(len(values)): 175 | f.write(sorted_residues1[k] + "," + sorted_residues2[k] + "," + str(sorted_values[k]) + "\n") 176 | f.close() 177 | return 178 | 179 | def main(): 180 | 181 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 182 | parser.add_argument("-f","--pdb_file", action="store") 183 | parser.add_argument("-c","--chains", action="store") 184 | parser.add_argument("-lig","--ligand", action="store") 185 | parser.add_argument("-o","--output_name", action="store") 186 | parser.add_argument("-def","--atomtypes_definition", action="store") 187 | parser.add_argument("-dat","--atomtypes_interactions", action="store") 188 | args=parser.parse_args() 189 | 190 | list_ligands = args.ligand.split(",") 191 | all_chains = total_chains(args.pdb_file) 192 | res, atoms, atom_numbers = read_residues(args.pdb_file, args.chains, list_ligands) 193 | #print (res, atoms) 194 | #print (args.chains, atom_numbers) 195 | 196 | vcon(args.pdb_file) 197 | 198 | matrix = [ [ 0.0 for i in range(len(atoms)) ] for j in range(len(res)) ] 199 | matrix = pd.DataFrame(matrix) 200 | matrix.columns = atoms 201 | matrix.index = res 202 | 203 | # Determined according to the AB-Bind dataset results 204 | scale_factor = 0.00024329 205 | res, atoms, atom_numbers = read_residues(args.pdb_file, all_chains, list_ligands) 206 | matrix = read_interactions('vcon_file.txt', matrix, args.chains, list_ligands, args.atomtypes_definition, args.atomtypes_interactions, all_chains, atom_numbers, scale_factor) 207 | 208 | matrix.to_csv(args.output_name) 209 | 210 | list_file(matrix,args.output_name) 211 | 212 | # remove files 213 | os.remove("vcon_file.txt") 214 | 215 | return () 216 | 217 | main() 218 | -------------------------------------------------------------------------------- /pymol_image_surfaces_lig.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | #Imports 6 | import argparse 7 | import sys 8 | import pymol 9 | import pandas as pd 10 | from colour import Color 11 | 12 | def get_sum_per_residue(surfaces_file): 13 | residues = [] 14 | values_residues = [] 15 | atoms = [] 16 | values_atoms = [] 17 | surf = pd.read_csv(surfaces_file, index_col=0) 18 | sum_column = surf.sum() 19 | sum_row = surf.sum(axis='columns') 20 | for x in range(len(sum_column)): 21 | values_atoms.append(sum_column[x]) 22 | atoms.append(surf.columns[x]) 23 | for y in range(len(sum_row)): 24 | values_residues.append(sum_row[y]) 25 | residues.append(surf.index[y]) 26 | return (residues, atoms, values_residues, values_atoms) 27 | 28 | def get_pairs_contacts(surfaces_file): 29 | pairs = [] 30 | values = [] 31 | surf = pd.read_csv(surfaces_file, index_col=0) 32 | for i in range (len(surf.index)): 33 | for j in range (len(surf.columns)): 34 | if surf.loc[surf.index[i],surf.columns[j]] != 0: 35 | pairs.append([surf.index[i],surf.columns[j]]) 36 | values.append(surf.loc[surf.index[i],surf.columns[j]]) 37 | return (pairs, values) 38 | 39 | def read_residue(res): 40 | type_res = res[:3] 41 | chain_res = res[-1] 42 | num_res = res[3:-1] 43 | return (type_res, chain_res, num_res) 44 | 45 | def read_atom(atom): 46 | atom_num = '' 47 | atom_name = '' 48 | num = True 49 | for i in range(len(atom)): 50 | if atom[i].isnumeric() and num: 51 | atom_num = atom_num + atom[i] 52 | else: 53 | num = False 54 | atom_name = atom_name + atom[i] 55 | return (atom_name, atom_num) 56 | 57 | def color_residue(res, color): 58 | type_res, chain_res, num_res = read_residue(res) 59 | selection_string = 'chain' + chain_res + ' and resi ' + num_res 60 | pymol.cmd.set_color(res, color) 61 | pymol.cmd.select(selection_string) 62 | #pymol.cmd.show('spheres', 'sele') 63 | pymol.cmd.set("cartoon_transparency", 0.00, 'sele') 64 | pymol.cmd.color(res, 'sele') 65 | pymol.cmd.delete('sele') 66 | return 67 | 68 | def generate_color_scale(values, color_scale_range, color_scale): 69 | 70 | if color_scale is None: 71 | top_color = "red" 72 | mid_color = "white" 73 | bottom_color = "blue" 74 | else: 75 | color_scale = list(color_scale[1:-1].split(",")) 76 | top_color = color_scale[2] 77 | mid_color = color_scale[1] 78 | bottom_color = color_scale[0] 79 | 80 | Total_colors = [] 81 | 82 | for i in range(5): 83 | c = Color(bottom_color, saturation=1/(i+1)) 84 | Total_colors.append(c.rgb) 85 | white = Color(mid_color) 86 | Total_colors.append(white.rgb) 87 | for i in range(5): 88 | c = Color(top_color, saturation=1/(5-i)) 89 | Total_colors.append(c.rgb) 90 | #print (Total_colors) 91 | 92 | if color_scale_range is None: 93 | max_value = max(values) 94 | min_value = min(values) 95 | if abs(min_value) > abs(max_value): 96 | range_value = 2 * abs(min_value) 97 | else: 98 | range_value = 2 * abs(max_value) 99 | step_value = range_value/10 100 | else: 101 | min_value = float(color_scale_range[0]) 102 | max_value = float(color_scale_range[1]) 103 | range_value = max_value - min_value 104 | step_value = range_value/10 105 | 106 | color_codes = [] 107 | for value in values: 108 | s = range_value/2 - (-1*value) 109 | n = int(s // step_value) 110 | if n < 0: 111 | n = 0 112 | elif n > len(Total_colors): 113 | n = len(Total_colors) 114 | color_codes.append(list(Total_colors[n])) 115 | 116 | return (color_codes) 117 | 118 | def color_distance(pair, value, color, selected_pairs): 119 | #create distance object 120 | distance_string = 'dashed_' + pair[0] + '-' + pair[1] 121 | distance_string = distance_string.replace("'", "") 122 | type_res, chain_res, num_res = read_residue(pair[0]) 123 | atom_name, atom_num = read_atom(pair[1]) 124 | selection_string1 = 'chain' + chain_res + ' and resi ' + num_res + ' and n. CA' 125 | selection_string2 = 'id ' + atom_num 126 | pymol.cmd.set_color(distance_string, color) 127 | pymol.cmd.distance(distance_string, selection_string1, selection_string2) 128 | pymol.cmd.color(distance_string, distance_string) 129 | pymol.cmd.hide('labels', distance_string) 130 | if pair not in selected_pairs: 131 | pymol.cmd.disable(distance_string) 132 | return 133 | 134 | def label_pairs(pair,selected_pairs): 135 | #create selection 136 | pair_string = pair[0] + '-' + pair[1] 137 | type_res, chain_res, num_res = read_residue(pair[0]) 138 | atom_name, atom_num = read_atom(pair[1]) 139 | selection_string1 = 'chain' + chain_res + ' and resi ' + num_res + ' and n. CA' 140 | selection_string2 = 'id ' + atom_num 141 | pymol.cmd.select(pair_string, selection_string1 + ' ' + selection_string2) 142 | #label residues 143 | pymol.cmd.label(selection_string1,"'%s %s %s' %(resn,resi,chain)") 144 | selected_residues = pairs_to_residues(selected_pairs) 145 | if pair[0] not in selected_residues: 146 | pymol.cmd.hide('labels', selection_string1) 147 | pymol.cmd.disable(pair_string) 148 | return 149 | 150 | def pairs_to_residues(pairs): 151 | residues = [] 152 | for i in range(len(pairs)): 153 | for j in range(len(pairs[0])): 154 | if pairs[i][j] not in residues: 155 | residues.append(pairs[i][j]) 156 | return (residues) 157 | 158 | def get_top_10(pairs, values): 159 | top_pairs = [] 160 | absolute_values = [] 161 | size_10_percent = len(values)//10 162 | for value in values: 163 | absolute_values.append(abs(value)) 164 | absolute_values.sort(reverse=True) 165 | top_values = absolute_values[:size_10_percent] 166 | for f in range(len(pairs)): 167 | if len(top_pairs) <= len(top_values): 168 | if (values[f] in top_values) or (-1*values[f] in top_values): 169 | top_pairs.append(pairs[f]) 170 | return (top_pairs) 171 | 172 | def all_pairs_from_interest(pairs, residues_of_interest): 173 | selected_pairs = [] 174 | for pair in pairs: 175 | if pair[0] in residues_of_interest or pair[1] in residues_of_interest: 176 | selected_pairs.append(pair) 177 | return (selected_pairs) 178 | 179 | def split_states(residues, atoms, pdb_file): 180 | chains = [] 181 | atom_nums = [] 182 | for res in residues: 183 | type_res, chain_res, num_res = read_residue(res) 184 | if chain_res not in chains: 185 | chains.append(chain_res) 186 | for C in chains: 187 | pymol.cmd.select('chain ' + C) 188 | pymol.cmd.extract('chain' + C, 'sele') 189 | for atom in atoms: 190 | atom_name, atom_num = read_atom(atom) 191 | atom_nums.append(atom_num) 192 | selection_string = '' 193 | for num in atom_nums: 194 | selection_string = selection_string + num + '+' 195 | pymol.cmd.select('id ' + selection_string[:-1]) 196 | pymol.cmd.extract('ligand', 'sele') 197 | pymol.cmd.delete(pdb_file[:-4]) 198 | return (chains) 199 | 200 | def show_separate_surfaces(chains): 201 | for C in chains: 202 | pymol.cmd.show('surface', 'chain' + C) 203 | #pymol.cmd.set('transparency', 0.7, 'chain' + C) 204 | return 205 | 206 | def color_ligands(): 207 | pymol.cmd.color("cyan",'ligand') 208 | pymol.util.cnc('ligand') 209 | return 210 | 211 | def generate_session(pdb_file, surfaces_file, residues_of_interest=None, color_scale=None, color_scale_range=None): 212 | residues, atoms, values_residues, values_atoms = get_sum_per_residue(surfaces_file) 213 | color_codes = generate_color_scale(values_residues, color_scale_range, color_scale) 214 | pymol.cmd.load(pdb_file) 215 | pymol.cmd.color('grey60', pdb_file[:-4]) 216 | chains = split_states(residues, atoms, pdb_file) 217 | for C in chains: 218 | pymol.cmd.set("cartoon_transparency", 0.55, 'chain' + C) 219 | for i in range(len(residues)): 220 | if values_residues[i] != 0: 221 | color_residue(residues[i], color_codes[i]) 222 | pairs, values = get_pairs_contacts(surfaces_file) 223 | if residues_of_interest is None: 224 | selected_pairs = pairs 225 | else: 226 | residues_of_interest = list(residues_of_interest.split(",")) 227 | selected_pairs = all_pairs_from_interest(pairs, residues_of_interest) 228 | color_codes = generate_color_scale(values, color_scale_range, color_scale) 229 | for j in range(len(pairs)): 230 | color_distance(pairs[j], values[j], color_codes[j], selected_pairs) 231 | for k in range(len(pairs)): 232 | label_pairs(pairs[k], selected_pairs) 233 | show_separate_surfaces(chains) 234 | color_ligands() 235 | return 236 | 237 | """ 238 | USAGE: 239 | generate_session(pdb_file, input_csv_file, residues_of_interest, color_scale, color_scale_range) 240 | """ 241 | -------------------------------------------------------------------------------- /image_surfaces.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | #Imports 6 | import argparse 7 | import sys 8 | import pymol 9 | import pandas as pd 10 | from colour import Color 11 | 12 | def get_sum_per_residue(surfaces_file): 13 | residues = [] 14 | values = [] 15 | surf = pd.read_csv(surfaces_file, index_col=0) 16 | sum_column = surf.sum() 17 | sum_row = surf.sum(axis='columns') 18 | for x in range(len(sum_column)): 19 | values.append(sum_column[x]) 20 | residues.append(surf.columns[x]) 21 | for y in range(len(sum_row)): 22 | values.append(sum_row[y]) 23 | residues.append(surf.index[y]) 24 | return (residues, values) 25 | 26 | def get_pairs_contacts(surfaces_file): 27 | pairs = [] 28 | values = [] 29 | surf = pd.read_csv(surfaces_file, index_col=0) 30 | for i in range (len(surf.index)): 31 | for j in range (len(surf.columns)): 32 | if surf.loc[surf.index[i],surf.columns[j]] != 0: 33 | pairs.append([surf.index[i],surf.columns[j]]) 34 | values.append(surf.loc[surf.index[i],surf.columns[j]]) 35 | return (pairs, values) 36 | 37 | def read_residue(res): 38 | type_res = res[:3] 39 | chain_res = res[-1] 40 | num_res = res[3:-1] 41 | return (type_res, chain_res, num_res) 42 | 43 | def color_residue(res, color): 44 | type_res, chain_res, num_res = read_residue(res) 45 | selection_string = 'chain' + chain_res + ' and resi ' + num_res 46 | pymol.cmd.set_color(res, color) 47 | pymol.cmd.select(selection_string) 48 | #pymol.cmd.show('spheres', 'sele') 49 | pymol.cmd.set("cartoon_transparency", 0.00, 'sele') 50 | pymol.cmd.color(res, 'sele') 51 | pymol.cmd.delete('sele') 52 | return 53 | 54 | def generate_color_scale(values, color_scale_range, color_scale): 55 | 56 | if color_scale is None: 57 | top_color = "red" 58 | mid_color = "white" 59 | bottom_color = "blue" 60 | else: 61 | color_scale = list(color_scale[1:-1].split(",")) 62 | top_color = color_scale[2] 63 | mid_color = color_scale[1] 64 | bottom_color = color_scale[0] 65 | 66 | Total_colors = [] 67 | 68 | for i in range(5): 69 | c = Color(bottom_color, saturation=1/(i+1)) 70 | Total_colors.append(c.rgb) 71 | white = Color(mid_color) 72 | Total_colors.append(white.rgb) 73 | for i in range(5): 74 | c = Color(top_color, saturation=1/(5-i)) 75 | Total_colors.append(c.rgb) 76 | #print (Total_colors) 77 | 78 | if color_scale_range is None: 79 | max_value = max(values) 80 | min_value = min(values) 81 | if abs(min_value) > abs(max_value): 82 | range_value = 2 * abs(min_value) 83 | else: 84 | range_value = 2 * abs(max_value) 85 | step_value = range_value/10 86 | else: 87 | color_scale_range = list(color_scale_range[1:-1].split(",")) 88 | min_value = float(color_scale_range[0]) 89 | max_value = float(color_scale_range[1]) 90 | range_value = max_value - min_value 91 | step_value = range_value/10 92 | 93 | color_codes = [] 94 | for value in values: 95 | s = range_value/2 - (-1*value) 96 | n = int(s // step_value) 97 | if n < 0: 98 | n = 0 99 | elif n >= len(Total_colors): 100 | n = len(Total_colors) - 1 101 | color_codes.append(list(Total_colors[n])) 102 | 103 | return (color_codes) 104 | 105 | def color_distance(pair, value, color, selected_pairs): 106 | #create distance object 107 | distance_string = 'dashed_' + pair[0] + '-' + pair[1] 108 | type_res1, chain_res1, num_res1 = read_residue(pair[0]) 109 | type_res2, chain_res2, num_res2 = read_residue(pair[1]) 110 | selection_string = 'chain' + chain_res1 + ' and resi ' + num_res1 + ' and n. CA' 111 | pymol.cmd.select(selection_string) 112 | pymol.cmd.set_name('sele', 'res1') 113 | selection_string = 'chain' + chain_res2 + ' and resi ' + num_res2 + ' and n. CA' 114 | pymol.cmd.select(selection_string) 115 | pymol.cmd.set_name('sele', 'res2') 116 | pymol.cmd.set_color(distance_string, color) 117 | pymol.cmd.distance(distance_string, 'res1', 'res2') 118 | pymol.cmd.color(distance_string, distance_string) 119 | pymol.cmd.hide('labels', distance_string) 120 | pymol.cmd.delete('res1') 121 | pymol.cmd.delete('res2') 122 | if pair not in selected_pairs: 123 | pymol.cmd.disable(distance_string) 124 | return 125 | 126 | def label_pairs(pair,selected_pairs): 127 | #create selection 128 | pair_string = pair[0] + '-' + pair[1] 129 | type_res1, chain_res1, num_res1 = read_residue(pair[0]) 130 | type_res2, chain_res2, num_res2 = read_residue(pair[1]) 131 | selection_string1 = 'chain' + chain_res1 + ' & resi ' + num_res1 + ' & n. CA' 132 | selection_string2 = 'chain' + chain_res2 + ' & resi ' + num_res2 + ' & n. CA' 133 | pymol.cmd.select(selection_string1 + ' ' + selection_string2) 134 | pymol.cmd.set_name('sele', pair_string) 135 | #label residues 136 | pymol.cmd.label(selection_string1,"'%s %s %s' %(resn,resi,chain)") 137 | pymol.cmd.label(selection_string2,"'%s %s %s' %(resn,resi,chain)") 138 | selected_residues = pairs_to_residues(selected_pairs) 139 | if pair[0] not in selected_residues: 140 | pymol.cmd.hide('labels', selection_string1) 141 | if pair[1] not in selected_residues: 142 | pymol.cmd.hide('labels', selection_string2) 143 | pymol.cmd.disable(pair_string) 144 | return 145 | 146 | def pairs_to_residues(pairs): 147 | residues = [] 148 | for i in range(len(pairs)): 149 | for j in range(len(pairs[0])): 150 | if pairs[i][j] not in residues: 151 | residues.append(pairs[i][j]) 152 | return (residues) 153 | 154 | def get_top_10(pairs, values): 155 | top_pairs = [] 156 | absolute_values = [] 157 | size_10_percent = len(values)//10 158 | for value in values: 159 | absolute_values.append(abs(value)) 160 | absolute_values.sort(reverse=True) 161 | top_values = absolute_values[:size_10_percent] 162 | for f in range(len(pairs)): 163 | if len(top_pairs) <= len(top_values): 164 | if (values[f] in top_values) or (-1*values[f] in top_values): 165 | top_pairs.append(pairs[f]) 166 | return (top_pairs) 167 | 168 | def all_pairs_from_interest(pairs, residues_of_interest): 169 | selected_pairs = [] 170 | for pair in pairs: 171 | if pair[0] in residues_of_interest or pair[1] in residues_of_interest: 172 | selected_pairs.append(pair) 173 | return (selected_pairs) 174 | 175 | def split_states(residues, pdb_file): 176 | chains = [] 177 | for res in residues: 178 | type_res, chain_res, num_res = read_residue(res) 179 | if chain_res not in chains: 180 | chains.append(chain_res) 181 | for C in chains: 182 | pymol.cmd.select('chain ' + C) 183 | pymol.cmd.extract('chain' + C, 'sele') 184 | pymol.cmd.delete(pdb_file[:-4]) 185 | return (chains) 186 | 187 | def show_separate_surfaces(chains): 188 | for C in chains: 189 | pymol.cmd.show('surface', 'chain' + C) 190 | return 191 | 192 | def generate_session(pdb_file, surfaces_file, residues_of_interest, color_scale, color_scale_range, session_file_name): 193 | residues, values = get_sum_per_residue(surfaces_file) 194 | color_codes = generate_color_scale(values, color_scale_range, color_scale) 195 | pymol.cmd.load(pdb_file) 196 | pymol.cmd.color('grey60', pdb_file[:-4]) 197 | chains = split_states(residues, pdb_file) 198 | for C in chains: 199 | pymol.cmd.set("cartoon_transparency", 0.55, 'chain' + C) 200 | for i in range(len(residues)): 201 | if values[i] != 0: 202 | color_residue(residues[i], color_codes[i]) 203 | pairs, values = get_pairs_contacts(surfaces_file) 204 | if residues_of_interest is None: 205 | selected_pairs = get_top_10(pairs, values) # get pairs with largest absolute value of interaction - top 10% 206 | else: 207 | residues_of_interest = list(residues_of_interest.split(",")) 208 | selected_pairs = all_pairs_from_interest(pairs, residues_of_interest) 209 | color_codes = generate_color_scale(values, color_scale_range, color_scale) 210 | for j in range(len(pairs)): 211 | color_distance(pairs[j], values[j], color_codes[j], selected_pairs) 212 | label_pairs(pairs[j], selected_pairs) 213 | show_separate_surfaces(chains) 214 | pymol.cmd.save(session_file_name, format='pse') 215 | return 216 | 217 | 218 | def main(): 219 | 220 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 221 | parser.add_argument("-f","--pdb_file", action="store") 222 | parser.add_argument("-c","--input_csv_file", action="store") 223 | parser.add_argument("-o","--pymol_session_output_name", action="store") 224 | parser.add_argument("-cs","--color_scale", action="store") 225 | parser.add_argument("-cs_range","--color_scale_range", action="store") 226 | parser.add_argument("-res","--residues_of_interest", action="store") 227 | args=parser.parse_args() 228 | 229 | generate_session(args.pdb_file, args.input_csv_file, args.residues_of_interest, args.color_scale, args.color_scale_range, args.pymol_session_output_name) 230 | 231 | return 232 | 233 | main() 234 | -------------------------------------------------------------------------------- /image_surfaces_lig.py: -------------------------------------------------------------------------------- 1 | # Developed by Natália Teruel 2 | # Najmanovich Research Group 3 | # Cite this work as Surfaces: A software to quantify and visualize interactions within and between proteins and ligands - Teruel, N. F. B., Borges, V. M., & Najmanovich, R. (2023) 4 | 5 | #Imports 6 | import argparse 7 | import sys 8 | import pymol 9 | import pandas as pd 10 | from colour import Color 11 | 12 | def get_sum_per_residue(surfaces_file): 13 | residues = [] 14 | values_residues = [] 15 | atoms = [] 16 | values_atoms = [] 17 | surf = pd.read_csv(surfaces_file, index_col=0) 18 | sum_column = surf.sum() 19 | sum_row = surf.sum(axis='columns') 20 | for x in range(len(sum_column)): 21 | values_atoms.append(sum_column[x]) 22 | atoms.append(surf.columns[x]) 23 | for y in range(len(sum_row)): 24 | values_residues.append(sum_row[y]) 25 | residues.append(surf.index[y]) 26 | return (residues, atoms, values_residues, values_atoms) 27 | 28 | def get_pairs_contacts(surfaces_file): 29 | pairs = [] 30 | values = [] 31 | surf = pd.read_csv(surfaces_file, index_col=0) 32 | for i in range (len(surf.index)): 33 | for j in range (len(surf.columns)): 34 | if surf.loc[surf.index[i],surf.columns[j]] != 0: 35 | pairs.append([surf.index[i],surf.columns[j]]) 36 | values.append(surf.loc[surf.index[i],surf.columns[j]]) 37 | return (pairs, values) 38 | 39 | def read_residue(res): 40 | type_res = res[:3] 41 | chain_res = res[-1] 42 | num_res = res[3:-1] 43 | return (type_res, chain_res, num_res) 44 | 45 | def read_atom(atom): 46 | atom_num = '' 47 | atom_name = '' 48 | num = True 49 | for i in range(len(atom)): 50 | if atom[i].isnumeric() and num: 51 | atom_num = atom_num + atom[i] 52 | else: 53 | num = False 54 | atom_name = atom_name + atom[i] 55 | return (atom_name, atom_num) 56 | 57 | def color_residue(res, color): 58 | type_res, chain_res, num_res = read_residue(res) 59 | selection_string = 'chain' + chain_res + ' and resi ' + num_res 60 | pymol.cmd.set_color(res, color) 61 | pymol.cmd.select(selection_string) 62 | #pymol.cmd.show('spheres', 'sele') 63 | pymol.cmd.set("cartoon_transparency", 0.00, 'sele') 64 | pymol.cmd.color(res, 'sele') 65 | pymol.cmd.delete('sele') 66 | return 67 | 68 | def generate_color_scale(values, color_scale_range, color_scale): 69 | 70 | if color_scale is None: 71 | top_color = "red" 72 | mid_color = "white" 73 | bottom_color = "blue" 74 | else: 75 | color_scale = list(color_scale[1:-1].split(",")) 76 | top_color = color_scale[2] 77 | mid_color = color_scale[1] 78 | bottom_color = color_scale[0] 79 | 80 | Total_colors = [] 81 | 82 | for i in range(5): 83 | c = Color(bottom_color, saturation=1/(i+1)) 84 | Total_colors.append(c.rgb) 85 | white = Color(mid_color) 86 | Total_colors.append(white.rgb) 87 | for i in range(5): 88 | c = Color(top_color, saturation=1/(5-i)) 89 | Total_colors.append(c.rgb) 90 | #print (Total_colors) 91 | 92 | if color_scale_range is None: 93 | max_value = max(values) 94 | min_value = min(values) 95 | if abs(min_value) > abs(max_value): 96 | range_value = 2 * abs(min_value) 97 | else: 98 | range_value = 2 * abs(max_value) 99 | step_value = range_value/10 100 | else: 101 | color_scale_range = list(color_scale_range[1:-1].split(",")) 102 | min_value = float(color_scale_range[0]) 103 | max_value = float(color_scale_range[1]) 104 | range_value = max_value - min_value 105 | step_value = range_value/10 106 | 107 | color_codes = [] 108 | for value in values: 109 | s = range_value/2 - (-1*value) 110 | n = int(s // step_value) 111 | if n < 0: 112 | n = 0 113 | elif n > len(Total_colors): 114 | n = len(Total_colors) 115 | color_codes.append(list(Total_colors[n])) 116 | 117 | return (color_codes) 118 | 119 | def color_distance(pair, value, color, selected_pairs): 120 | #create distance object 121 | distance_string = 'dashed_' + pair[0] + '-' + pair[1] 122 | distance_string = distance_string.replace("'", "") 123 | type_res, chain_res, num_res = read_residue(pair[0]) 124 | atom_name, atom_num = read_atom(pair[1]) 125 | selection_string = 'chain' + chain_res + ' and resi ' + num_res + ' and n. CA' 126 | pymol.cmd.select(selection_string) 127 | pymol.cmd.set_name('sele', 'res') 128 | selection_string = 'id ' + atom_num 129 | pymol.cmd.select(selection_string) 130 | pymol.cmd.set_name('sele', 'lig') 131 | pymol.cmd.set_color(distance_string, color) 132 | pymol.cmd.distance(distance_string, 'res', 'lig') 133 | pymol.cmd.color(distance_string, distance_string) 134 | pymol.cmd.hide('labels', distance_string) 135 | pymol.cmd.delete('res') 136 | pymol.cmd.delete('lig') 137 | if pair not in selected_pairs: 138 | pymol.cmd.disable(distance_string) 139 | return 140 | 141 | def label_pairs(pair,selected_pairs): 142 | #create selection 143 | pair_string = pair[0] + '-' + pair[1] 144 | type_res, chain_res, num_res = read_residue(pair[0]) 145 | atom_name, atom_num = read_atom(pair[1]) 146 | selection_string1 = 'chain' + chain_res + ' and resi ' + num_res + ' and n. CA' 147 | selection_string2 = 'id ' + atom_num 148 | pymol.cmd.select(selection_string1 + ' ' + selection_string2) 149 | pymol.cmd.set_name('sele', pair_string) 150 | #label residues 151 | pymol.cmd.label(selection_string1,"'%s %s %s' %(resn,resi,chain)") 152 | selected_residues = pairs_to_residues(selected_pairs) 153 | if pair[0] not in selected_residues: 154 | pymol.cmd.hide('labels', selection_string1) 155 | pymol.cmd.disable(pair_string) 156 | return 157 | 158 | def pairs_to_residues(pairs): 159 | residues = [] 160 | for i in range(len(pairs)): 161 | for j in range(len(pairs[0])): 162 | if pairs[i][j] not in residues: 163 | residues.append(pairs[i][j]) 164 | return (residues) 165 | 166 | def get_top_10(pairs, values): 167 | top_pairs = [] 168 | absolute_values = [] 169 | size_10_percent = len(values)//10 170 | for value in values: 171 | absolute_values.append(abs(value)) 172 | absolute_values.sort(reverse=True) 173 | top_values = absolute_values[:size_10_percent] 174 | for f in range(len(pairs)): 175 | if len(top_pairs) <= len(top_values): 176 | if (values[f] in top_values) or (-1*values[f] in top_values): 177 | top_pairs.append(pairs[f]) 178 | return (top_pairs) 179 | 180 | def all_pairs_from_interest(pairs, residues_of_interest): 181 | selected_pairs = [] 182 | for pair in pairs: 183 | if pair[0] in residues_of_interest or pair[1] in residues_of_interest: 184 | selected_pairs.append(pair) 185 | return (selected_pairs) 186 | 187 | def split_states(residues, atoms, pdb_file): 188 | chains = [] 189 | atom_nums = [] 190 | for res in residues: 191 | type_res, chain_res, num_res = read_residue(res) 192 | if chain_res not in chains: 193 | chains.append(chain_res) 194 | for C in chains: 195 | pymol.cmd.select('chain ' + C) 196 | pymol.cmd.extract('chain' + C, 'sele') 197 | for atom in atoms: 198 | atom_name, atom_num = read_atom(atom) 199 | atom_nums.append(atom_num) 200 | selection_string = '' 201 | for num in atom_nums: 202 | selection_string = selection_string + num + '+' 203 | pymol.cmd.select('id ' + selection_string[:-1]) 204 | pymol.cmd.extract('ligand', 'sele') 205 | pymol.cmd.delete(pdb_file[:-4]) 206 | return (chains) 207 | 208 | def show_separate_surfaces(chains): 209 | for C in chains: 210 | pymol.cmd.show('surface', 'chain' + C) 211 | #pymol.cmd.set('transparency', 0.7, 'chain' + C) 212 | return 213 | 214 | def color_ligands(): 215 | pymol.cmd.color("cyan",'ligand') 216 | pymol.util.cnc('ligand') 217 | return 218 | 219 | def generate_session(pdb_file, surfaces_file, residues_of_interest, color_scale, color_scale_range, session_file_name): 220 | residues, atoms, values_residues, values_atoms = get_sum_per_residue(surfaces_file) 221 | color_codes = generate_color_scale(values_residues, color_scale_range, color_scale) 222 | pymol.cmd.load(pdb_file) 223 | pymol.cmd.color('grey60', pdb_file[:-4]) 224 | chains = split_states(residues, atoms, pdb_file) 225 | for C in chains: 226 | pymol.cmd.set("cartoon_transparency", 0.55, 'chain' + C) 227 | for i in range(len(residues)): 228 | if values_residues[i] != 0: 229 | color_residue(residues[i], color_codes[i]) 230 | pairs, values = get_pairs_contacts(surfaces_file) 231 | if residues_of_interest is None: 232 | selected_pairs = pairs 233 | else: 234 | residues_of_interest = list(residues_of_interest.split(",")) 235 | selected_pairs = all_pairs_from_interest(pairs, residues_of_interest) 236 | color_codes = generate_color_scale(values, color_scale_range, color_scale) 237 | for j in range(len(pairs)): 238 | color_distance(pairs[j], values[j], color_codes[j], selected_pairs) 239 | label_pairs(pairs[j], selected_pairs) 240 | show_separate_surfaces(chains) 241 | color_ligands() 242 | pymol.cmd.save(session_file_name, format='pse') 243 | return 244 | 245 | 246 | def main(): 247 | 248 | parser= argparse.ArgumentParser(description="the arguments.", add_help=False) 249 | parser.add_argument("-f","--pdb_file", action="store") 250 | parser.add_argument("-c","--input_csv_file", action="store") 251 | parser.add_argument("-o","--pymol_session_output_name", action="store") 252 | parser.add_argument("-cs","--color_scale", action="store") 253 | parser.add_argument("-cs_range","--color_scale_range", action="store") 254 | parser.add_argument("-res","--residues_of_interest", action="store") 255 | args=parser.parse_args() 256 | 257 | generate_session(args.pdb_file, args.input_csv_file, args.residues_of_interest, args.color_scale, args.color_scale_range, args.pymol_session_output_name) 258 | 259 | return 260 | 261 | main() 262 | -------------------------------------------------------------------------------- /FlexAID.dat: -------------------------------------------------------------------------------- 1 | 1- 1 = 0 2 | 1- 2 = -119.4 3 | 1- 3 = -162.9 4 | 1- 4 = -179.1 5 | 1- 5 = 0 6 | 1- 6 = 0 7 | 1- 7 = 0 8 | 1- 8 = 0 9 | 1- 9 = 0 10 | 1-10 = 157.1 11 | 1-11 = 60.54 12 | 1-12 = -78.63 13 | 1-13 = -198.3 14 | 1-14 = -180.8 15 | 1-15 = 93.26 16 | 1-16 = 0 17 | 1-17 = 0 18 | 1-18 = 0 19 | 1-19 = 0 20 | 1-20 = 0 21 | 1-21 = 0 22 | 1-22 = 0 23 | 1-23 = 0 24 | 1-24 = 0 25 | 1-25 = 0 26 | 1-26 = 0 27 | 1-27 = 0 28 | 1-28 = 0 29 | 1-29 = 0 30 | 1-30 = 0 31 | 1-31 = 0 32 | 1-32 = 0 33 | 1-33 = 0 34 | 1-34 = 0 35 | 1-35 = 0 36 | 1-36 = 0 37 | 1-37 = 0 38 | 1-38 = 0 39 | 1-39 = 0 40 | 1-40 = 159.1 41 | 2- 2 = -198.9 42 | 2- 3 = -69.11 43 | 2- 4 = -149.4 44 | 2- 5 = 194.1 45 | 2- 6 = 165.4 46 | 2- 7 = -88.78 47 | 2- 8 = 0 48 | 2- 9 = 36.97 49 | 2-10 = 15.81 50 | 2-11 = -21.59 51 | 2-12 = -61.99 52 | 2-13 = -10.06 53 | 2-14 = 61.29 54 | 2-15 = 14.76 55 | 2-16 = 0 56 | 2-17 = -115 57 | 2-18 = -123.1 58 | 2-19 = 81.35 59 | 2-20 = 0 60 | 2-21 = 0 61 | 2-22 = 76.92 62 | 2-23 = -186.1 63 | 2-24 = -193.7 64 | 2-25 = 0 65 | 2-26 = 13.04 66 | 2-27 = 0 67 | 2-28 = 152.5 68 | 2-29 = 0 69 | 2-30 = 0 70 | 2-31 = 119.8 71 | 2-32 = 0 72 | 2-33 = 121.2 73 | 2-34 = 0 74 | 2-35 = -40.54 75 | 2-36 = 0 76 | 2-37 = 0 77 | 2-38 = 0 78 | 2-39 = 0 79 | 2-40 = 61.75 80 | 3- 3 = -37.75 81 | 3- 4 = -53.32 82 | 3- 5 = -191.9 83 | 3- 6 = -71.64 84 | 3- 7 = -68.71 85 | 3- 8 = 0 86 | 3- 9 = 87.28 87 | 3-10 = -63.97 88 | 3-11 = 26.9 89 | 3-12 = -0.9491 90 | 3-13 = -50.23 91 | 3-14 = -44.36 92 | 3-15 = -30.77 93 | 3-16 = 0 94 | 3-17 = 0 95 | 3-18 = -48.67 96 | 3-19 = -121.8 97 | 3-20 = 0 98 | 3-21 = 0 99 | 3-22 = -8.391 100 | 3-23 = -74.04 101 | 3-24 = -93.41 102 | 3-25 = 0 103 | 3-26 = -157.6 104 | 3-27 = 0 105 | 3-28 = 131.2 106 | 3-29 = 0 107 | 3-30 = -180.8 108 | 3-31 = 0 109 | 3-32 = 0 110 | 3-33 = 0 111 | 3-34 = 0 112 | 3-35 = 95.36 113 | 3-36 = 0 114 | 3-37 = 0 115 | 3-38 = 0 116 | 3-39 = 0 117 | 3-40 = 72.5 118 | 4- 4 = -58.92 119 | 4- 5 = -183.9 120 | 4- 6 = 0 121 | 4- 7 = -124.2 122 | 4- 8 = 0 123 | 4- 9 = 36.65 124 | 4-10 = -18.3 125 | 4-11 = 23.98 126 | 4-12 = -16.94 127 | 4-13 = -5.605 128 | 4-14 = -21.65 129 | 4-15 = 25.6 130 | 4-16 = 0 131 | 4-17 = -135.6 132 | 4-18 = -51.64 133 | 4-19 = 100.3 134 | 4-20 = 0 135 | 4-21 = 0 136 | 4-22 = -58.99 137 | 4-23 = -57.06 138 | 4-24 = -25.05 139 | 4-25 = -12.72 140 | 4-26 = 0 141 | 4-27 = 0 142 | 4-28 = 0 143 | 4-29 = 0 144 | 4-30 = 0 145 | 4-31 = 0 146 | 4-32 = 0 147 | 4-33 = 0 148 | 4-34 = 0 149 | 4-35 = 160.8 150 | 4-36 = 0 151 | 4-37 = 0 152 | 4-38 = 0 153 | 4-39 = 0 154 | 4-40 = 62.17 155 | 5- 5 = 0 156 | 5- 6 = 0 157 | 5- 7 = -161.8 158 | 5- 8 = 0 159 | 5- 9 = 174.8 160 | 5-10 = -118.3 161 | 5-11 = 180.9 162 | 5-12 = -83.1 163 | 5-13 = 195.9 164 | 5-14 = 67.99 165 | 5-15 = -54.19 166 | 5-16 = 0 167 | 5-17 = 0 168 | 5-18 = -167.9 169 | 5-19 = 0 170 | 5-20 = 0 171 | 5-21 = 0 172 | 5-22 = 167.7 173 | 5-23 = -28.17 174 | 5-24 = 0 175 | 5-25 = -190.1 176 | 5-26 = 0 177 | 5-27 = 0 178 | 5-28 = 0 179 | 5-29 = 0 180 | 5-30 = 0 181 | 5-31 = 0 182 | 5-32 = 0 183 | 5-33 = 0 184 | 5-34 = 0 185 | 5-35 = 0 186 | 5-36 = 0 187 | 5-37 = 0 188 | 5-38 = 0 189 | 5-39 = 0 190 | 5-40 = 120.3 191 | 6- 6 = 0 192 | 6- 7 = 0 193 | 6- 8 = 0 194 | 6- 9 = 0 195 | 6-10 = 0 196 | 6-11 = -168.9 197 | 6-12 = 0 198 | 6-13 = 0 199 | 6-14 = -71.74 200 | 6-15 = 0 201 | 6-16 = 0 202 | 6-17 = 0 203 | 6-18 = 0 204 | 6-19 = 0 205 | 6-20 = 0 206 | 6-21 = 0 207 | 6-22 = 0 208 | 6-23 = 0 209 | 6-24 = 0 210 | 6-25 = 0 211 | 6-26 = 0 212 | 6-27 = 0 213 | 6-28 = 0 214 | 6-29 = 0 215 | 6-30 = 0 216 | 6-31 = 0 217 | 6-32 = 0 218 | 6-33 = 0 219 | 6-34 = 0 220 | 6-35 = 0 221 | 6-36 = 0 222 | 6-37 = 0 223 | 6-38 = 0 224 | 6-39 = 0 225 | 6-40 = 167.2 226 | 7- 7 = 0 227 | 7- 8 = 0 228 | 7- 9 = 84.57 229 | 7-10 = -55.8 230 | 7-11 = -195.7 231 | 7-12 = -122.3 232 | 7-13 = -87.38 233 | 7-14 = -144.8 234 | 7-15 = -197.6 235 | 7-16 = 0 236 | 7-17 = 0 237 | 7-18 = 28.13 238 | 7-19 = 0 239 | 7-20 = 0 240 | 7-21 = 0 241 | 7-22 = 0 242 | 7-23 = 0 243 | 7-24 = 0 244 | 7-25 = 0 245 | 7-26 = 0 246 | 7-27 = 0 247 | 7-28 = 0 248 | 7-29 = 0 249 | 7-30 = 0 250 | 7-31 = 0 251 | 7-32 = 0 252 | 7-33 = 0 253 | 7-34 = 0 254 | 7-35 = 0 255 | 7-36 = 0 256 | 7-37 = 0 257 | 7-38 = 0 258 | 7-39 = 0 259 | 7-40 = 136.4 260 | 8- 8 = 0 261 | 8- 9 = 0 262 | 8-10 = 0 263 | 8-11 = 0 264 | 8-12 = 0 265 | 8-13 = 0 266 | 8-14 = 0 267 | 8-15 = 0 268 | 8-16 = 0 269 | 8-17 = 0 270 | 8-18 = 0 271 | 8-19 = 0 272 | 8-20 = 0 273 | 8-21 = 0 274 | 8-22 = 0 275 | 8-23 = 0 276 | 8-24 = 0 277 | 8-25 = 0 278 | 8-26 = 0 279 | 8-27 = 0 280 | 8-28 = 0 281 | 8-29 = 0 282 | 8-30 = 0 283 | 8-31 = 0 284 | 8-32 = 0 285 | 8-33 = 0 286 | 8-34 = 0 287 | 8-35 = 0 288 | 8-36 = 0 289 | 8-37 = 0 290 | 8-38 = 0 291 | 8-39 = 0 292 | 8-40 = 0 293 | 9- 9 = 81.66 294 | 9-10 = -16.35 295 | 9-11 = 160.2 296 | 9-12 = 160.4 297 | 9-13 = -103.9 298 | 9-14 = -101.8 299 | 9-15 = -159 300 | 9-16 = 0 301 | 9-17 = 0 302 | 9-18 = -66.4 303 | 9-19 = 0 304 | 9-20 = 0 305 | 9-21 = 0 306 | 9-22 = 143 307 | 9-23 = 0 308 | 9-24 = 45.57 309 | 9-25 = 50.17 310 | 9-26 = 0 311 | 9-27 = 0 312 | 9-28 = 0 313 | 9-29 = 0 314 | 9-30 = 0 315 | 9-31 = 0 316 | 9-32 = 0 317 | 9-33 = 0 318 | 9-34 = 0 319 | 9-35 = 158.9 320 | 9-36 = 0 321 | 9-37 = 0 322 | 9-38 = 0 323 | 9-39 = 0 324 | 9-40 = 147.1 325 | 10-10 = 156.7 326 | 10-11 = -157.3 327 | 10-12 = -26.35 328 | 10-13 = -86.64 329 | 10-14 = -189.6 330 | 10-15 = -125.3 331 | 10-16 = 0 332 | 10-17 = 0 333 | 10-18 = -190.1 334 | 10-19 = -169 335 | 10-20 = 0 336 | 10-21 = 0 337 | 10-22 = -148.8 338 | 10-23 = 7.695 339 | 10-24 = 88.72 340 | 10-25 = 137.3 341 | 10-26 = 0 342 | 10-27 = 0 343 | 10-28 = 0 344 | 10-29 = 0 345 | 10-30 = 0 346 | 10-31 = 0 347 | 10-32 = 0 348 | 10-33 = 0 349 | 10-34 = 0 350 | 10-35 = 0 351 | 10-36 = 0 352 | 10-37 = 0 353 | 10-38 = 0 354 | 10-39 = 0 355 | 10-40 = 198.3 356 | 11-11 = 72.28 357 | 11-12 = 86.55 358 | 11-13 = -141.1 359 | 11-14 = -70.05 360 | 11-15 = -140.1 361 | 11-16 = 0 362 | 11-17 = 0 363 | 11-18 = 46.22 364 | 11-19 = 73.66 365 | 11-20 = 0 366 | 11-21 = 0 367 | 11-22 = -117.9 368 | 11-23 = -46.59 369 | 11-24 = 36.68 370 | 11-25 = 0 371 | 11-26 = 0 372 | 11-27 = 0 373 | 11-28 = -61.63 374 | 11-29 = 0 375 | 11-30 = 0 376 | 11-31 = 0 377 | 11-32 = 0 378 | 11-33 = 0 379 | 11-34 = 0 380 | 11-35 = -185.8 381 | 11-36 = 0 382 | 11-37 = 0 383 | 11-38 = 0 384 | 11-39 = 0 385 | 11-40 = 190.5 386 | 12-12 = 133 387 | 12-13 = -81.1 388 | 12-14 = -49.12 389 | 12-15 = -127.7 390 | 12-16 = 0 391 | 12-17 = 0 392 | 12-18 = -50.59 393 | 12-19 = 159.9 394 | 12-20 = 0 395 | 12-21 = 0 396 | 12-22 = 44.25 397 | 12-23 = -28.99 398 | 12-24 = 0 399 | 12-25 = -1.934 400 | 12-26 = 0 401 | 12-27 = 0 402 | 12-28 = 92.97 403 | 12-29 = 0 404 | 12-30 = 0 405 | 12-31 = 37.17 406 | 12-32 = 0 407 | 12-33 = 0 408 | 12-34 = 0 409 | 12-35 = 0 410 | 12-36 = 0 411 | 12-37 = 0 412 | 12-38 = 0 413 | 12-39 = 0 414 | 12-40 = 162.8 415 | 13-13 = 56.58 416 | 13-14 = -33 417 | 13-15 = 52 418 | 13-16 = 0 419 | 13-17 = 0 420 | 13-18 = 27.66 421 | 13-19 = 170.4 422 | 13-20 = 0 423 | 13-21 = 0 424 | 13-22 = 61.46 425 | 13-23 = 51.7 426 | 13-24 = 19.2 427 | 13-25 = 0 428 | 13-26 = 9.606 429 | 13-27 = 0 430 | 13-28 = -61.55 431 | 13-29 = 0 432 | 13-30 = 0 433 | 13-31 = 0 434 | 13-32 = 0 435 | 13-33 = 0 436 | 13-34 = 0 437 | 13-35 = -182.1 438 | 13-36 = 0 439 | 13-37 = 0 440 | 13-38 = 0 441 | 13-39 = 0 442 | 13-40 = 33.99 443 | 14-14 = -77.28 444 | 14-15 = -95.08 445 | 14-16 = 0 446 | 14-17 = 0 447 | 14-18 = -79.64 448 | 14-19 = 170.8 449 | 14-20 = 0 450 | 14-21 = 0 451 | 14-22 = -163.4 452 | 14-23 = -149.5 453 | 14-24 = 0 454 | 14-25 = 0 455 | 14-26 = 0 456 | 14-27 = 0 457 | 14-28 = 67.59 458 | 14-29 = 71.7 459 | 14-30 = 0 460 | 14-31 = 0 461 | 14-32 = 0 462 | 14-33 = 0 463 | 14-34 = 0 464 | 14-35 = -186.7 465 | 14-36 = -197.8 466 | 14-37 = 0 467 | 14-38 = 0 468 | 14-39 = 0 469 | 14-40 = 43.24 470 | 15-15 = 45.17 471 | 15-16 = 0 472 | 15-17 = 0 473 | 15-18 = 32.66 474 | 15-19 = -77.56 475 | 15-20 = 0 476 | 15-21 = 0 477 | 15-22 = 101.4 478 | 15-23 = 187.5 479 | 15-24 = -69.11 480 | 15-25 = 0 481 | 15-26 = 0 482 | 15-27 = 0 483 | 15-28 = -194.7 484 | 15-29 = 0 485 | 15-30 = 0 486 | 15-31 = 0 487 | 15-32 = 0 488 | 15-33 = 0 489 | 15-34 = 0 490 | 15-35 = -173.4 491 | 15-36 = -68.34 492 | 15-37 = 0 493 | 15-38 = 0 494 | 15-39 = 0 495 | 15-40 = 29.56 496 | 16-16 = 0 497 | 16-17 = 0 498 | 16-18 = 0 499 | 16-19 = 0 500 | 16-20 = 0 501 | 16-21 = 0 502 | 16-22 = 0 503 | 16-23 = 0 504 | 16-24 = 0 505 | 16-25 = 0 506 | 16-26 = 0 507 | 16-27 = 0 508 | 16-28 = 0 509 | 16-29 = 0 510 | 16-30 = 0 511 | 16-31 = 0 512 | 16-32 = 0 513 | 16-33 = 0 514 | 16-34 = 0 515 | 16-35 = 0 516 | 16-36 = 0 517 | 16-37 = 0 518 | 16-38 = 0 519 | 16-39 = 0 520 | 16-40 = 0 521 | 17-17 = 0 522 | 17-18 = 0 523 | 17-19 = 0 524 | 17-20 = 0 525 | 17-21 = 0 526 | 17-22 = 0 527 | 17-23 = 0 528 | 17-24 = 0 529 | 17-25 = 0 530 | 17-26 = 0 531 | 17-27 = 0 532 | 17-28 = 0 533 | 17-29 = 0 534 | 17-30 = 0 535 | 17-31 = 0 536 | 17-32 = 0 537 | 17-33 = 0 538 | 17-34 = 0 539 | 17-35 = 0 540 | 17-36 = 0 541 | 17-37 = 0 542 | 17-38 = 0 543 | 17-39 = 0 544 | 17-40 = 0 545 | 18-18 = -145.5 546 | 18-19 = 103.9 547 | 18-20 = 0 548 | 18-21 = 0 549 | 18-22 = -41.28 550 | 18-23 = 5.702 551 | 18-24 = -167.5 552 | 18-25 = -119.7 553 | 18-26 = 0 554 | 18-27 = 0 555 | 18-28 = 0 556 | 18-29 = 0 557 | 18-30 = 0 558 | 18-31 = 0 559 | 18-32 = 0 560 | 18-33 = 0 561 | 18-34 = 0 562 | 18-35 = -153.7 563 | 18-36 = 0 564 | 18-37 = 0 565 | 18-38 = 0 566 | 18-39 = 0 567 | 18-40 = 94.93 568 | 19-19 = 0 569 | 19-20 = 0 570 | 19-21 = 0 571 | 19-22 = 0 572 | 19-23 = 0 573 | 19-24 = 0 574 | 19-25 = 0 575 | 19-26 = 0 576 | 19-27 = 0 577 | 19-28 = 0 578 | 19-29 = 0 579 | 19-30 = 0 580 | 19-31 = 0 581 | 19-32 = 0 582 | 19-33 = 0 583 | 19-34 = 0 584 | 19-35 = -134.4 585 | 19-36 = 0 586 | 19-37 = 0 587 | 19-38 = 0 588 | 19-39 = 0 589 | 19-40 = -176.2 590 | 20-20 = 0 591 | 20-21 = 0 592 | 20-22 = 0 593 | 20-23 = 0 594 | 20-24 = 0 595 | 20-25 = 0 596 | 20-26 = 0 597 | 20-27 = 0 598 | 20-28 = 0 599 | 20-29 = 0 600 | 20-30 = 0 601 | 20-31 = 0 602 | 20-32 = 0 603 | 20-33 = 0 604 | 20-34 = 0 605 | 20-35 = 0 606 | 20-36 = 0 607 | 20-37 = 0 608 | 20-38 = 0 609 | 20-39 = 0 610 | 20-40 = 0 611 | 21-21 = 0 612 | 21-22 = 0 613 | 21-23 = 0 614 | 21-24 = 0 615 | 21-25 = 0 616 | 21-26 = 0 617 | 21-27 = 0 618 | 21-28 = 0 619 | 21-29 = 0 620 | 21-30 = 0 621 | 21-31 = 0 622 | 21-32 = 0 623 | 21-33 = 0 624 | 21-34 = 0 625 | 21-35 = 0 626 | 21-36 = 0 627 | 21-37 = 0 628 | 21-38 = 0 629 | 21-39 = 0 630 | 21-40 = 0 631 | 22-22 = 0 632 | 22-23 = 0 633 | 22-24 = 0 634 | 22-25 = 0 635 | 22-26 = 0 636 | 22-27 = 0 637 | 22-28 = -163 638 | 22-29 = 0 639 | 22-30 = 0 640 | 22-31 = 0 641 | 22-32 = 0 642 | 22-33 = 0 643 | 22-34 = 0 644 | 22-35 = 89.37 645 | 22-36 = 0 646 | 22-37 = 0 647 | 22-38 = 0 648 | 22-39 = 0 649 | 22-40 = 134.7 650 | 23-23 = 0 651 | 23-24 = 0 652 | 23-25 = 0 653 | 23-26 = 0 654 | 23-27 = 0 655 | 23-28 = 0 656 | 23-29 = 0 657 | 23-30 = 0 658 | 23-31 = 0 659 | 23-32 = 0 660 | 23-33 = 0 661 | 23-34 = 0 662 | 23-35 = -118.7 663 | 23-36 = 0 664 | 23-37 = 0 665 | 23-38 = 0 666 | 23-39 = 0 667 | 23-40 = 3.117 668 | 24-24 = 0 669 | 24-25 = 0 670 | 24-26 = 0 671 | 24-27 = 0 672 | 24-28 = 0 673 | 24-29 = 0 674 | 24-30 = 0 675 | 24-31 = 0 676 | 24-32 = 0 677 | 24-33 = 0 678 | 24-34 = 0 679 | 24-35 = 0 680 | 24-36 = 0 681 | 24-37 = 0 682 | 24-38 = 0 683 | 24-39 = 0 684 | 24-40 = 198.8 685 | 25-25 = 0 686 | 25-26 = 0 687 | 25-27 = 0 688 | 25-28 = 0 689 | 25-29 = 0 690 | 25-30 = 0 691 | 25-31 = 0 692 | 25-32 = 0 693 | 25-33 = 0 694 | 25-34 = 0 695 | 25-35 = 0 696 | 25-36 = 0 697 | 25-37 = 0 698 | 25-38 = 0 699 | 25-39 = 0 700 | 25-40 = 138.4 701 | 26-26 = 0 702 | 26-27 = 0 703 | 26-28 = 0 704 | 26-29 = 0 705 | 26-30 = 0 706 | 26-31 = 0 707 | 26-32 = 0 708 | 26-33 = 0 709 | 26-34 = 0 710 | 26-35 = 0 711 | 26-36 = 0 712 | 26-37 = 0 713 | 26-38 = 0 714 | 26-39 = 0 715 | 26-40 = 0 716 | 27-27 = 0 717 | 27-28 = 0 718 | 27-29 = 0 719 | 27-30 = 0 720 | 27-31 = 0 721 | 27-32 = 0 722 | 27-33 = 0 723 | 27-34 = 0 724 | 27-35 = 0 725 | 27-36 = 0 726 | 27-37 = 0 727 | 27-38 = 0 728 | 27-39 = 0 729 | 27-40 = 0 730 | 28-28 = 0 731 | 28-29 = 0 732 | 28-30 = 0 733 | 28-31 = 0 734 | 28-32 = 0 735 | 28-33 = 0 736 | 28-34 = 0 737 | 28-35 = 0 738 | 28-36 = 0 739 | 28-37 = 0 740 | 28-38 = 0 741 | 28-39 = 0 742 | 28-40 = 0 743 | 29-29 = 0 744 | 29-30 = 0 745 | 29-31 = 0 746 | 29-32 = 0 747 | 29-33 = 0 748 | 29-34 = 0 749 | 29-35 = 0 750 | 29-36 = 0 751 | 29-37 = 0 752 | 29-38 = 0 753 | 29-39 = 0 754 | 29-40 = 0 755 | 30-30 = 0 756 | 30-31 = 0 757 | 30-32 = 0 758 | 30-33 = 0 759 | 30-34 = 0 760 | 30-35 = 0 761 | 30-36 = 0 762 | 30-37 = 0 763 | 30-38 = 0 764 | 30-39 = 0 765 | 30-40 = 0 766 | 31-31 = 0 767 | 31-32 = 0 768 | 31-33 = 0 769 | 31-34 = 0 770 | 31-35 = 0 771 | 31-36 = 0 772 | 31-37 = 0 773 | 31-38 = 0 774 | 31-39 = 0 775 | 31-40 = 0 776 | 32-32 = 0 777 | 32-33 = 0 778 | 32-34 = 0 779 | 32-35 = 0 780 | 32-36 = 0 781 | 32-37 = 0 782 | 32-38 = 0 783 | 32-39 = 0 784 | 32-40 = 0 785 | 33-33 = 0 786 | 33-34 = 0 787 | 33-35 = 0 788 | 33-36 = 0 789 | 33-37 = 0 790 | 33-38 = 0 791 | 33-39 = 0 792 | 33-40 = 0 793 | 34-34 = 0 794 | 34-35 = 0 795 | 34-36 = 0 796 | 34-37 = 0 797 | 34-38 = 0 798 | 34-39 = 0 799 | 34-40 = 0 800 | 35-35 = 0 801 | 35-36 = 0 802 | 35-37 = 0 803 | 35-38 = 0 804 | 35-39 = 0 805 | 35-40 = 0 806 | 36-36 = 0 807 | 36-37 = 0 808 | 36-38 = 0 809 | 36-39 = 0 810 | 36-40 = 0 811 | 37-37 = 0 812 | 37-38 = 0 813 | 37-39 = 0 814 | 37-40 = 0 815 | 38-38 = 0 816 | 38-39 = 0 817 | 38-40 = 0 818 | 39-39 = 0 819 | 39-40 = 0 820 | 40-40 = 0 821 | -------------------------------------------------------------------------------- /Data/AB-Bind test data/Surfaces_RosettaMutants.csv: -------------------------------------------------------------------------------- 1 | #PDB,Mutation,expt,comp 2 | 1AK4,D:A488G,2.49,3029.927015 3 | 1AK4,D:A488V,0.6,875.47035 4 | 1AK4,D:A492G,0.41,-2532.170741 5 | 1AK4,D:A492V,0.19,914.2767765 6 | 1AK4,D:G489A,1.91,-2023.953615 7 | 1AK4,D:G489V,2.86,1972.409743 8 | 1AK4,D:H487A,0.84,2239.871197 9 | 1AK4,D:H487Q,0.8,3943.811429 10 | 1AK4,D:H487R,1.48,583.183515 11 | 1AK4,D:I491A,0.07,3012.52051 12 | 1AK4,D:I491V,-0.17,-566.7551475 13 | 1AK4,"D:L483T,D:V486P,D:H487A,D:A488M,D:I491L,D:A492P,D:M496I",0.57,-48.0673375 14 | 1AK4,D:P485A,0.92,-2.8518 15 | 1AK4,D:P490A,2,3001.379264 16 | 1AK4,D:P490V,2.86,-762.6472385 17 | 1AK4,D:P493A,0.51,1904.69315 18 | 1AK4,D:V486A,0.82,315.4520875 19 | 1BJ1,V:F17A,0,-169.393075 20 | 1BJ1,V:Y21A,0,774.07245 21 | 1BJ1,W:E93A,0.82,197.88675 22 | 1BJ1,W:G88A,2.76,-1093.123325 23 | 1BJ1,W:G92A,3.69,-1881.2203 24 | 1BJ1,W:H86A,0,4487.136175 25 | 1BJ1,W:H90A,0,4192.02365 26 | 1BJ1,W:I80A,0.82,5.5879 27 | 1BJ1,W:I83A,3.69,-1834.7455 28 | 1BJ1,W:I91A,0.41,1391.623775 29 | 1BJ1,W:K48A,0.41,1009.2206 30 | 1BJ1,W:K84A,0.65,-470.9522285 31 | 1BJ1,W:M81A,3.69,923.094225 32 | 1BJ1,W:M94A,1.42,286.794925 33 | 1BJ1,W:Q79A,0,707.1549 34 | 1BJ1,W:Q87A,0,-35.281325 35 | 1BJ1,W:Q89A,1.75,2168.96425 36 | 1BJ1,W:R82A,3.69,3182.501503 37 | 1BJ1,W:Y45A,0.82,2090.268628 38 | 1CZ8,V:F17A,0,1669.89975 39 | 1CZ8,V:Y21A,0,521.665 40 | 1CZ8,W:E93A,1.15,891.10585 41 | 1CZ8,W:G88A,2.67,-4647.33655 42 | 1CZ8,W:G92A,4.1,-1776.546975 43 | 1CZ8,W:H86A,0,2084.0541 44 | 1CZ8,W:H90A,0,9682.108025 45 | 1CZ8,W:I80A,0.95,0.646 46 | 1CZ8,W:I83A,1.3,2844.37525 47 | 1CZ8,W:I91A,1.06,1748.9519 48 | 1CZ8,W:K48A,0,900.3846 49 | 1CZ8,W:K84A,1.36,7097.670921 50 | 1CZ8,W:M81A,4.1,828.7391 51 | 1CZ8,W:M94A,1.91,681.7927 52 | 1CZ8,W:Q79A,0.65,128.39295 53 | 1CZ8,W:Q87A,0,90.53055 54 | 1CZ8,W:Q89A,1.06,5053.853834 55 | 1CZ8,W:R82A,0.82,2171.171613 56 | 1CZ8,W:Y45A,1.94,1220.928944 57 | 1DQJ,C:D101A,1.3,2153.312375 58 | 1DQJ,C:K96A,6.1,5072.534075 59 | 1DQJ,C:K97A,3.5,3950.111988 60 | 1DQJ,C:L75A,1.5,5465.417275 61 | 1DQJ,C:N93A,0.6,10274.95125 62 | 1DQJ,C:R21A,1.3,7684.000876 63 | 1DQJ,C:S100A,0.8,5883.647647 64 | 1DQJ,C:T89A,0.8,8071.20815 65 | 1DQJ,C:W62A,0.8,992.430875 66 | 1DQJ,C:W63A,1.3,2316.359759 67 | 1DQJ,C:Y20A,3.3,170.7305145 68 | 1DQJ,H:D32A,2,4157.225472 69 | 1DQJ,"H:D32A,C:K97A",2.5,1067.490297 70 | 1DQJ,H:W98A,4.9,229.69985 71 | 1DQJ,"H:W98A,C:K97A",6.6,-235.078475 72 | 1DQJ,"H:W98A,C:S100A",5.3,2906.237625 73 | 1DQJ,"H:W98A,C:Y20A",5.1,3890.93095 74 | 1DQJ,H:Y33A,5.5,2028.3403 75 | 1DQJ,H:Y50A,6.9,2555.81087 76 | 1DQJ,H:Y53A,1.2,-36.539075 77 | 1DQJ,"H:Y53A,C:D101A",2.7,190.01065 78 | 1DQJ,"H:Y53A,C:L75A",1.2,4909.117702 79 | 1DQJ,"H:Y53A,C:W62A",1.3,-1538.896438 80 | 1DQJ,"H:Y53A,C:W63A",2.2,844.940975 81 | 1DQJ,L:N31A,2,4541.69915 82 | 1DQJ,L:N32A,4.1,3057.8818 83 | 1DQJ,"L:N32A,C:K96A",5.8,3755.7186 84 | 1DQJ,L:S91A,1.4,1244.977811 85 | 1DQJ,"L:S91A,C:R21A",3.2,6280.762386 86 | 1DQJ,"L:S91A,C:Y20A",3.6,2168.85765 87 | 1DQJ,L:Y50A,2.7,2622.865125 88 | 1DQJ,L:Y96A,1.1,161.341475 89 | 1DQJ,"L:Y96A,C:R21A",3.5,2448.973475 90 | 1DQJ,"L:Y96A,C:S100A",0.9,1063.445446 91 | 1DVF,A:H30A,1.67,6194.419523 92 | 1DVF,A:S93A,1.17,3805.4987 93 | 1DVF,A:W92A,0.34,363.259325 94 | 1DVF,A:Y32A,2.05,-1032.8555 95 | 1DVF,"A:Y32A,D:R106A",4.7,155.04415 96 | 1DVF,A:Y49A,1.64,-1927.294525 97 | 1DVF,A:Y49A,1.75,4022.3928 98 | 1DVF,"A:Y49A,D:H33A",2.65,7314.937959 99 | 1DVF,"A:Y49A,D:N55A",2.05,7534.698175 100 | 1DVF,A:Y50A,0.69,3049.43359 101 | 1DVF,B:D100A,2.82,972.0407465 102 | 1DVF,"B:D100A,D:D52A",4.36,7978.875627 103 | 1DVF,"B:D100A,D:H33A",4.19,9612.559286 104 | 1DVF,"B:D100A,D:N55A",4.13,2044.7797 105 | 1DVF,B:D54A,4.32,-7.6668 106 | 1DVF,"B:D54A,C:Y49A",4.54,858.8800575 107 | 1DVF,B:D58A,1.62,3681.957399 108 | 1DVF,"B:D58A,D:Q104A",1.48,2177.1041 109 | 1DVF,B:E98A,4.23,2177.1041 110 | 1DVF,"B:E98A,D:Y102A",4.68,490.6789 111 | 1DVF,B:N56A,1.17,-1504.0006 112 | 1DVF,"B:N56A,D:H33A",2.55,3213.28975 113 | 1DVF,"B:N56A,D:N55A",2.32,2712.20165 114 | 1DVF,"B:N56A,D:Q104A",1.5,744.844375 115 | 1DVF,B:R99A,1.89,1430.78939 116 | 1DVF,B:T30A,0.92,2272.244222 117 | 1DVF,B:W52A,4.17,-602.22405 118 | 1DVF,"B:W52A,D:Q104A",4.2,3061.8055 119 | 1DVF,B:Y101F,2.03,2157.00385 120 | 1DVF,B:Y32A,1.85,591.650702 121 | 1DVF,C:Y49A,1.88,1303.7168 122 | 1DVF,D:D52A,1.7,-194.44545 123 | 1DVF,D:H33A,1.88,1603.8836 124 | 1DVF,D:I101A,2.71,958.75855 125 | 1DVF,D:K30A,1.01,-1110.348227 126 | 1DVF,D:N55A,1.88,-423.293925 127 | 1DVF,D:Q104A,1.64,6659.760836 128 | 1DVF,D:R106A,4.13,5297.584856 129 | 1DVF,D:Y102A,4.79,7553.9197 130 | 1FFW,A:A90V,0.09,-2028.5953 131 | 1FFW,A:D13K,0.05,0 132 | 1FFW,A:E117K,0.71,0 133 | 1FFW,A:E93K,0.82,0 134 | 1FFW,A:F111V,1.26,0 135 | 1FFW,A:T112I,0.56,0 136 | 1FFW,A:T87I,-0.32,0 137 | 1FFW,A:V108M,1.13,0.31985 138 | 1FFW,A:Y106W,0.71,758.470475 139 | 1JRH,"I:A103L,I:V104M,I:R106L,I:D107K",0.64,-103.45235 140 | 1JRH,"I:A59S,I:I61T,I:H65D",0.06,0 141 | 1JRH,"I:A95D,I:K98R,I:E100K",-0.06,-1208.732088 142 | 1JRH,I:E45Q,0.11,0 143 | 1JRH,"I:I35N,I:P37S,I:V39T,I:V41I",0.15,-1.92 144 | 1JRH,"I:M25L,I:I28V",-0.21,-1191.84255 145 | 1JRH,"I:S71Y,I:D72E,I:H73Q,I:V74I,I:G75M,I:D76Y,I:S78D,I:N79V,I:L81A",2.73,0 146 | 1JRH,I:T14V,-0.02,6228.042998 147 | 1JRH,"I:T19L,I:E21K",-0.02,0 148 | 1JRH,"I:V83A,I:R88K",-0.21,0 149 | 1JTG,A:K234A,0.82,1803.95825 150 | 1JTG,"A:K234A,A:S130A",0.84,4765.095193 151 | 1JTG,"A:K234A,A:S130A,A:R243A",1.13,6457.312293 152 | 1JTG,"A:K234A,A:S235A,A:S130A,A:R243A",1.54,3468.437243 153 | 1JTG,A:R243A,0.56,3668.308193 154 | 1JTG,"A:R243A,A:K234A",1.35,4653.232893 155 | 1JTG,"A:R243A,A:S130A",1.01,5160.808193 156 | 1JTG,"A:R243A,A:S235A",0.06,5361.199143 157 | 1JTG,"A:R243A,A:S235A,A:K234A",1.34,2054.30605 158 | 1JTG,"A:R243A,A:S235A,A:S130A",0.79,2254.697 159 | 1JTG,A:S130A,0.5,3350.81015 160 | 1JTG,A:S235A,1.32,6760.886201 161 | 1JTG,"A:S235A,A:K234A",1.13,6781.896202 162 | 1JTG,"A:S235A,A:S130A",0.81,7314.541743 163 | 1JTG,"A:S235A,A:S130A,A:K234A",1.17,7481.670593 164 | 1JTG,B:D49A,1.98,7293.309943 165 | 1JTG,"B:D49A,A:K234A",1.74,7293.309943 166 | 1JTG,"B:D49A,A:K234A,A:S130A",1.03,7325.228593 167 | 1JTG,"B:D49A,A:K234A,A:S130A,A:R243A",1.43,7447.770943 168 | 1JTG,"B:D49A,A:K234A,A:S235A,A:S130A,A:R243A",1.56,7447.770943 169 | 1JTG,"B:D49A,A:R243A",1.18,7492.357443 170 | 1JTG,"B:D49A,A:R243A,A:K234A",1.72,6792.583052 171 | 1JTG,"B:D49A,A:R243A,A:S130A",1.24,6885.507154 172 | 1JTG,"B:D49A,A:R243A,A:S235A",0.49,6885.507154 173 | 1JTG,"B:D49A,A:R243A,A:S235A,A:K234A",1.69,6930.093654 174 | 1JTG,"B:D49A,A:R243A,A:S235A,A:S130A",0.78,6919.406804 175 | 1JTG,"B:D49A,A:S130A",1.57,507.3003 176 | 1JTG,"B:D49A,A:S235A",1.84,2961.136943 177 | 1JTG,"B:D49A,A:S235A,A:K234A",1.44,707.17125 178 | 1JTG,"B:D49A,A:S235A,A:S130A",1.29,1546.73075 179 | 1JTG,"B:D49A,A:S235A,A:S130A,A:K234A",0.81,6760.886202 180 | 1KTZ,B:D118A,0.9,12.7302 181 | 1KTZ,B:D32A,1.4,1838.9109 182 | 1KTZ,B:D32N,1.7,2121.7281 183 | 1KTZ,B:E119A,1.4,1345.85415 184 | 1KTZ,B:E119Q,1.7,2632.2957 185 | 1KTZ,B:E55A,1.3,111.01505 186 | 1KTZ,B:E75A,1,0 187 | 1KTZ,B:F110A,0.9,0 188 | 1KTZ,B:F30A,2.9,42.028841 189 | 1KTZ,B:H79A,0.4,-15.4628 190 | 1KTZ,B:I125A,0.5,0 191 | 1KTZ,B:I50A,1.9,1826.734775 192 | 1KTZ,B:I53A,1.2,2478.77375 193 | 1KTZ,B:L27A,1.9,1043.44145 194 | 1KTZ,B:M112A,0.8,0 195 | 1KTZ,B:N47A,0.3,0 196 | 1KTZ,B:S49A,0.5,-221.5354 197 | 1KTZ,B:S52A,0.4,411.719425 198 | 1KTZ,B:S52L,3.7,-979.850975 199 | 1KTZ,B:T51A,1.3,175.0459 200 | 1KTZ,B:V62A,0.7,0 201 | 1KTZ,B:V77A,0.5,0 202 | 1MHP,H:F99W,0,-90.956525 203 | 1MHP,H:F99Y,0.76,2424.196075 204 | 1MHP,H:G100F,0.57,0 205 | 1MHP,H:G100I,8,0 206 | 1MHP,H:G100L,2.73,76.4937 207 | 1MHP,H:G100M,0.1,-1325.845528 208 | 1MHP,H:G100S,0.56,76.4937 209 | 1MHP,H:G100V,8,-1325.845528 210 | 1MHP,H:G102S,8,-1521.748187 211 | 1MHP,H:G53A,0.51,-5748.223987 212 | 1MHP,H:G53N,1.26,-1346.263612 213 | 1MHP,H:G53Q,8,-13266.50823 214 | 1MHP,H:G53S,0.68,-8071.0158 215 | 1MHP,H:G53W,8,1412.329766 216 | 1MHP,H:G54I,1.36,1488.71032 217 | 1MHP,H:G54M,8,-3420.163235 218 | 1MHP,H:G54N,8,1372.256637 219 | 1MHP,H:G54T,1.17,1488.259066 220 | 1MHP,H:G54Y,0,-27.217843 221 | 1MHP,H:H56Y,8,1397.302541 222 | 1MHP,H:K64D,-0.12,597.4645195 223 | 1MHP,H:K64E,-0.16,3744.397703 224 | 1MHP,"H:K64E,L:S28Q",-0.85,4317.815452 225 | 1MHP,"H:K64E,L:S28Q,L:N52Y",-0.95,-3001.5855 226 | 1MHP,H:K64N,-0.07,1874.87605 227 | 1MHP,H:K64Q,-0.16,-49.321 228 | 1MHP,H:L60D,-0.12,0 229 | 1MHP,"H:L60D,H:K64E",-0.14,-1037.7185 230 | 1MHP,"H:L60D,H:K64Q",0.04,-133.30145 231 | 1MHP,H:R31Q,1.31,-702.689425 232 | 1MHP,H:S35A,1.58,-178.770375 233 | 1MHP,"H:S35A,H:G102S",1.58,-1083.02035 234 | 1MHP,"H:S35A,H:T50V,H:G102S",8,-125.3942 235 | 1MHP,H:S35Q,2.73,-70.22555 236 | 1MHP,H:S35V,8,-484.420275 237 | 1MHP,"H:S35V,H:G102S",1.43,-3133.632712 238 | 1MHP,"H:S35V,H:T50V,H:G102S",8,-1196.475937 239 | 1MHP,H:S52M,2.08,-616.800612 240 | 1MHP,H:S52T,8,-7935.503475 241 | 1MHP,"H:T33E,H:G53Q",1.67,104.83465 242 | 1MHP,"H:T33I,H:S52T,H:G53N,H:G54N",1.91,-2106.02105 243 | 1MHP,"H:T33I,H:S52T,H:G53Q,H:G54F",1.26,-2911.572 244 | 1MHP,H:T33N,2.73,851.28155 245 | 1MHP,H:T33Q,8,264.65565 246 | 1MHP,"H:T33Q,H:G54W",8,4515.0726 247 | 1MHP,"H:T33S,H:G53W",8,0 248 | 1MHP,H:T33V,0.43,0 249 | 1MHP,H:T50E,8,0 250 | 1MHP,H:T50Q,8,0 251 | 1MHP,H:T50V,-0.26,0 252 | 1MHP,"H:T50V,H:G102S",1.67,6454.714869 253 | 1MHP,"H:T50V,H:K64E",-0.36,0 254 | 1MHP,"H:T50V,H:K64E,L:S28Q,L:N52E",-1.24,0 255 | 1MHP,"H:T50V,H:K64E,L:S28Q,L:N52Y",-1.04,0 256 | 1MHP,"H:T50V,H:S35A",2.08,1974.90845 257 | 1MHP,"H:T50V,H:S35V",2.73,146.53297 258 | 1MHP,"H:T50V,L:S28Q",-0.69,2497.55675 259 | 1MHP,"H:T50V,L:S28Q,L:N52Y",-1.2,-3376.68225 260 | 1MHP,H:Y58E,2.08,21.1253 261 | 1MHP,"H:Y58E,H:H56N",8,-721.5920875 262 | 1MHP,H:Y58Q,2.08,708.3184915 263 | 1MHP,"H:Y58Q,H:H56N",8,1488.259066 264 | 1MHP,H:Y58W,0.82,877.354553 265 | 1MHP,H:Y59E,0.54,2875.614018 266 | 1MHP,L:G92Q,1.58,1886.765073 267 | 1MHP,L:G92S,0.51,0 268 | 1MHP,L:H31K,1.17,-8998.68869 269 | 1MHP,L:H31R,1.12,-534.267225 270 | 1MHP,L:H31W,1.26,2959.30545 271 | 1MHP,L:L49F,0.71,1808.309615 272 | 1MHP,L:L49K,0.93,639.59885 273 | 1MHP,L:L49W,1.91,678.42615 274 | 1MHP,L:L49Y,8,-3228.5312 275 | 1MHP,L:N30K,8,-2247.01175 276 | 1MHP,L:N30V,1.05,633.03985 277 | 1MHP,L:N30W,1.58,578.021925 278 | 1MHP,L:N30Y,1.91,1269.5084 279 | 1MHP,"L:N30Y,L:S91I",0.43,-5089.64075 280 | 1MHP,L:N52D,0.5,-2965.892 281 | 1MHP,L:N52E,-0.18,-984.91 282 | 1MHP,L:N52K,0.66,-1331.7072 283 | 1MHP,L:N52R,0.85,-305.06335 284 | 1MHP,L:N52Y,-0.1,1546.4852 285 | 1MHP,L:N93D,8,-1467.09635 286 | 1MHP,L:S24R,-0.07,3645.736202 287 | 1MHP,L:S28Q,-0.67,0 288 | 1MHP,L:S91K,8,-90.956525 289 | 1MHP,L:S91Q,1.78,-4044.4477 290 | 1MHP,L:S91R,2.73,-399.135075 291 | 1MHP,L:S91T,2.32,-4190.586556 292 | 1MHP,L:S91W,8,-356.493925 293 | 1MHP,L:W90Q,2.08,-3735.994375 294 | 1MHP,"L:W90Q,L:F33Y",0.87,2549.30135 295 | 1MLC,H:K65D,0.02,-749.5423115 296 | 1MLC,H:S57A,-0.38,1204.538139 297 | 1MLC,H:S57V,-0.49,-320.156094 298 | 1MLC,"H:S57V,H:T58D",-0.99,-2574.977942 299 | 1MLC,"H:S57V,H:T58D,L:N32G,L:N92A",-1.74,171.486466 300 | 1MLC,"H:S57V,H:T58D,L:N92A",-2.4,169.564956 301 | 1MLC,H:T28D,-0.15,-2574.977942 302 | 1MLC,"H:T28D,H:E35S,H:S57V,H:T58D,H:G99D,L:N92A",-2.95,-801.113719 303 | 1MLC,"H:T28D,H:E35S,H:S57V,H:T58D,L:N92A",1.91,4136.653072 304 | 1MLC,"H:T28D,H:S30G,H:S57V,H:T58D,L:N92A",-2.36,-457.5878615 305 | 1MLC,"H:T28D,H:S57V,H:T58D,H:G99D,L:N92A",-0.2,-356.796944 306 | 1MLC,"H:T28D,H:S57V,H:T58D,H:R98M,H:D100Q,L:N92A",-0.41,-660.687794 307 | 1MLC,"H:T28D,H:S57V,H:T58D,H:Y59E,L:N92A",-1.47,-669.488744 308 | 1MLC,"H:T28D,H:S57V,H:T58D,L:N32L,L:N92A",-2.59,950.9131465 309 | 1MLC,"H:T28D,H:S57V,H:T58D,L:N92A",-2.74,-1031.702819 310 | 1MLC,"H:T28D,H:S57V,H:T58D,L:S91N,L:N92A",1.78,1937.00995 311 | 1MLC,"H:T28D,H:S57V,H:T58D,L:S91N,L:N92A,L:S93A",-1.61,0 312 | 1MLC,"H:T28D,H:Y32R,H:S57V,H:T58D,H:R98S,L:N92A",1.78,625.54135 313 | 1MLC,"H:T28D,H:Y32W,H:S57V,H:T58D,H:R98V,H:D100Q,L:N92A",0.41,-749.5423115 314 | 1MLC,H:T31A,0.45,-27.66225 315 | 1MLC,H:T31V,0.53,874.193825 316 | 1MLC,H:T31W,0.13,-15.346325 317 | 1MLC,H:T58D,-0.56,-3560.76955 318 | 1MLC,L:N32G,-0.85,0 319 | 1MLC,"L:N32G,L:N92A",-0.69,1482.79945 320 | 1MLC,L:N32Y,0,-1820.743425 321 | 1MLC,L:N92A,-1.25,336.79295 322 | 1N8Z,H:D31A,0.25,2176.660683 323 | 1N8Z,H:D98A,1.21,1923.4256 324 | 1N8Z,H:D98W,-0.69,1398.448375 325 | 1N8Z,H:F100A,1.17,-3454.308505 326 | 1N8Z,H:K30A,0.61,1064.12245 327 | 1N8Z,H:N54A,-0.15,1004.10385 328 | 1N8Z,H:R50A,8,-1895.37075 329 | 1N8Z,H:T32A,0.38,868.6233 330 | 1N8Z,H:T53A,0.78,0 331 | 1N8Z,H:W95A,8,0 332 | 1N8Z,"H:W95A,H:Y100aA",8,1558.466188 333 | 1N8Z,H:Y100aA,8,0 334 | 1N8Z,H:Y100aF,-0.05,0 335 | 1N8Z,H:Y100aF,0.82,1308.037383 336 | 1N8Z,H:Y102V,0.22,868.6233 337 | 1N8Z,H:Y33A,-0.09,0 338 | 1N8Z,H:Y52A,0.23,0 339 | 1N8Z,H:Y56A,0.87,0 340 | 1N8Z,L:D28N,-0.28,3971.909055 341 | 1N8Z,L:F53N,1.21,-1155.7588 342 | 1N8Z,L:H91A,8,4748.94062 343 | 1N8Z,"L:H91A,H:Y100aA",8,49.7044 344 | 1N8Z,L:H91F,-0.43,2299.25995 345 | 1N8Z,L:H91F,0.03,1054.9303 346 | 1N8Z,L:N30A,1.12,1043.256775 347 | 1N8Z,L:N30S,0.06,1043.256775 348 | 1N8Z,"L:N30S,L:H91F,L:Y92W",-0.07,-1031.2293 349 | 1N8Z,"L:N30S,L:H91F,L:Y92W,L:T94S,H:D98W,H:Y100aF,H:Y102V",0.05,-1487.2065 350 | 1N8Z,L:R66G,0.22,-185.7954 351 | 1N8Z,L:S50A,-0.07,-5127.92705 352 | 1N8Z,L:S52A,-0.31,-46.5527545 353 | 1N8Z,L:T31A,0.8,-430.88785 354 | 1N8Z,L:T93A,0.82,855.3991725 355 | 1N8Z,L:T94A,-0.12,5689.177757 356 | 1N8Z,L:T94S,0.31,-354.91675 357 | 1N8Z,L:Y49A,1.05,2349.936525 358 | 1N8Z,L:Y92A,1.36,713.8787 359 | 1N8Z,L:Y92F,-0.21,2503.35355 360 | 1T83,"A:A327D,B:A327D",2.32,-812.62065 361 | 1T83,"A:A327L,B:A327L",1.78,3234.398775 362 | 1T83,"A:A327N,B:A327N",0.98,-1206.439675 363 | 1T83,"A:A327S,B:A327S",0.87,-358.3301 364 | 1T83,"A:A327T,B:A327T",2.32,-473.2377 365 | 1T83,"A:A330F,B:A330F",0.3,-1298.11 366 | 1T83,"A:A330H,B:A330H",0.39,-2491.062625 367 | 1T83,"A:A330I,B:A330I",-0.32,-2409.7392 368 | 1T83,"A:A330L,B:A330L",0.19,-2197.0133 369 | 1T83,"A:A330L,B:A330L,A:I332E,B:I332E",-1.39,-2982.5645 370 | 1T83,"A:A330R,B:A330R",2.32,-2178.886655 371 | 1T83,"A:A330V,B:A330V",0.5,-1706.829675 372 | 1T83,"A:A330Y,B:A330Y",-0.29,-2111.617075 373 | 1T83,"A:A330Y,B:A330Y,A:I332E,B:I332E",-1.48,-4432.355925 374 | 1T83,"A:D265F,B:D265F,A:N297E,B:N297E,A:I332E,B:I332E",2.32,-1151.907544 375 | 1T83,"A:D265G,B:D265G",2.32,1744.6085 376 | 1T83,"A:D265N,B:D265N",2.32,3051.459925 377 | 1T83,"A:D265Y,B:D265Y,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-5854.870728 378 | 1T83,"A:D265Y,B:D265Y,A:N297D,B:N297D,A:T299L,B:T299L,A:I332E,B:I332E",2.32,-7007.527228 379 | 1T83,"A:D270H,B:D270H",2.32,-88.71635 380 | 1T83,"A:D270Q,B:D270Q",2.32,0 381 | 1T83,"A:D270T,B:D270T",2.32,0 382 | 1T83,"A:E269F,B:E269F",1.09,-1378.769425 383 | 1T83,"A:E269H,B:E269H",2.32,-545.374025 384 | 1T83,"A:E269L,B:E269L",2.32,-610.8214 385 | 1T83,"A:E269N,B:E269N",2.32,-153.6541 386 | 1T83,"A:E269R,B:E269R",1.78,-1367.526558 387 | 1T83,"A:E269T,B:E269T",2.32,-277.77265 388 | 1T83,"A:E269Y,B:E269Y",1.26,-1211.7383 389 | 1T83,"A:E272Y,B:E272Y",-1.28,0 390 | 1T83,"A:E283R,B:E283R",0.24,0 391 | 1T83,"A:E318R,B:E318R",-0.04,0 392 | 1T83,"A:E333H,B:E333H",0.17,0 393 | 1T83,"A:E333T,B:E333T",0.15,0 394 | 1T83,"A:F241E,B:F241E,A:F243Q,B:F243Q,A:V262T,B:V262T,A:V264E,B:V264E",1.58,2172.2367 395 | 1T83,"A:F241E,B:F241E,A:F243R,B:F243R,A:V262E,B:V262E,A:V264R,B:V264R",1.78,2172.2367 396 | 1T83,"A:F241E,B:F241E,A:F243R,B:F243R,A:V262E,B:V262E,A:V264R,B:V264R,A:I332E,B:I332E",0.98,1386.6855 397 | 1T83,"A:F241E,B:F241E,A:F243Y,B:F243Y,A:V262T,B:V262T,A:V264R,B:V264R",1.78,2172.2367 398 | 1T83,"A:F241E,B:F241E,A:F243Y,B:F243Y,A:V262T,B:V262T,A:V264R,B:V264R,A:I332E,B:I332E",1.36,1386.6855 399 | 1T83,"A:F241L,B:F241L",0.8,0 400 | 1T83,"A:F241L,B:F241L,A:F243L,B:F243L,A:V262I,B:V262I,A:V264I,B:V264I",1.43,0 401 | 1T83,"A:F241R,B:F241R,A:F243Q,B:F243Q,A:V262T,B:V262T,A:V264R,B:V264R",2.32,2172.2367 402 | 1T83,"A:F241W,B:F241W",0.73,0 403 | 1T83,"A:F241W,B:F241W,A:F243W,B:F243W",1.58,0 404 | 1T83,"A:F241W,B:F241W,A:F243W,B:F243W,A:V262A,B:V262A,A:V264A,B:V264A",1.91,2172.2367 405 | 1T83,"A:F241Y,B:F241Y,A:F243Y,B:F243Y,A:V262T,B:V262T,A:V264T,B:V264T",1.78,-1097.62165 406 | 1T83,"A:F241Y,B:F241Y,A:F243Y,B:F243Y,A:V262T,B:V262T,A:V264T,B:V264T,A:N297D,B:N297D,A:I332E,B:I332E",1.12,-405.176003 407 | 1T83,"A:F243L,B:F243L",0.4,0 408 | 1T83,"A:F243L,B:F243L,A:V262I,B:V262I,A:V264W,B:V264W",2.32,-329.0181 409 | 1T83,"A:F243L,B:F243L,A:V264I,B:V264I",-0.12,0 410 | 1T83,"A:F243W,B:F243W",0.4,0 411 | 1T83,"A:F275W,B:F275W",-0.06,0 412 | 1T83,"A:I332A,B:I332A",0.07,2552.094425 413 | 1T83,"A:I332D,B:I332D",-1.71,-1252.061025 414 | 1T83,"A:I332E,B:I332E",-1.13,-785.5512 415 | 1T83,"A:I332H,B:I332H",0.46,2196.62445 416 | 1T83,"A:I332N,B:I332N",0.56,1615.35335 417 | 1T83,"A:I332Q,B:I332Q",0.59,-1201.461175 418 | 1T83,"A:I332T,B:I332T",0.2,784.938775 419 | 1T83,"A:I332Y,B:I332Y",0.16,-1577.4494 420 | 1T83,"A:K274E,B:K274E",-1.07,0 421 | 1T83,"A:K274L,B:K274L",-0.05,0 422 | 1T83,"A:K274R,B:K274R",-0.2,0 423 | 1T83,"A:K274T,B:K274T",-0.2,0 424 | 1T83,"A:K274Y,B:K274Y",-0.04,0 425 | 1T83,"A:K326E,B:K326E",-0.8,0 426 | 1T83,"A:K326I,B:K326I",-0.21,0 427 | 1T83,"A:K326T,B:K326T",-0.37,0 428 | 1T83,"A:L235D,B:L235D",-0.3,1076.96775 429 | 1T83,"A:L235F,B:L235F",0.19,-548.4362 430 | 1T83,"A:L235H,B:L235H",0.53,-3002.93435 431 | 1T83,"A:L235I,B:L235I",-0.06,-1439.01495 432 | 1T83,"A:L235N,B:L235N",0.54,2709.25175 433 | 1T83,"A:L235Q,B:L235Q",0.4,-1404.834675 434 | 1T83,"A:L235S,B:L235S",-0.13,647.47675 435 | 1T83,"A:L235T,B:L235T",0.39,109.412 436 | 1T83,"A:L235V,B:L235V",0.43,465.6131 437 | 1T83,"A:L235Y,B:L235Y",-0.1,-524.0046 438 | 1T83,"A:L328A,B:L328A",0.95,1386.818275 439 | 1T83,"A:L328D,B:L328D,A:I332E,B:I332E",-0.17,-662.62005 440 | 1T83,"A:L328E,B:L328E",1.26,310.501625 441 | 1T83,"A:L328E,B:L328E,A:I332E,B:I332E",0.95,-2549.02835 442 | 1T83,"A:L328F,B:L328F",0.85,1133.8218 443 | 1T83,"A:L328H,B:L328H",2.32,-135.810225 444 | 1T83,"A:L328H,B:L328H,A:I332E,B:I332E",2.32,-1628.4673 445 | 1T83,"A:L328I,B:L328I,A:I332E,B:I332E",-0.74,-1130.453175 446 | 1T83,"A:L328I,B:L328I,A:I332E,B:I332E",-1.16,-1130.453175 447 | 1T83,"A:L328M,B:L328M",0.93,367.99085 448 | 1T83,"A:L328M,B:L328M,A:I332E,B:I332E",-0.57,-1463.8147 449 | 1T83,"A:L328N,B:L328N",0.31,272.9928 450 | 1T83,"A:L328N,B:L328N,A:I332E,B:I332E",2.32,-1629.39265 451 | 1T83,"A:L328Q,B:L328Q,A:I332E,B:I332E",-0.26,1019.005225 452 | 1T83,"A:L328Q,B:L328Q,A:I332E,B:I332E",0.21,251.120425 453 | 1T83,"A:L328T,B:L328T,A:I332E,B:I332E",-0.06,-1117.247675 454 | 1T83,"A:L328V,B:L328V,A:I332E,B:I332E",-0.43,-1121.02515 455 | 1T83,"A:N276E,B:N276E",0.08,0 456 | 1T83,"A:N276L,B:N276L",-0.04,0 457 | 1T83,"A:N276R,B:N276R",0.25,0 458 | 1T83,"A:N276S,B:N276S",0.53,0 459 | 1T83,"A:N276Y,B:N276Y",0.34,0 460 | 1T83,"A:N297D,B:N297D",2.32,-1.653153 461 | 1T83,"A:N297D,B:N297D,A:A330Y,B:A330Y,A:I332E,B:I332E",0.5,-2820.159528 462 | 1T83,"A:N297D,B:N297D,A:I332E,B:I332E",1.5,-787.204353 463 | 1T83,"A:N297D,B:N297D,A:S298A,B:S298A,A:A330Y,B:A330Y,A:I332E,B:I332E",1.09,-3400.506978 464 | 1T83,"A:N297D,B:N297D,A:T299E,B:T299E,A:I332E,B:I332E",2.32,-349.597828 465 | 1T83,"A:N297D,B:N297D,A:T299F,B:T299F,A:I332E,B:I332E",2.32,-1444.674 466 | 1T83,"A:N297D,B:N297D,A:T299H,B:T299H,A:I332E,B:I332E",2.32,-1903.540978 467 | 1T83,"A:N297D,B:N297D,A:T299I,B:T299I,A:I332E,B:I332E",2.32,-798.059128 468 | 1T83,"A:N297D,B:N297D,A:T299L,B:T299L,A:I332E,B:I332E",2.32,-2268.074978 469 | 1T83,"A:N297D,B:N297D,A:T299V,B:T299V,A:I332E,B:I332E",2.32,-793.809703 470 | 1T83,"A:N297E,B:N297E,A:I332E,B:I332E",2.32,-404.779994 471 | 1T83,"A:N297S,B:N297S",2.32,-1.6479345 472 | 1T83,"A:N297S,B:N297S,A:I332E,B:I332E",2.32,-787.1991345 473 | 1T83,"A:N325A,B:N325A",1.31,75.57165 474 | 1T83,"A:N325D,B:N325D",0.53,27.04785 475 | 1T83,"A:N325E,B:N325E",2.32,267.0497 476 | 1T83,"A:N325H,B:N325H",0.19,403.54255 477 | 1T83,"A:N325I,B:N325I",2.32,46.14545 478 | 1T83,"A:N325L,B:N325L",2.32,124.90755 479 | 1T83,"A:N325Q,B:N325Q",2.32,54.439525 480 | 1T83,"A:N325T,B:N325T",-0.06,49.34395 481 | 1T83,"A:N325V,B:N325V",0.43,55.10125 482 | 1T83,"A:P244H,B:P244H",0.11,0 483 | 1T83,"A:P244H,B:P244H,A:P245A,B:P245A,A:P247V,B:P247V",0.04,0 484 | 1T83,"A:P245A,B:P245A",0.82,0 485 | 1T83,"A:P247G,B:P247G",0.36,0 486 | 1T83,"A:P247V,B:P247V",0.38,0 487 | 1T83,"A:P329F,B:P329F",2.32,1682.823125 488 | 1T83,"A:S239D,B:S239D",-1.46,-2255.3381 489 | 1T83,"A:S239D,B:S239D,A:A330L,B:A330L,A:I332E,B:I332E",-2.92,-3337.5603 490 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E",-2.88,-3671.122375 491 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:K326E,B:K326E",-2.47,-3671.1504 492 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:K326T,B:K326T",-2.42,-5284.99995 493 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:L235D,B:L235D",-1.16,-3394.83545 494 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:V240I,B:V240I",-1.98,-6823.829525 495 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:V264T,B:V264T",-1.71,-5279.982725 496 | 1T83,"A:S239D,B:S239D,A:D265F,B:D265F,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-3247.701903 497 | 1T83,"A:S239D,B:S239D,A:D265H,B:D265H,A:N297D,B:N297D,A:I332E,B:I332E",1.91,-5482.276453 498 | 1T83,"A:S239D,B:S239D,A:D265I,B:D265I,A:N297D,B:N297D,A:I332E,B:I332E",2.73,-3345.238553 499 | 1T83,"A:S239D,B:S239D,A:D265L,B:D265L,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-658.302603 500 | 1T83,"A:S239D,B:S239D,A:D265T,B:D265T,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-3692.899653 501 | 1T83,"A:S239D,B:S239D,A:D265V,B:D265V,A:N297D,B:N297D,A:I332E,B:I332E",2.08,-3306.928203 502 | 1T83,"A:S239D,B:S239D,A:D265Y,B:D265Y,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-9562.557878 503 | 1T83,"A:S239D,B:S239D,A:I332D,B:I332D",-1.57,-2804.097475 504 | 1T83,"A:S239D,B:S239D,A:I332E,B:I332E",-2.39,-1910.37245 505 | 1T83,"A:S239D,B:S239D,A:I332E,B:I332E,A:A330I,B:A330I",-2.42,-4320.195725 506 | 1T83,"A:S239D,B:S239D,A:I332N,B:I332N",-1.17,-795.377825 507 | 1T83,"A:S239D,B:S239D,A:I332Q,B:I332Q",-1.32,-2506.7358 508 | 1T83,"A:S239D,B:S239D,A:N297D,B:N297D,A:I332E,B:I332E",0.76,-2081.145503 509 | 1T83,"A:S239D,B:S239D,A:N297D,B:N297D,A:I332E,B:I332E,A:A330Y,B:A330Y",2.32,-4611.776928 510 | 1T83,"A:S239D,B:S239D,A:N297D,B:N297D,A:I332E,B:I332E,A:A330Y,B:A330Y,A:F241S,B:F241S,A:F243H,B:F243H,A:V262T,B:V262T,A:V264T,B:V264T",2.32,-3761.298628 511 | 1T83,"A:S239D,B:S239D,A:S298A,B:S298A,A:I332E,B:I332E",-3.37,-1046.42345 512 | 1T83,"A:S239D,B:S239D,A:V264I,B:V264I,A:I332E,B:I332E",-2.13,1716.0828 513 | 1T83,"A:S239E,B:S239E",-1.38,527.3028 514 | 1T83,"A:S239E,B:S239E,A:D265G,B:D265G",2.32,3798.502775 515 | 1T83,"A:S239E,B:S239E,A:D265N,B:D265N",2.32,3505.01835 516 | 1T83,"A:S239E,B:S239E,A:D265Q,B:D265Q",1.78,2808.80305 517 | 1T83,"A:S239E,B:S239E,A:I332D,B:I332D",-1.32,-1.265275 518 | 1T83,"A:S239E,B:S239E,A:I332E,B:I332E",-1.04,897.23055 519 | 1T83,"A:S239E,B:S239E,A:I332N,B:I332N",-1.47,2018.910975 520 | 1T83,"A:S239E,B:S239E,A:I332Q,B:I332Q",-0.79,-346.3965 521 | 1T83,"A:S239E,B:S239E,A:N297D,B:N297D,A:I332E,B:I332E",1.67,896.372397 522 | 1T83,"A:S239E,B:S239E,A:V264I,B:V264I,A:A330Y,B:A330Y,A:I332E,B:I332E",-1.27,-1707.487425 523 | 1T83,"A:S239E,B:S239E,A:V264I,B:V264I,A:I332E,B:I332E",-1.62,249.96685 524 | 1T83,"A:S239F,B:S239F",0.9,1596.101375 525 | 1T83,"A:S239H,B:S239H",0.95,145.6709 526 | 1T83,"A:S239N,B:S239N",2.32,2867.1043 527 | 1T83,"A:S239N,B:S239N,A:A330L,B:A330L,A:I332E,B:I332E",-1.52,-373.095 528 | 1T83,"A:S239N,B:S239N,A:A330Y,B:A330Y,A:I332E,B:I332E",-1.57,-916.998125 529 | 1T83,"A:S239N,B:S239N,A:I332D,B:I332D",-0.67,1356.972075 530 | 1T83,"A:S239N,B:S239N,A:I332E,B:I332E",-1.57,1823.9183 531 | 1T83,"A:S239N,B:S239N,A:I332N,B:I332N",0.5,4430.9823 532 | 1T83,"A:S239N,B:S239N,A:I332Q,B:I332Q",0.34,1408.008325 533 | 1T83,"A:S239N,B:S239N,A:S298A,B:S298A,A:I332E,B:I332E",-2.06,2856.9872 534 | 1T83,"A:S239Q,B:S239Q,A:I332D,B:I332D",-0.96,2475.961225 535 | 1T83,"A:S239Q,B:S239Q,A:I332E,B:I332E",-1.12,2942.47105 536 | 1T83,"A:S239Q,B:S239Q,A:I332N,B:I332N",0.56,3920.126525 537 | 1T83,"A:S239Q,B:S239Q,A:I332Q,B:I332Q",0.31,2526.561075 538 | 1T83,"A:S239Q,B:S239Q,A:V264I,B:V264I,A:I332E,B:I332E",-0.45,3977.63265 539 | 1T83,"A:S239T,B:S239T",-0.17,4295.29235 540 | 1T83,"A:S239Y,B:S239Y",0.93,-2612.82695 541 | 1T83,"A:S267L,B:S267L,A:A327S,B:A327S",2.32,1648.46475 542 | 1T83,"A:S267Q,B:S267Q,A:A327S,B:A327S",2.08,-146.94495 543 | 1T83,"A:S298A,B:S298A",-0.47,1033.5021 544 | 1T83,"A:S298A,B:S298A,A:E333A,B:E333A,A:K334A,B:K334A",-0.56,455.1516 545 | 1T83,"A:S298A,B:S298A,A:I332E,B:I332E",-1.83,247.9509 546 | 1T83,"A:S298H,B:S298H",0.78,-5524.385125 547 | 1T83,"A:S298N,B:S298N",0.53,2781.36825 548 | 1T83,"A:S298T,B:S298T",0.04,1418.3327 549 | 1T83,"A:S324D,B:S324D",-0.04,0 550 | 1T83,"A:S324I,B:S324I",-0.08,0 551 | 1T83,"A:S324L,B:S324L",2.32,0 552 | 1T83,"A:S324R,B:S324R",0.2,0 553 | 1T83,"A:S324V,B:S324V",-0.09,0 554 | 1T83,"A:S324Y,B:S324Y",0.01,0 555 | 1T83,"A:T299A,B:T299A",2.08,808.591825 556 | 1T83,"A:T299H,B:T299H",2.32,-1115.312625 557 | 1T83,"A:T299I,B:T299I",2.32,1.257 558 | 1T83,"A:T299S,B:T299S",1.12,1108.302225 559 | 1T83,"A:T299V,B:T299V",2.32,5.7214 560 | 1T83,"A:T335D,B:T335D",-0.61,0 561 | 1T83,"A:T335R,B:T335R",-0.56,0 562 | 1T83,"A:T335Y,B:T335Y",-0.26,0 563 | 1T83,"A:V240A,B:V240A",0.21,0 564 | 1T83,"A:V240I,B:V240I",-0.7,0 565 | 1T83,"A:V240I,B:V240I,A:V266I,B:V266I",-0.32,105.3398 566 | 1T83,"A:V240M,B:V240M",-0.43,0 567 | 1T83,"A:V263I,B:V263I",1.36,0 568 | 1T83,"A:V263M,B:V263M",1.78,0 569 | 1T83,"A:V263T,B:V263T",0.5,0 570 | 1T83,"A:V264A,B:V264A",0.38,2172.2367 571 | 1T83,"A:V264E,B:V264E,A:N297D,B:N297D,A:I332E,B:I332E",1.78,1210.095747 572 | 1T83,"A:V264F,B:V264F",1.09,-23.2315 573 | 1T83,"A:V264I,B:V264I",-0.21,0 574 | 1T83,"A:V264I,B:V264I,A:A330L,B:A330L,A:I332E,B:I332E",-1.43,-2982.5645 575 | 1T83,"A:V264I,B:V264I,A:A330Y,B:A330Y,A:I332E,B:I332E",-1.47,-2818.506375 576 | 1T83,"A:V264I,B:V264I,A:I332E,B:I332E",-1.5,-785.5512 577 | 1T83,"A:V264I,B:V264I,A:S298A,B:S298A,A:I332E,B:I332E",-1.66,247.9509 578 | 1T83,"A:V264L,B:V264L",0.34,0 579 | 1T83,"A:V264M,B:V264M",0.8,0 580 | 1T83,"A:V264T,B:V264T",-0.6,-1097.62165 581 | 1T83,"A:V264Y,B:V264Y",-0.01,-28.3014 582 | 1T83,"A:V266A,B:V266A",2.32,0 583 | 1T83,"A:V266I,B:V266I",-0.37,105.3398 584 | 1T83,"A:V266M,B:V266M",0.28,0 585 | 1T83,"A:V266T,B:V266T",0.47,0 586 | 1T83,"A:V273I,B:V273I",0.14,-221.6418 587 | 1T83,"A:V302I,B:V302I",-0.01,0 588 | 1T83,"A:V323I,B:V323I",0.11,0 589 | 1T83,"A:W313F,B:W313F",0.08,0 590 | 1T83,"A:Y278E,B:Y278E",0.06,0 591 | 1T83,"A:Y278T,B:Y278T",-0.37,0 592 | 1T83,"A:Y278W,B:Y278W",0.53,0 593 | 1T83,"A:Y296D,B:Y296D",0.28,-2288.278542 594 | 1T83,"A:Y296E,B:Y296E",0.19,996.06065 595 | 1T83,"A:Y296E,B:Y296E,A:N297D,B:N297D,A:I332E,B:I332E",2.32,208.856297 596 | 1T83,"A:Y296H,B:Y296H,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-2458.232853 597 | 1T83,"A:Y296I,B:Y296I",1.43,106.916139 598 | 1T83,"A:Y296L,B:Y296L",0.9,-644.294928 599 | 1T83,"A:Y296N,B:Y296N",0.73,341.3612415 600 | 1T83,"A:Y296N,B:Y296N,A:N297D,B:N297D,A:I332E,B:I332E",1.91,-445.8431115 601 | 1T83,"A:Y296Q,B:Y296Q",0.39,-1836.220369 602 | 1T83,"A:Y296Q,B:Y296Q,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-2623.424722 603 | 1T83,"A:Y296S,B:Y296S",1.26,347.9851725 604 | 1T83,"A:Y296T,B:Y296T",2.32,-9.4087995 605 | 1T83,"A:Y296T,B:Y296T,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-796.6131525 606 | 1VFB,C:D119A,1,3772.51175 607 | 1VFB,C:D18A,0.3,741.17165 608 | 1VFB,C:I124A,1.2,3794.498525 609 | 1VFB,C:K116A,0.7,2737.901575 610 | 1VFB,C:L129A,0.2,4482.425125 611 | 1VFB,C:N19A,0.3,4397.706159 612 | 1VFB,C:Q121A,2.9,4304.852969 613 | 1VFB,C:R125A,1.8,4599.118519 614 | 1VFB,C:S24A,0.8,7018.594619 615 | 1VFB,C:T118A,0.8,4459.837613 616 | 1VFB,C:V120A,0.9,2647.708025 617 | 1VFB,C:Y23A,0.4,6162.3166 618 | 1VFB,H:D100A,2.9,3075.15845 619 | 1VFB,"H:D100A,C:S24A",3.4,2749.0712 620 | 1VFB,H:D54A,1,1080.2948 621 | 1VFB,"H:D54A,C:T118A",1.2,-151.013675 622 | 1VFB,H:D58E,0.08,731.137675 623 | 1VFB,H:D58N,-0.13,3079.416043 624 | 1VFB,H:G31A,0.3,734.4146 625 | 1VFB,H:G31E,-0.51,663.2207 626 | 1VFB,H:G31W,0.01,3570.53205 627 | 1VFB,H:R99W,0.71,1414.052013 628 | 1VFB,H:R99Y,1.26,295.21795 629 | 1VFB,H:S28D,0,302.62765 630 | 1VFB,H:S28E,-0.1,1057.08305 631 | 1VFB,H:S28N,0.15,-149.4046 632 | 1VFB,H:S28Q,0.08,4031.12455 633 | 1VFB,H:W52A,0.9,529.4009 634 | 1VFB,"H:W52A,C:D119A",2.2,0 635 | 1VFB,H:Y101A,4,0 636 | 1VFB,H:Y101F,1.6,704.750793 637 | 1VFB,"H:Y101F,C:D119A",2.7,-2898.316557 638 | 1VFB,"H:Y101F,C:V120A",2.5,-2340.914157 639 | 1VFB,H:Y32A,1.1,439.185339 640 | 1VFB,"H:Y32A,C:K116A",1.6,-1962.087311 641 | 1VFB,H:Y32E,1.91,0 642 | 1VFB,L:L46D,8,0 643 | 1VFB,L:L46E,8,0 644 | 1VFB,L:N31W,0.17,0 645 | 1VFB,L:T52F,0.47,2732.251325 646 | 1VFB,L:T53R,1.67,4870.5285 647 | 1VFB,L:W92A,3.3,3188.066775 648 | 1VFB,"L:W92A,C:I124A",3.8,3849.132899 649 | 1VFB,"L:W92A,C:L129A",3.3,3849.132899 650 | 1VFB,"L:W92A,C:Q121A",3.5,-1062.87729 651 | 1VFB,"L:W92A,C:R125A",3.4,-1062.87729 652 | 1VFB,L:Y32A,1.7,-1168.69385 653 | 1VFB,"L:Y32A,C:I124A",2.9,-582.47935 654 | 1VFB,"L:Y32A,C:Q121A",2.6,2502.65587 655 | 1VFB,L:Y32W,8,4076.517444 656 | 1VFB,L:Y50A,0.5,2184.7492 657 | 1VFB,"L:Y50A,C:D119A",1.2,-387.792387 658 | 1VFB,"L:Y50A,C:D18A",1.3,2025.6308 659 | 1VFB,L:Y50K,1.67,-565.25955 660 | 1VFB,L:Y50R,0.85,-3169.28885 661 | 1YY9,H:N56A,-0.06,-1264.7132 662 | 1YY9,H:T61E,-0.06,2150.465373 663 | 1YY9,L:N93A,-0.74,-1154.2436 664 | 1YY9,L:S26D,-0.2,2851.940573 665 | 1YY9,"L:S26D,L:T31E,L:N93A",-1.33,0 666 | 1YY9,"L:S26D,L:T31E,L:N93A,H:N56A,H:T61E",-0.65,-1154.2436 667 | 1YY9,L:T31E,-0.52,0 668 | 1YY9,"L:T31E,L:N93A",-0.82,0 669 | 2JEL,P:A82S,0,0 670 | 2JEL,P:D69E,0.96,0 671 | 2JEL,P:E5D,0.41,-0.12845 672 | 2JEL,P:E5Q,0.72,3.0701 673 | 2JEL,P:E66K,4.13,1852.6697 674 | 2JEL,P:E68A,0.41,316.10835 675 | 2JEL,P:E70A,2.75,2479.96805 676 | 2JEL,P:E70K,4.13,3711.8109 677 | 2JEL,P:E75R,2.75,12.3921305 678 | 2JEL,P:E83A,0,0 679 | 2JEL,P:E85A,0,0 680 | 2JEL,P:E85D,0,0 681 | 2JEL,P:E85K,0,0 682 | 2JEL,P:E85Q,0,0 683 | 2JEL,P:F2W,2.64,-4598.494925 684 | 2JEL,P:F2Y,0,7.619125 685 | 2JEL,P:H76A,-0.41,0 686 | 2JEL,P:H76D,-0.66,0 687 | 2JEL,P:K24E,0,0 688 | 2JEL,P:K27E,0,0 689 | 2JEL,P:K72E,0.41,-36.905925 690 | 2JEL,P:K72R,0,86.210775 691 | 2JEL,P:K79E,0.41,-12.795 692 | 2JEL,P:N12D,0,0 693 | 2JEL,P:N38T,0,0 694 | 2JEL,P:P11E,0,0 695 | 2JEL,P:Q3K,4.13,659.789125 696 | 2JEL,P:Q4K,1.38,345.295475 697 | 2JEL,P:Q57E,-0.41,0 698 | 2JEL,P:Q71E,2.75,5604.38465 699 | 2JEL,P:R17G,0,0 700 | 2JEL,P:R17K,0,0 701 | 2JEL,P:S41C,1.51,1181.4394 702 | 2JEL,P:S43C,0,0 703 | 2JEL,P:S46C,0,0 704 | 2JEL,P:S64T,4.13,-1010.07065 705 | 2JEL,P:T34Q,0,-627.5615 706 | 2JEL,P:T36Q,0.41,525.0672 707 | 2JEL,P:T62A,0,67.87235 708 | 2JEL,P:T62N,0,-35.27405 709 | 2JEL,P:T7N,0.41,0 710 | 2JEL,P:T7S,0,0 711 | 2JEL,P:V6F,0,0 712 | 2NY7,"H:N31H,H:V33T,H:I34L",-0.69,-3532.75699 713 | 2NY7,"H:N31H,H:V33T,H:I34V",-0.81,-7695.943973 714 | 2NY7,"H:P97E,H:Y98W,H:S99G",-1.23,-4520.185628 715 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aD,H:D100bQ,H:S100cR,H:P100dR,H:Q100eY",-0.74,-6282.810058 716 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aD,H:D100bQ,H:S100cV,H:P100dR,H:Q100eY",-2.26,-6282.810058 717 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aE,H:D100bM,H:S100cF,H:P100dR,H:Q100eY",-2.46,-6282.810058 718 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aE,H:D100bM,H:S100cR,H:P100dR,H:Q100eF",-2.3,-6282.810058 719 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aE,H:D100bQ,H:S100cF,H:P100dR,H:Q100eF",-1.61,-6282.810058 720 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aH,H:D100bQ,H:S100cR,H:P100dR,H:Q100eY",-2.27,-6282.810058 721 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aT,H:D100bQ,H:S100cR,H:P100dR,H:Q100eF",-2.12,-6282.810058 722 | 2NY7,"H:V33T,H:H35M",-0.57,-1069.01555 723 | 2NY7,"H:V33T,H:I34V",-1.25,-1069.01555 724 | 2NY7,"L:A93G,L:S95A",-0.38,0 725 | 2NY7,"L:A93W,L:S95Q",-1.47,0 726 | 2NY7,"L:S28K,L:I28aE,L:R29F,L:S30G",-0.16,0 727 | 2NY7,"L:S28P,L:I28aL,L:R29H,L:S30R,L:R31A",-1.3,0 728 | 2NY7,"L:S28Q,L:I28aL,L:R29D,L:S30G,L:R31S",-2,0 729 | 2NY7,"L:S28T,L:I28aV,L:R29Y,L:S30R,L:R31D",-1.03,0 730 | 2NY7,"L:V90K,L:A93D,L:S95F",-2,0 731 | 2NY7,"L:V90K,L:A93G,L:S94G,L:S95T",-1.93,0 732 | 2NY7,"L:V90L,L:A93R,L:S94G,L:S95N",-1.61,0 733 | 2NY7,"L:V90M,L:A93G,L:S94F,L:S95T",-1.36,-315.6544 734 | 2NY7,"L:V90M,L:A93G,L:S94R,L:S95D",-0.24,-345.2232365 735 | 2NY7,"L:V90Q,L:A93D,L:S95L",-1.61,0 736 | 2NY7,"L:V90Q,L:A93W,L:S94P,L:S95F",-2.27,0 737 | 2NY7,"L:V90S,L:A93G,L:S94R,L:S95D",-1.52,-345.2232365 738 | 2NY7,"L:V90T,L:A93R,L:S94G",-2.65,0 739 | 2NY7,"L:V90T,L:A93R,L:S94G,L:S95H",-2.71,0 740 | 2NY7,"L:V90T,L:A93R,L:S94G,L:S95I",-2.31,0 741 | 2NY7,"L:V90T,L:A93R,L:S94G,L:S95V",-0.98,0 742 | 2NY7,"L:V90T,L:A93W,L:S95G",-1.56,0 743 | 2NYY,A:D1058A,0.01,486.75265 744 | 2NYY,A:D1062A,2.53,-269.764475 745 | 2NYY,A:E920A,2.84,610.282975 746 | 2NYY,A:F917A,0.42,518.6566 747 | 2NYY,A:F953A,4.06,1963.747875 748 | 2NYY,A:H1064A,7.32,6930.028925 749 | 2NYY,A:I956A,-0.01,875.612975 750 | 2NYY,A:K1056A,-0.03,466.158825 751 | 2NYY,A:K903A,0.29,1251.41075 752 | 2NYY,A:K923A,-0.14,0 753 | 2NYY,A:L919A,2.59,3105.42595 754 | 2NYY,A:N918A,0.89,219.338925 755 | 2NYY,A:N954A,0.1,4790.550875 756 | 2NYY,A:Q915A,0.52,0 757 | 2NYY,A:R1061A,0.82,579.939975 758 | 2NYY,A:R1294A,0.3,5185.993137 759 | 2NYY,A:S902A,-0.23,561.64095 760 | 2NYY,A:S955A,0,1178.20935 761 | 2NYY,A:T1063A,1.62,1879.4366 762 | 2NYY,H:K30R,0.07,0 763 | 2NYY,H:M34Q,-0.06,0 764 | 2NYY,H:Y31D,0.07,1130.6365 765 | 2NYY,H:Y31Q,0.13,1210.36305 766 | 2NYY,H:Y57Q,0.52,1885.563025 767 | 2NYY,L:D30Y,0.65,-967.800076 768 | 2NYY,L:H34R,0.1,-1387.569027 769 | 2NYY,L:S28Q,0.42,-2243.79625 770 | 2NYY,L:S31N,-0.36,823.095825 771 | 2NZ9,A:D1058A,-0.03,312.09065 772 | 2NZ9,A:D1062A,2.34,-435.55355 773 | 2NZ9,A:E920A,2.77,8044.122375 774 | 2NZ9,A:F917A,-0.05,736.2366 775 | 2NZ9,A:F953A,3.34,1890.83525 776 | 2NZ9,A:H1064A,7.42,7895.747375 777 | 2NZ9,A:I956A,0.07,-823.9039285 778 | 2NZ9,A:K1056A,-0.01,-245.7522 779 | 2NZ9,A:K903A,0.54,4298.05225 780 | 2NZ9,A:K923A,-0.3,0 781 | 2NZ9,A:L919A,2.28,7539.20795 782 | 2NZ9,A:N918A,2.16,133.287475 783 | 2NZ9,A:N954A,-0.15,3109.7631 784 | 2NZ9,A:Q915A,0.1,0 785 | 2NZ9,A:R1061A,0.29,1015.52125 786 | 2NZ9,A:R1294A,0.39,1232.480262 787 | 2NZ9,A:S902A,-0.12,-3482.10675 788 | 2NZ9,A:S955A,-0.08,1188.963742 789 | 2NZ9,A:T1063A,2.37,2995.476325 790 | 3BDY,H:D31A,0.2,0 791 | 3BDY,H:D98A,0,143.9868 792 | 3BDY,H:F100A,0.7,0 793 | 3BDY,H:G96A,0.2,160.21265 794 | 3BDY,H:G97A,-0.1,0 795 | 3BDY,H:G99A,0.8,-2132.71545 796 | 3BDY,H:K30A,0.2,0 797 | 3BDY,H:N54A,-0.2,-1127.0626 798 | 3BDY,H:R50A,-0.3,566.121137 799 | 3BDY,H:R58A,-0.2,778.073831 800 | 3BDY,H:T32A,-0.4,0 801 | 3BDY,H:T53A,-0.5,0 802 | 3BDY,H:W95A,2,-12.37245 803 | 3BDY,H:Y100aA,0.5,-1386.95245 804 | 3BDY,H:Y33A,0.3,2671.45495 805 | 3BDY,H:Y52A,0.4,2630.746 806 | 3BDY,H:Y56A,0.2,-1624.06575 807 | 3BDY,L:D27aA,0,0 808 | 3BDY,L:G31A,1.2,-38.34545 809 | 3BDY,L:G51A,1,0 810 | 3BDY,L:H91A,2,813.0644 811 | 3BDY,L:I27bA,1.1,0 812 | 3BDY,L:I29A,0.8,856.610603 813 | 3BDY,L:P27cA,0.2,0 814 | 3BDY,L:R27dA,-0.2,0 815 | 3BDY,L:S28A,1,-22.546 816 | 3BDY,L:S30A,1.3,3.43085 817 | 3BDY,L:S52A,0.1,0 818 | 3BDY,L:T93A,-0.3,983.54305 819 | 3BDY,L:T94A,0,2098.980261 820 | 3BDY,L:W50A,1.3,2659.397075 821 | 3BDY,L:Y32A,1.7,267.08025 822 | 3BDY,L:Y53A,0.7,876.5342 823 | 3BDY,L:Y92A,1.4,6291.87615 824 | 3BE1,H:D31A,0.4,0 825 | 3BE1,H:D98A,-0.1,1294.13755 826 | 3BE1,H:F100A,1.9,384.6221 827 | 3BE1,H:G96A,0.1,-184.7288 828 | 3BE1,H:G97A,0.3,-444.4397 829 | 3BE1,H:G99A,1.8,-787.9695 830 | 3BE1,H:K30A,-0.3,0 831 | 3BE1,H:N54A,-0.8,17.2098 832 | 3BE1,H:R50A,2.4,2940.767864 833 | 3BE1,H:R58A,2.5,259.7262635 834 | 3BE1,H:T32A,-0.4,0 835 | 3BE1,H:T53A,0.1,0 836 | 3BE1,H:W95A,1.8,1169.797945 837 | 3BE1,H:Y100aA,1.2,384.6221 838 | 3BE1,H:Y33A,2.4,811.05095 839 | 3BE1,H:Y52A,-0.8,-8.4942 840 | 3BE1,H:Y56A,1.8,-3067.740109 841 | 3BE1,L:D27aA,0,0 842 | 3BE1,L:G31A,0.3,-543.781775 843 | 3BE1,L:G51A,-0.3,0 844 | 3BE1,L:H91A,0.9,1209.291325 845 | 3BE1,L:I27bA,-0.2,0 846 | 3BE1,L:I29A,0.9,0 847 | 3BE1,L:P27cA,0.1,0 848 | 3BE1,L:R27dA,-0.2,0 849 | 3BE1,L:S28A,0.3,-2.98855 850 | 3BE1,L:S30A,-0.2,108.7481 851 | 3BE1,L:S52A,0.3,0 852 | 3BE1,L:T93A,-0.4,0 853 | 3BE1,L:T94A,1.4,1293.503266 854 | 3BE1,L:W50A,1.4,3265.130175 855 | 3BE1,L:Y32A,-0.8,3977.60985 856 | 3BE1,L:Y53A,0.9,2333.53575 857 | 3BE1,L:Y92A,0.5,2535.684 858 | 3BN9,A:D217A,0.57,-220.048275 859 | 3BN9,A:D60aA,0.42,592.9858685 860 | 3BN9,A:D60bA,0.31,592.9858685 861 | 3BN9,A:D96A,6.7,5629.1105 862 | 3BN9,A:E169A,0.37,0 863 | 3BN9,A:F60eA,-0.05,592.9858685 864 | 3BN9,A:F94A,0.64,122.73875 865 | 3BN9,A:F97A,6.7,6769.45665 866 | 3BN9,A:H143A,0.09,94.075775 867 | 3BN9,A:I41A,0,-319.635943 868 | 3BN9,A:I60A,0.84,592.9858685 869 | 3BN9,A:K224A,0.79,354.571375 870 | 3BN9,A:L153A,0.34,0 871 | 3BN9,A:N95A,0.77,903.71715 872 | 3BN9,A:Q145A,0.13,0 873 | 3BN9,A:Q174A,-0.03,1911.322575 874 | 3BN9,A:Q175A,2.51,1827.87515 875 | 3BN9,A:Q221aA,0.71,0 876 | 3BN9,A:Q38A,-0.42,0 877 | 3BN9,A:R222A,-0.09,0 878 | 3BN9,A:R60cA,-0.05,592.9858685 879 | 3BN9,A:R60fA,-0.07,592.9858685 880 | 3BN9,A:R87A,-0.16,0 881 | 3BN9,A:T150A,0.29,0 882 | 3BN9,A:T98A,1.13,172.33965 883 | 3BN9,A:Y146A,1.09,5554.636175 884 | 3BN9,A:Y60gA,0.02,592.9858685 885 | 3BN9,H:P100H,8,-314.169575 886 | 3BN9,H:Q100aV,1.36,-43.54055 887 | 3BN9,H:S30G,1.36,2867.4784 888 | 3BN9,H:S30N,1.36,3856.05805 889 | 3BN9,H:T28R,0.3,-1739.038056 890 | 3BN9,H:T98Q,0,-523.192675 891 | 3BN9,H:T98R,-0.06,-1827.3463 892 | 3BN9,H:Y99S,0.41,143.132425 893 | 3HFM,H:C95A,5.52,-865.774625 894 | 3HFM,"H:C95A,Y:K96A",8,3597.5397 895 | 3HFM,"H:C95A,Y:K97A",8,1729.5626 896 | 3HFM,"H:C95A,Y:Y20A",8,-5028.60475 897 | 3HFM,H:C95F,3.25,3597.5397 898 | 3HFM,"H:C95F,Y:K96A",8,7.53075 899 | 3HFM,"H:C95F,Y:K97A",8,2739.172092 900 | 3HFM,"H:C95F,Y:Y20A",6.18,-1304.743625 901 | 3HFM,H:D32A,1.9,-233.309745 902 | 3HFM,"H:D32A,Y:K97A",4.6,-1654.820675 903 | 3HFM,"H:D32A,Y:K97M",1.12,363.5381245 904 | 3HFM,H:D32N,0.17,2267.174194 905 | 3HFM,"H:D32N,Y:K97A",4.89,2849.946481 906 | 3HFM,"H:D32N,Y:K97M",0.3,4402.99051 907 | 3HFM,H:S31A,0.17,-917.385075 908 | 3HFM,H:Y33A,6,3587.419147 909 | 3HFM,"H:Y33A,Y:K96A",8,-1726.00945 910 | 3HFM,"H:Y33A,Y:K97A",6.83,4992.476075 911 | 3HFM,"H:Y33A,Y:Y20A",8,3963.446696 912 | 3HFM,H:Y50A,8,2053.166365 913 | 3HFM,"H:Y50A,Y:R21A",8,-6823.147375 914 | 3HFM,L:N31A,5.22,5811.228625 915 | 3HFM,"L:N31A,Y:K96A",8,1340.579071 916 | 3HFM,L:N31D,1.34,-568.00291 917 | 3HFM,L:N31E,5.67,922.1422875 918 | 3HFM,L:N32A,5.11,1170.208138 919 | 3HFM,"L:N32A,Y:Y20A",8,0 920 | 3HFM,L:Q53A,0.95,0 921 | 3HFM,L:Y50A,4.57,565.941125 922 | 3HFM,"L:Y50A,Y:K96A",8,1908.80405 923 | 3HFM,"L:Y50A,Y:K97A",8,1269.780967 924 | 3HFM,"L:Y50A,Y:R21A",6.42,677.3677435 925 | 3HFM,"L:Y50A,Y:Y20A",8,490.915 926 | 3HFM,L:Y50F,2.36,1274.675425 927 | 3HFM,"L:Y50F,Y:K96A",8,1734.956125 928 | 3HFM,"L:Y50F,Y:K97A",8,2033.7207 929 | 3HFM,"L:Y50F,Y:R21A",4.33,2222.492975 930 | 3HFM,"L:Y50F,Y:Y20A",6.18,3674.6004 931 | 3HFM,L:Y50L,4.4,4222.5489 932 | 3HFM,L:Y96A,2.71,-1897.231675 933 | 3HFM,"L:Y96A,Y:R21A",5.76,2537.0792 934 | 3HFM,L:Y96F,1.4,2201.767526 935 | 3HFM,"L:Y96F,Y:R21A",4.19,3364.022871 936 | 3HFM,Y:K96A,6.83,-1993.0378 937 | 3HFM,Y:K97A,6.18,3527.3281 938 | 3HFM,Y:K97M,1.09,-1086.495625 939 | 3HFM,Y:R21A,1.03,2152.95901 940 | 3HFM,Y:Y20A,4.87,1327.916065 941 | 3K2M,D:E52A,2.5,6839.648839 942 | 3K2M,D:M88A,4,1102.1695 943 | 3K2M,D:R38A,2.5,1470.752812 944 | 3K2M,D:W80A,4,3378.249296 945 | 3K2M,D:Y35A,1,-4074.416316 946 | 3K2M,D:Y36A,3.7,3135.1751 947 | 3K2M,D:Y87A,4,295.14795 948 | 3NGB,H:A56G,-0.06,3376.210469 949 | 3NGB,"H:A56G,H:V57T,H:P62K,H:V73T",1.67,0 950 | 3NGB,"H:C32S,H:C98A",0.26,2552.327947 951 | 3NGB,H:G54S,0.73,5865.233144 952 | 3NGB,H:I30T,0.08,662.03715 953 | 3NGB,"H:I30T,H:K52N,H:R53N,H:G54S,H:A56G,H:V57T,H:R61Q,H:P62K,H:V73T,H:Y74S,L:Y28S",0.87,-1715.71105 954 | 3NGB,H:K52N,0.18,409.933 955 | 3NGB,H:P62K,0.23,-1812.5767 956 | 3NGB,H:R53N,0.05,3365.277476 957 | 3NGB,H:R61Q,0.1,2876.606421 958 | 3NGB,H:T33Y,0.08,-788.4850435 959 | 3NGB,"H:T33Y,H:G55S,H:A56G,H:V57T,H:P62K,H:V73T,H:Y74S",1.91,-3067.624975 960 | 3NGB,H:V57T,0.14,-5.916056 961 | 3NGB,H:V73T,0.16,368.2955 962 | 3NGB,H:Y74S,0.33,2562.487075 963 | 3NPS,A:D214A,1.48,726.5814635 964 | 3NPS,A:D46A,0.34,0 965 | 3NPS,A:D47A,1.08,3161.742787 966 | 3NPS,A:D91A,1.52,-3099.749856 967 | 3NPS,A:E163A,0.62,0 968 | 3NPS,A:F50A,0.22,-1.70705 969 | 3NPS,A:F89A,1.61,-170.25515 970 | 3NPS,A:F92A,0.47,5657.499621 971 | 3NPS,A:H138A,1.89,5371.879625 972 | 3NPS,A:I26A,0.65,-192.0937085 973 | 3NPS,A:I45A,-0.34,-2.3713085 974 | 3NPS,A:K221A,-0.1,1.8839635 975 | 3NPS,A:L147A,0.3,0 976 | 3NPS,A:N90A,0.26,0 977 | 3NPS,A:Q140A,0.3,1178.8087 978 | 3NPS,A:Q168A,-0.06,-29.2582 979 | 3NPS,A:Q169A,0.75,1471.69776 980 | 3NPS,A:Q218A,-0.04,0 981 | 3NPS,A:Q23A,0.03,0 982 | 3NPS,A:R219A,-0.08,0 983 | 3NPS,A:R48A,-1.07,7347.445203 984 | 3NPS,A:R51A,0.14,0 985 | 3NPS,A:R82A,-0.15,0 986 | 3NPS,A:T144A,0.18,-404.38265 987 | 3NPS,A:T93A,0.73,0 988 | 3NPS,A:Y141A,1.79,3701.673051 989 | 3NPS,A:Y52A,0.46,261.767277 990 | 3WJJ,"A:A327N,B:A327N",-0.08,7373.854175 991 | 3WJJ,"A:A327S,B:A327S",0.56,1.0423175 992 | 3WJJ,"A:A330I,B:A330I",2.32,-2120.928725 993 | 3WJJ,"A:A330L,B:A330L",0.57,-3371.2204 994 | 3WJJ,"A:A330L,B:A330L,A:I332E,B:I332E",-0.42,-1505.283825 995 | 3WJJ,"A:A330Y,B:A330Y",0.17,-779.069325 996 | 3WJJ,"A:A330Y,B:A330Y,A:I332E,B:I332E",-0.88,613.5253 997 | 3WJJ,"A:I332D,B:I332D",-0.71,1782.80035 998 | 3WJJ,"A:I332E,B:I332E",-0.81,1392.51055 999 | 3WJJ,"A:S239D,B:S239D",-0.89,-146.5549 1000 | 3WJJ,"A:S239D,B:S239D,A:A330L,B:A330L,A:I332E,B:I332E",-1.2,-1665.092775 1001 | 3WJJ,"A:S239D,B:S239D,A:I332E,B:I332E",-1.77,1232.7016 1002 | 3WJJ,"A:S239D,B:S239D,A:S298A,B:S298A,A:I332E,B:I332E",-1.08,1526.8144 1003 | 3WJJ,"A:S239D,B:S239D,A:V264I,B:V264I,A:I332E,B:I332E",-1.58,135.9833115 1004 | 3WJJ,"A:S239E,B:S239E,A:I332E,B:I332E",-0.74,1067.916879 1005 | 3WJJ,"A:S239N,B:S239N,A:S298A,B:S298A,A:I332E,B:I332E",-0.97,1806.62075 1006 | 3WJJ,"A:S239Q,B:S239Q,A:I332E,B:I332E",-0.92,1172.244242 1007 | 3WJJ,"A:V240A,B:V240A",1.17,0 1008 | 3WJJ,"A:V240M,B:V240M",-0.19,-591.76255 1009 | 3WJJ,"A:V264I,B:V264I,A:A330L,B:A330L,A:I332E,B:I332E",-0.34,-165.887475 1010 | 3WJJ,"A:V264I,B:V264I,A:A330Y,B:A330Y,A:I332E,B:I332E",-0.75,615.2709 1011 | 3WJJ,"A:V264I,B:V264I,A:I332E,B:I332E",-0.27,1394.25615 1012 | 3WJJ,"A:V264Y,B:V264Y",0.78,-62.0605 1013 | 3WJJ,"A:Y296E,B:Y296E",-0.06,2405.7197 1014 | 3WJJ,"A:Y296Q,B:Y296Q",0.5,2405.7197 1015 | HM_1KTZ,B:D118A,0.8,12.7302 1016 | HM_1KTZ,B:D32A,1.5,1838.9109 1017 | HM_1KTZ,B:D32N,2,2121.7281 1018 | HM_1KTZ,B:E119A,1.5,1345.85415 1019 | HM_1KTZ,B:E119Q,1.6,2632.2957 1020 | HM_1KTZ,B:E55A,1.2,119.28945 1021 | HM_1KTZ,B:E75A,1.1,-0.0047455 1022 | HM_1KTZ,B:F110A,0.9,0 1023 | HM_1KTZ,B:F30A,3,1939.921256 1024 | HM_1KTZ,B:H79A,0.3,0 1025 | HM_1KTZ,B:I125A,0.5,0 1026 | HM_1KTZ,B:I50A,1.9,1826.734775 1027 | HM_1KTZ,B:I53A,1.4,2452.5819 1028 | HM_1KTZ,B:L27A,1.8,1578.2464 1029 | HM_1KTZ,B:M112A,0.9,0 1030 | HM_1KTZ,B:N47A,0.3,0 1031 | HM_1KTZ,B:S49A,0.3,-221.5354 1032 | HM_1KTZ,B:S52A,0.2,-3551.672625 1033 | HM_1KTZ,B:S52L,4,-978.7135 1034 | HM_1KTZ,B:T51A,1.5,645.552811 1035 | HM_1KTZ,B:V62A,0.7,0 1036 | HM_1KTZ,B:V77A,0.4,-156.031303 1037 | HM_1YY9,H:A98W,-0.23,-73.472775 1038 | HM_1YY9,H:G33D,-0.89,-70.83085 1039 | HM_1YY9,H:I51G,-0.51,0 1040 | HM_1YY9,H:R97D,-0.99,0 1041 | HM_1YY9,H:T100Y,-0.45,86.560325 1042 | HM_1YY9,H:T57G,-0.46,14.059497 1043 | HM_1YY9,H:T57P,-0.48,515.563812 1044 | HM_1YY9,H:V50L,-0.6,-486.855425 1045 | HM_1YY9,H:V50Q,-0.64,-443.206675 1046 | HM_1YY9,H:Y32R,-0.13,343.919075 1047 | HM_1YY9,L:A25V,-0.62,0 1048 | HM_1YY9,L:G30Y,-0.92,-1261.852275 1049 | HM_1YY9,L:Q27Y,-0.83,-2906.119825 1050 | HM_1YY9,L:T97C,-0.51,0 1051 | HM_1YY9,L:T97D,-0.66,0 1052 | HM_1YY9,L:T97S,-0.7,0 1053 | HM_2NYY,A:D1062A,-0.14,-665.2311 1054 | HM_2NYY,A:D902A,-0.49,959.9724 1055 | HM_2NYY,A:E920A,0.5,617.178625 1056 | HM_2NYY,A:F953A,1.53,2565.772085 1057 | HM_2NYY,A:I917A,0.95,-319.869497 1058 | HM_2NYY,A:K915A,-0.31,0 1059 | HM_2NYY,A:K955A,-0.5,3248.62025 1060 | HM_2NYY,A:L919A,0.41,1294.635263 1061 | HM_2NYY,A:N918A,0.3,241.410325 1062 | HM_2NYY,A:N957A,0.01,597.883425 1063 | HM_2NYY,A:P1063A,0.24,-110.08965 1064 | HM_2NYY,A:R1061A,0.58,579.939975 1065 | HM_2NYY,A:R1064A,4.44,4593.235412 1066 | HM_2NYY,A:R903A,-0.02,1344.197501 1067 | HM_2NYY,A:S954A,-0.66,1489.083125 1068 | HM_2NYY,A:T923A,0.62,0 1069 | HM_2NYY,H:K30R,0.51,-721.872937 1070 | HM_2NYY,H:M34Q,-0.01,0 1071 | HM_2NYY,H:Y31D,0.97,-943.5445895 1072 | HM_2NYY,H:Y31Q,1.33,-1308.30959 1073 | HM_2NYY,H:Y57Q,1.19,1907.165375 1074 | HM_2NYY,L:D30Y,0.6,-1158.632125 1075 | HM_2NYY,L:H34R,0.63,-1375.706746 1076 | HM_2NYY,L:S28Q,0.7,-1824.812683 1077 | HM_2NYY,L:S31N,1.2,415.4018335 1078 | HM_2NZ9,A:D1062A,-0.14,-388.17345 1079 | HM_2NZ9,A:D902A,-0.49,264.5584 1080 | HM_2NZ9,A:E920A,0.5,8094.754375 1081 | HM_2NZ9,A:F953A,1.53,1834.499586 1082 | HM_2NZ9,A:I917A,0.95,777.614751 1083 | HM_2NZ9,A:K915A,-0.31,1830.326538 1084 | HM_2NZ9,A:K955A,-0.5,3176.1668 1085 | HM_2NZ9,A:L919A,0.41,3294.10365 1086 | HM_2NZ9,A:N918A,0.3,133.020875 1087 | HM_2NZ9,A:N957A,0.01,0 1088 | HM_2NZ9,A:P1063A,0.24,1314.50245 1089 | HM_2NZ9,A:R1061A,0.58,1015.52125 1090 | HM_2NZ9,A:R1064A,4.44,3773.868606 1091 | HM_2NZ9,A:R903A,-0.02,3345.957 1092 | HM_2NZ9,A:S954A,-0.66,1449.08354 1093 | HM_2NZ9,A:T923A,0.62,0 1094 | HM_3BN9,H:P100H,1.36,0 1095 | HM_3BN9,H:Q100aV,0.41,0 1096 | HM_3BN9,H:S30G,0.71,2309.271852 1097 | HM_3BN9,H:S30N,0.71,5436.508911 1098 | HM_3BN9,H:T28R,-0.24,-383.51662 1099 | HM_3BN9,H:T98Q,-0.16,-463.6344 1100 | HM_3BN9,H:T98R,-1.57,-850.4726155 1101 | HM_3BN9,H:Y99S,0.54,481.188175 -------------------------------------------------------------------------------- /Data/AB-Bind test data/Surfaces_FoldXMutants.csv: -------------------------------------------------------------------------------- 1 | #PDB,Mutation,expt,comp 2 | 1AK4,D:A488G,2.49,-38921.71399 3 | 1AK4,D:A488V,0.6,-38921.71399 4 | 1AK4,D:A492G,0.41,-37923.56771 5 | 1AK4,D:A492V,0.19,-37113.14991 6 | 1AK4,D:G489A,1.91,-38385.3668 7 | 1AK4,D:G489V,2.86,-37430.07594 8 | 1AK4,D:H487A,0.84,-37339.05338 9 | 1AK4,D:H487Q,0.8,-37379.89766 10 | 1AK4,D:H487R,1.48,-38176.26833 11 | 1AK4,D:I491A,0.07,-37966.20459 12 | 1AK4,D:I491V,-0.17,-37966.20459 13 | 1AK4,"D:L483T,D:V486P,D:H487A,D:A488M,D:I491L,D:A492P,D:M496I",0.57,-36582.94344 14 | 1AK4,D:P485A,0.92,-37417.38349 15 | 1AK4,D:P490A,2,-38162.38462 16 | 1AK4,D:P490V,2.86,-38123.76439 17 | 1AK4,D:P493A,0.51,-38274.39296 18 | 1AK4,D:V486A,0.82,-38588.60334 19 | 1BJ1,V:F17A,0,-73673.39615 20 | 1BJ1,V:Y21A,0,-67549.12852 21 | 1BJ1,W:E93A,0.82,-67618.9642 22 | 1BJ1,W:G88A,2.76,-68414.2953 23 | 1BJ1,W:G92A,3.69,-68321.81375 24 | 1BJ1,W:H86A,0,-70988.58675 25 | 1BJ1,W:H90A,0,-67918.91314 26 | 1BJ1,W:I80A,0.82,-68128.25155 27 | 1BJ1,W:I83A,3.69,-73311.04172 28 | 1BJ1,W:I91A,0.41,-68094.12047 29 | 1BJ1,W:K48A,0.41,-67910.11507 30 | 1BJ1,W:K84A,0.65,-69778.01417 31 | 1BJ1,W:M81A,3.69,-73324.8858 32 | 1BJ1,W:M94A,1.42,-69781.57933 33 | 1BJ1,W:Q79A,0,-68814.89995 34 | 1BJ1,W:Q87A,0,-69323.96682 35 | 1BJ1,W:Q89A,1.75,-73213.4129 36 | 1BJ1,W:R82A,3.69,-69412.58438 37 | 1BJ1,W:Y45A,0.82,-70488.28096 38 | 1CZ8,V:F17A,0,-84102.08104 39 | 1CZ8,V:Y21A,0,-84669.25224 40 | 1CZ8,W:E93A,1.15,-84226.40169 41 | 1CZ8,W:G88A,2.67,-84160.29684 42 | 1CZ8,W:G92A,4.1,-83965.03405 43 | 1CZ8,W:H86A,0,-86836.88064 44 | 1CZ8,W:H90A,0,-83415.68976 45 | 1CZ8,W:I80A,0.95,-84164.29194 46 | 1CZ8,W:I83A,1.3,-83633.79929 47 | 1CZ8,W:I91A,1.06,-83550.87806 48 | 1CZ8,W:K48A,0,-83892.74669 49 | 1CZ8,W:K84A,1.36,-82285.45121 50 | 1CZ8,W:M81A,4.1,-84202.76579 51 | 1CZ8,W:M94A,1.91,-83946.68733 52 | 1CZ8,W:Q79A,0.65,-84593.14404 53 | 1CZ8,W:Q87A,0,-82456.72454 54 | 1CZ8,W:Q89A,1.06,-83956.81619 55 | 1CZ8,W:R82A,0.82,-83861.12141 56 | 1CZ8,W:Y45A,1.94,-83611.72084 57 | 1DQJ,C:D101A,1.3,-54738.22673 58 | 1DQJ,C:K96A,6.1,-58831.0114 59 | 1DQJ,C:K97A,3.5,-54765.0012 60 | 1DQJ,C:L75A,1.5,-56512.93716 61 | 1DQJ,C:N93A,0.6,-50475.3677 62 | 1DQJ,C:R21A,1.3,-56675.39276 63 | 1DQJ,C:S100A,0.8,-56553.57075 64 | 1DQJ,C:T89A,0.8,-57717.2339 65 | 1DQJ,C:W62A,0.8,-56542.48159 66 | 1DQJ,C:W63A,1.3,-55457.22517 67 | 1DQJ,C:Y20A,3.3,-63019.4798 68 | 1DQJ,H:D32A,2,-54395.43338 69 | 1DQJ,"H:D32A,C:K97A",2.5,-54899.6827 70 | 1DQJ,H:W98A,4.9,-56298.60581 71 | 1DQJ,"H:W98A,C:K97A",6.6,-54564.09543 72 | 1DQJ,"H:W98A,C:S100A",5.3,-56072.96579 73 | 1DQJ,"H:W98A,C:Y20A",5.1,-65935.16708 74 | 1DQJ,H:Y33A,5.5,-56175.13303 75 | 1DQJ,H:Y50A,6.9,-65867.25418 76 | 1DQJ,H:Y53A,1.2,-55286.67307 77 | 1DQJ,"H:Y53A,C:D101A",2.7,-53081.17624 78 | 1DQJ,"H:Y53A,C:L75A",1.2,-56297.69416 79 | 1DQJ,"H:Y53A,C:W62A",1.3,-55954.81078 80 | 1DQJ,"H:Y53A,C:W63A",2.2,-55348.6369 81 | 1DQJ,L:N31A,2,-66587.60055 82 | 1DQJ,L:N32A,4.1,-67512.68828 83 | 1DQJ,"L:N32A,C:K96A",5.8,-65672.22898 84 | 1DQJ,L:S91A,1.4,-56564.1537 85 | 1DQJ,"L:S91A,C:R21A",3.2,-56584.57431 86 | 1DQJ,"L:S91A,C:Y20A",3.6,-64442.0812 87 | 1DQJ,L:Y50A,2.7,-65867.25418 88 | 1DQJ,L:Y96A,1.1,-56486.70555 89 | 1DQJ,"L:Y96A,C:R21A",3.5,-56604.67953 90 | 1DQJ,"L:Y96A,C:S100A",0.9,-56492.81747 91 | 1DVF,A:H30A,1.67,-55010.86612 92 | 1DVF,A:S93A,1.17,-54745.72966 93 | 1DVF,A:W92A,0.34,-54892.97587 94 | 1DVF,A:Y32A,2.05,-51988.57793 95 | 1DVF,"A:Y32A,D:R106A",4.7,-53404.30174 96 | 1DVF,A:Y49A,1.64,-53761.12843 97 | 1DVF,A:Y49A,1.75,-53761.12843 98 | 1DVF,"A:Y49A,D:H33A",2.65,-50554.41192 99 | 1DVF,"A:Y49A,D:N55A",2.05,-51685.80939 100 | 1DVF,A:Y50A,0.69,-52793.68769 101 | 1DVF,B:D100A,2.82,-55042.50559 102 | 1DVF,"B:D100A,D:D52A",4.36,-55440.44111 103 | 1DVF,"B:D100A,D:H33A",4.19,-54342.1027 104 | 1DVF,"B:D100A,D:N55A",4.13,-55032.82666 105 | 1DVF,B:D54A,4.32,-53668.78306 106 | 1DVF,"B:D54A,C:Y49A",4.54,-53859.32134 107 | 1DVF,B:D58A,1.62,-53377.77649 108 | 1DVF,"B:D58A,D:Q104A",1.48,-53016.32688 109 | 1DVF,B:E98A,4.23,-54213.19171 110 | 1DVF,"B:E98A,D:Y102A",4.68,-53990.68906 111 | 1DVF,B:N56A,1.17,-53737.27841 112 | 1DVF,"B:N56A,D:H33A",2.55,-54310.91133 113 | 1DVF,"B:N56A,D:N55A",2.32,-53261.64385 114 | 1DVF,"B:N56A,D:Q104A",1.5,-52904.40788 115 | 1DVF,B:R99A,1.89,-56721.74896 116 | 1DVF,B:T30A,0.92,-54168.53646 117 | 1DVF,B:W52A,4.17,-53564.97771 118 | 1DVF,"B:W52A,D:Q104A",4.2,-53002.31776 119 | 1DVF,B:Y101F,2.03,-53945.49121 120 | 1DVF,B:Y32A,1.85,-51988.57793 121 | 1DVF,C:Y49A,1.88,-53761.12843 122 | 1DVF,D:D52A,1.7,-53666.98584 123 | 1DVF,D:H33A,1.88,-55691.87918 124 | 1DVF,D:I101A,2.71,-54168.53646 125 | 1DVF,D:K30A,1.01,-54370.14541 126 | 1DVF,D:N55A,1.88,-54021.62676 127 | 1DVF,D:Q104A,1.64,-53097.37623 128 | 1DVF,D:R106A,4.13,-56007.42435 129 | 1DVF,D:Y102A,4.79,-53423.53076 130 | 1FFW,A:A90V,0.09,-47107.41715 131 | 1FFW,A:D13K,0.05,-46873.1318 132 | 1FFW,A:E117K,0.71,-46873.1318 133 | 1FFW,A:E93K,0.82,-46873.1318 134 | 1FFW,A:F111V,1.26,-46873.1318 135 | 1FFW,A:T112I,0.56,-46873.1318 136 | 1FFW,A:T87I,-0.32,-46873.665 137 | 1FFW,A:V108M,1.13,-46873.665 138 | 1FFW,A:Y106W,0.71,-47088.54475 139 | 1JRH,"I:A103L,I:V104M,I:R106L,I:D107K",0.64,-64474.69929 140 | 1JRH,"I:A59S,I:I61T,I:H65D",0.06,-64745.09524 141 | 1JRH,"I:A95D,I:K98R,I:E100K",-0.06,-70497.25551 142 | 1JRH,I:E45Q,0.11,-66158.92092 143 | 1JRH,"I:I35N,I:P37S,I:V39T,I:V41I",0.15,-64745.09524 144 | 1JRH,"I:M25L,I:I28V",-0.21,-64745.09524 145 | 1JRH,"I:S71Y,I:D72E,I:H73Q,I:V74I,I:G75M,I:D76Y,I:S78D,I:N79V,I:L81A",2.73,-62967.6545 146 | 1JRH,I:T14V,-0.02,-64745.09524 147 | 1JRH,"I:T19L,I:E21K",-0.02,-64745.09524 148 | 1JRH,"I:V83A,I:R88K",-0.21,-64745.09524 149 | 1JTG,A:K234A,0.82,-91286.35052 150 | 1JTG,"A:K234A,A:S130A",0.84,-91324.92322 151 | 1JTG,"A:K234A,A:S130A,A:R243A",1.13,-89316.03774 152 | 1JTG,"A:K234A,A:S235A,A:S130A,A:R243A",1.54,-91195.434 153 | 1JTG,A:R243A,0.56,-92589.0811 154 | 1JTG,"A:R243A,A:K234A",1.35,-91260.88092 155 | 1JTG,"A:R243A,A:S130A",1.01,-91507.95825 156 | 1JTG,"A:R243A,A:S235A",0.06,-92488.8893 157 | 1JTG,"A:R243A,A:S235A,A:K234A",1.34,-91512.56322 158 | 1JTG,"A:R243A,A:S235A,A:S130A",0.79,-92077.13141 159 | 1JTG,A:S130A,0.5,-91822.57658 160 | 1JTG,A:S235A,1.32,-92670.02164 161 | 1JTG,"A:S235A,A:K234A",1.13,-91217.73814 162 | 1JTG,"A:S235A,A:S130A",0.81,-91631.91414 163 | 1JTG,"A:S235A,A:S130A,A:K234A",1.17,-91352.14925 164 | 1JTG,B:D49A,1.98,-91988.11261 165 | 1JTG,"B:D49A,A:K234A",1.74,-91650.48594 166 | 1JTG,"B:D49A,A:K234A,A:S130A",1.03,-91937.06015 167 | 1JTG,"B:D49A,A:K234A,A:S130A,A:R243A",1.43,-90189.0871 168 | 1JTG,"B:D49A,A:K234A,A:S235A,A:S130A,A:R243A",1.56,-91532.6281 169 | 1JTG,"B:D49A,A:R243A",1.18,-89798.00791 170 | 1JTG,"B:D49A,A:R243A,A:K234A",1.72,-89774.07018 171 | 1JTG,"B:D49A,A:R243A,A:S130A",1.24,-91203.35705 172 | 1JTG,"B:D49A,A:R243A,A:S235A",0.49,-91177.72165 173 | 1JTG,"B:D49A,A:R243A,A:S235A,A:K234A",1.69,-90877.2827 174 | 1JTG,"B:D49A,A:R243A,A:S235A,A:S130A",0.78,-89771.56853 175 | 1JTG,"B:D49A,A:S130A",1.57,-91847.55946 176 | 1JTG,"B:D49A,A:S235A",1.84,-91990.21082 177 | 1JTG,"B:D49A,A:S235A,A:K234A",1.44,-91462.44201 178 | 1JTG,"B:D49A,A:S235A,A:S130A",1.29,-91672.38604 179 | 1JTG,"B:D49A,A:S235A,A:S130A,A:K234A",0.81,-92035.60011 180 | 1KTZ,B:D118A,0.9,-39729.89295 181 | 1KTZ,B:D32A,1.4,-39865.87115 182 | 1KTZ,B:D32N,1.7,-39865.87115 183 | 1KTZ,B:E119A,1.4,-39776.3232 184 | 1KTZ,B:E119Q,1.7,-40923.20303 185 | 1KTZ,B:E55A,1.3,-40067.1391 186 | 1KTZ,B:E75A,1,-40122.46601 187 | 1KTZ,B:F110A,0.9,-39851.54445 188 | 1KTZ,B:F30A,2.9,-40109.63432 189 | 1KTZ,B:H79A,0.4,-40035.40857 190 | 1KTZ,B:I125A,0.5,-39851.54445 191 | 1KTZ,B:I50A,1.9,-40158.35825 192 | 1KTZ,B:I53A,1.2,-40024.31495 193 | 1KTZ,B:L27A,1.9,-40262.4106 194 | 1KTZ,B:M112A,0.8,-39934.56761 195 | 1KTZ,B:N47A,0.3,-39851.54445 196 | 1KTZ,B:S49A,0.5,-39909.9675 197 | 1KTZ,B:S52A,0.4,-39891.7352 198 | 1KTZ,B:S52L,3.7,-40404.20575 199 | 1KTZ,B:T51A,1.3,-39873.99248 200 | 1KTZ,B:V62A,0.7,-40035.40857 201 | 1KTZ,B:V77A,0.5,-39886.11068 202 | 1MHP,H:F99W,0,-46539.29556 203 | 1MHP,H:F99Y,0.76,-46821.51086 204 | 1MHP,H:G100F,0.57,-42351.63543 205 | 1MHP,H:G100I,8,-43034.68448 206 | 1MHP,H:G100L,2.73,-42875.75563 207 | 1MHP,H:G100M,0.1,-46947.74651 208 | 1MHP,H:G100S,0.56,-46821.51086 209 | 1MHP,H:G100V,8,-42908.44883 210 | 1MHP,H:G102S,8,-46470.53563 211 | 1MHP,H:G53A,0.51,-48509.12905 212 | 1MHP,H:G53N,1.26,-49275.45475 213 | 1MHP,H:G53Q,8,-51641.88601 214 | 1MHP,H:G53S,0.68,-48099.7641 215 | 1MHP,H:G53W,8,-49402.3819 216 | 1MHP,H:G54I,1.36,-48370.70006 217 | 1MHP,H:G54M,8,-47989.14481 218 | 1MHP,H:G54N,8,-48370.70006 219 | 1MHP,H:G54T,1.17,-47989.9431 220 | 1MHP,H:G54Y,0,-48370.70006 221 | 1MHP,H:H56Y,8,-47155.57505 222 | 1MHP,H:K64D,-0.12,-46323.56809 223 | 1MHP,H:K64E,-0.16,-46323.56809 224 | 1MHP,"H:K64E,L:S28Q",-0.85,-47082.86888 225 | 1MHP,"H:K64E,L:S28Q,L:N52Y",-0.95,-46854.61738 226 | 1MHP,H:K64N,-0.07,-46821.51086 227 | 1MHP,H:K64Q,-0.16,-46821.51086 228 | 1MHP,H:L60D,-0.12,-46808.21426 229 | 1MHP,"H:L60D,H:K64E",-0.14,-46310.22376 230 | 1MHP,"H:L60D,H:K64Q",0.04,-46310.22376 231 | 1MHP,H:R31Q,1.31,-53540.82678 232 | 1MHP,H:S35A,1.58,-46824.77263 233 | 1MHP,"H:S35A,H:G102S",1.58,-46414.21913 234 | 1MHP,"H:S35A,H:T50V,H:G102S",8,-46769.53532 235 | 1MHP,H:S35Q,2.73,-46875.86208 236 | 1MHP,H:S35V,8,-46904.40086 237 | 1MHP,"H:S35V,H:G102S",1.43,-46305.14231 238 | 1MHP,"H:S35V,H:T50V,H:G102S",8,-46935.66674 239 | 1MHP,H:S52M,2.08,-45456.09796 240 | 1MHP,H:S52T,8,-45166.71287 241 | 1MHP,"H:T33E,H:G53Q",1.67,-48528.06298 242 | 1MHP,"H:T33I,H:S52T,H:G53N,H:G54N",1.91,-49801.57942 243 | 1MHP,"H:T33I,H:S52T,H:G53Q,H:G54F",1.26,-48588.33817 244 | 1MHP,H:T33N,2.73,-47116.41543 245 | 1MHP,H:T33Q,8,-47116.41543 246 | 1MHP,"H:T33Q,H:G54W",8,-48649.73678 247 | 1MHP,"H:T33S,H:G53W",8,-49693.68333 248 | 1MHP,H:T33V,0.43,-47116.41543 249 | 1MHP,H:T50E,8,-47468.3132 250 | 1MHP,H:T50Q,8,-47052.53067 251 | 1MHP,H:T50V,-0.26,-46058.85987 252 | 1MHP,"H:T50V,H:G102S",1.67,-47341.88818 253 | 1MHP,"H:T50V,H:K64E",-0.36,-55306.24682 254 | 1MHP,"H:T50V,H:K64E,L:S28Q,L:N52E",-1.24,-46243.45663 255 | 1MHP,"H:T50V,H:K64E,L:S28Q,L:N52Y",-1.04,-55305.46039 256 | 1MHP,"H:T50V,H:S35A",2.08,-46140.49594 257 | 1MHP,"H:T50V,H:S35V",2.73,-46140.49594 258 | 1MHP,"H:T50V,L:S28Q",-0.69,-45906.09487 259 | 1MHP,"H:T50V,L:S28Q,L:N52Y",-1.2,-45743.22052 260 | 1MHP,H:Y58E,2.08,-56778.84614 261 | 1MHP,"H:Y58E,H:H56N",8,-48345.44791 262 | 1MHP,H:Y58Q,2.08,-47242.08359 263 | 1MHP,"H:Y58Q,H:H56N",8,-57694.82757 264 | 1MHP,H:Y58W,0.82,-47242.08359 265 | 1MHP,H:Y59E,0.54,-46821.51086 266 | 1MHP,L:G92Q,1.58,-49843.76962 267 | 1MHP,L:G92S,0.51,-49843.76962 268 | 1MHP,L:H31K,1.17,-48569.09151 269 | 1MHP,L:H31R,1.12,-47392.48426 270 | 1MHP,L:H31W,1.26,-46309.27966 271 | 1MHP,L:L49F,0.71,-46674.93061 272 | 1MHP,L:L49K,0.93,-46476.79348 273 | 1MHP,L:L49W,1.91,-46476.79348 274 | 1MHP,L:L49Y,8,-46784.01076 275 | 1MHP,L:N30K,8,-46640.31368 276 | 1MHP,L:N30V,1.05,-49495.24728 277 | 1MHP,L:N30W,1.58,-42854.83531 278 | 1MHP,L:N30Y,1.91,-48783.99413 279 | 1MHP,"L:N30Y,L:S91I",0.43,-44106.07268 280 | 1MHP,L:N52D,0.5,-46556.89691 281 | 1MHP,L:N52E,-0.18,-46821.51086 282 | 1MHP,L:N52K,0.66,-47051.40786 283 | 1MHP,L:N52R,0.85,-46556.89691 284 | 1MHP,L:N52Y,-0.1,-46593.25936 285 | 1MHP,L:N93D,8,-55804.52723 286 | 1MHP,L:S24R,-0.07,-46821.51086 287 | 1MHP,L:S28Q,-0.67,-46839.52166 288 | 1MHP,L:S91K,8,-44013.07053 289 | 1MHP,L:S91Q,1.78,-43984.30918 290 | 1MHP,L:S91R,2.73,-47631.26176 291 | 1MHP,L:S91T,2.32,-43984.30918 292 | 1MHP,L:S91W,8,-43998.99878 293 | 1MHP,L:W90Q,2.08,-44143.23803 294 | 1MHP,"L:W90Q,L:F33Y",0.87,-43477.84828 295 | 1MLC,H:K65D,0.02,-53854.12235 296 | 1MLC,H:S57A,-0.38,-54006.1919 297 | 1MLC,H:S57V,-0.49,-53919.03895 298 | 1MLC,"H:S57V,H:T58D",-0.99,-54179.19875 299 | 1MLC,"H:S57V,H:T58D,L:N32G,L:N92A",-1.74,-55445.44931 300 | 1MLC,"H:S57V,H:T58D,L:N92A",-2.4,-48727.68494 301 | 1MLC,H:T28D,-0.15,-53752.52295 302 | 1MLC,"H:T28D,H:E35S,H:S57V,H:T58D,H:G99D,L:N92A",-2.95,-49116.06795 303 | 1MLC,"H:T28D,H:E35S,H:S57V,H:T58D,L:N92A",1.91,-47136.64902 304 | 1MLC,"H:T28D,H:S30G,H:S57V,H:T58D,L:N92A",-2.36,-51538.70818 305 | 1MLC,"H:T28D,H:S57V,H:T58D,H:G99D,L:N92A",-0.2,-49780.17361 306 | 1MLC,"H:T28D,H:S57V,H:T58D,H:R98M,H:D100Q,L:N92A",-0.41,-51111.75208 307 | 1MLC,"H:T28D,H:S57V,H:T58D,H:Y59E,L:N92A",-1.47,-51621.20505 308 | 1MLC,"H:T28D,H:S57V,H:T58D,L:N32L,L:N92A",-2.59,-55680.44756 309 | 1MLC,"H:T28D,H:S57V,H:T58D,L:N92A",-2.74,-51538.90658 310 | 1MLC,"H:T28D,H:S57V,H:T58D,L:S91N,L:N92A",1.78,-50306.87441 311 | 1MLC,"H:T28D,H:S57V,H:T58D,L:S91N,L:N92A,L:S93A",-1.61,-52872.1892 312 | 1MLC,"H:T28D,H:Y32R,H:S57V,H:T58D,H:R98S,L:N92A",1.78,-51289.42686 313 | 1MLC,"H:T28D,H:Y32W,H:S57V,H:T58D,H:R98V,H:D100Q,L:N92A",0.41,-50157.38267 314 | 1MLC,H:T31A,0.45,-54557.45415 315 | 1MLC,H:T31V,0.53,-53659.12365 316 | 1MLC,H:T31W,0.13,-54064.5202 317 | 1MLC,H:T58D,-0.56,-53854.12235 318 | 1MLC,L:N32G,-0.85,-54536.8665 319 | 1MLC,"L:N32G,L:N92A",-0.69,-55784.6691 320 | 1MLC,L:N32Y,0,-55677.54955 321 | 1MLC,L:N92A,-1.25,-56424.3823 322 | 1N8Z,H:D31A,0.25,-44446.80357 323 | 1N8Z,H:D98A,1.21,-44446.80357 324 | 1N8Z,H:D98W,-0.69,-46251.29047 325 | 1N8Z,H:F100A,1.17,-44738.25802 326 | 1N8Z,H:K30A,0.61,-44446.80357 327 | 1N8Z,H:N54A,-0.15,-44431.52927 328 | 1N8Z,H:R50A,8,-46929.29682 329 | 1N8Z,H:T32A,0.38,-44446.80357 330 | 1N8Z,H:T53A,0.78,-44446.80357 331 | 1N8Z,H:W95A,8,-47696.59814 332 | 1N8Z,"H:W95A,H:Y100aA",8,-48160.38217 333 | 1N8Z,H:Y100aA,8,-44378.09984 334 | 1N8Z,H:Y100aF,-0.05,-45706.79907 335 | 1N8Z,H:Y100aF,0.82,-45706.79907 336 | 1N8Z,H:Y102V,0.22,-44446.80357 337 | 1N8Z,H:Y33A,-0.09,-46910.20107 338 | 1N8Z,H:Y52A,0.23,-46995.58377 339 | 1N8Z,H:Y56A,0.87,-42456.33673 340 | 1N8Z,L:D28N,-0.28,-45474.20442 341 | 1N8Z,L:F53N,1.21,-44418.09655 342 | 1N8Z,L:H91A,8,-44660.98575 343 | 1N8Z,"L:H91A,H:Y100aA",8,-44716.15317 344 | 1N8Z,L:H91F,-0.43,-44941.11502 345 | 1N8Z,L:H91F,0.03,-44941.11502 346 | 1N8Z,L:N30A,1.12,-53989.57592 347 | 1N8Z,L:N30S,0.06,-53989.57592 348 | 1N8Z,"L:N30S,L:H91F,L:Y92W",-0.07,-50239.3112 349 | 1N8Z,"L:N30S,L:H91F,L:Y92W,L:T94S,H:D98W,H:Y100aF,H:Y102V",0.05,-49343.84499 350 | 1N8Z,L:R66G,0.22,-45375.08882 351 | 1N8Z,L:S50A,-0.07,-44839.77902 352 | 1N8Z,L:S52A,-0.31,-44262.89242 353 | 1N8Z,L:T31A,0.8,-47698.30485 354 | 1N8Z,L:T93A,0.82,-44971.91923 355 | 1N8Z,L:T94A,-0.12,-47186.45813 356 | 1N8Z,L:T94S,0.31,-46185.51612 357 | 1N8Z,L:Y49A,1.05,-44611.79907 358 | 1N8Z,L:Y92A,1.36,-52768.28852 359 | 1N8Z,L:Y92F,-0.21,-51624.31732 360 | 1T83,"A:A327D,B:A327D",2.32,-56233.9992 361 | 1T83,"A:A327L,B:A327L",1.78,-54750.36392 362 | 1T83,"A:A327N,B:A327N",0.98,-56349.5784 363 | 1T83,"A:A327S,B:A327S",0.87,-56349.5784 364 | 1T83,"A:A327T,B:A327T",2.32,-56349.5784 365 | 1T83,"A:A330F,B:A330F",0.3,-58264.59642 366 | 1T83,"A:A330H,B:A330H",0.39,-56978.691 367 | 1T83,"A:A330I,B:A330I",-0.32,-56943.65205 368 | 1T83,"A:A330L,B:A330L",0.19,-56943.65205 369 | 1T83,"A:A330L,B:A330L,A:I332E,B:I332E",-1.39,-57263.51658 370 | 1T83,"A:A330R,B:A330R",2.32,-56978.691 371 | 1T83,"A:A330V,B:A330V",0.5,-56943.65205 372 | 1T83,"A:A330Y,B:A330Y",-0.29,-58264.59642 373 | 1T83,"A:A330Y,B:A330Y,A:I332E,B:I332E",-1.48,-58576.46125 374 | 1T83,"A:D265F,B:D265F,A:N297E,B:N297E,A:I332E,B:I332E",2.32,-55986.18592 375 | 1T83,"A:D265G,B:D265G",2.32,-54902.14105 376 | 1T83,"A:D265N,B:D265N",2.32,-56474.80605 377 | 1T83,"A:D265Y,B:D265Y,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-57063.10892 378 | 1T83,"A:D265Y,B:D265Y,A:N297D,B:N297D,A:T299L,B:T299L,A:I332E,B:I332E",2.32,-56641.18172 379 | 1T83,"A:D270H,B:D270H",2.32,-57588.28885 380 | 1T83,"A:D270Q,B:D270Q",2.32,-57141.3747 381 | 1T83,"A:D270T,B:D270T",2.32,-56261.9042 382 | 1T83,"A:E269F,B:E269F",1.09,-55074.63395 383 | 1T83,"A:E269H,B:E269H",2.32,-56711.8194 384 | 1T83,"A:E269L,B:E269L",2.32,-56289.8024 385 | 1T83,"A:E269N,B:E269N",2.32,-56711.8194 386 | 1T83,"A:E269R,B:E269R",1.78,-56289.8024 387 | 1T83,"A:E269T,B:E269T",2.32,-56711.8194 388 | 1T83,"A:E269Y,B:E269Y",1.26,-56711.8194 389 | 1T83,"A:E272Y,B:E272Y",-1.28,-57141.3747 390 | 1T83,"A:E283R,B:E283R",0.24,-56978.691 391 | 1T83,"A:E318R,B:E318R",-0.04,-56978.691 392 | 1T83,"A:E333H,B:E333H",0.17,-56978.691 393 | 1T83,"A:E333T,B:E333T",0.15,-56978.691 394 | 1T83,"A:F241E,B:F241E,A:F243Q,B:F243Q,A:V262T,B:V262T,A:V264E,B:V264E",1.58,-57694.4512 395 | 1T83,"A:F241E,B:F241E,A:F243R,B:F243R,A:V262E,B:V262E,A:V264R,B:V264R",1.78,-57914.28323 396 | 1T83,"A:F241E,B:F241E,A:F243R,B:F243R,A:V262E,B:V262E,A:V264R,B:V264R,A:I332E,B:I332E",0.98,-57461.05363 397 | 1T83,"A:F241E,B:F241E,A:F243Y,B:F243Y,A:V262T,B:V262T,A:V264R,B:V264R",1.78,-54735.3927 398 | 1T83,"A:F241E,B:F241E,A:F243Y,B:F243Y,A:V262T,B:V262T,A:V264R,B:V264R,A:I332E,B:I332E",1.36,-55472.61712 399 | 1T83,"A:F241L,B:F241L",0.8,-56978.691 400 | 1T83,"A:F241L,B:F241L,A:F243L,B:F243L,A:V262I,B:V262I,A:V264I,B:V264I",1.43,-57966.41903 401 | 1T83,"A:F241R,B:F241R,A:F243Q,B:F243Q,A:V262T,B:V262T,A:V264R,B:V264R",2.32,-58269.33853 402 | 1T83,"A:F241W,B:F241W",0.73,-56978.691 403 | 1T83,"A:F241W,B:F241W,A:F243W,B:F243W",1.58,-58444.18175 404 | 1T83,"A:F241W,B:F241W,A:F243W,B:F243W,A:V262A,B:V262A,A:V264A,B:V264A",1.91,-56096.11242 405 | 1T83,"A:F241Y,B:F241Y,A:F243Y,B:F243Y,A:V262T,B:V262T,A:V264T,B:V264T",1.78,-57442.50367 406 | 1T83,"A:F241Y,B:F241Y,A:F243Y,B:F243Y,A:V262T,B:V262T,A:V264T,B:V264T,A:N297D,B:N297D,A:I332E,B:I332E",1.12,-58871.1322 407 | 1T83,"A:F243L,B:F243L",0.4,-56978.691 408 | 1T83,"A:F243L,B:F243L,A:V262I,B:V262I,A:V264W,B:V264W",2.32,-53985.27875 409 | 1T83,"A:F243L,B:F243L,A:V264I,B:V264I",-0.12,-56438.28215 410 | 1T83,"A:F243W,B:F243W",0.4,-56978.691 411 | 1T83,"A:F275W,B:F275W",-0.06,-56984.08685 412 | 1T83,"A:I332A,B:I332A",0.07,-56938.5409 413 | 1T83,"A:I332D,B:I332D",-1.71,-56938.5409 414 | 1T83,"A:I332E,B:I332E",-1.13,-57282.27505 415 | 1T83,"A:I332H,B:I332H",0.46,-58262.01498 416 | 1T83,"A:I332N,B:I332N",0.56,-56938.5409 417 | 1T83,"A:I332Q,B:I332Q",0.59,-56938.5409 418 | 1T83,"A:I332T,B:I332T",0.2,-56938.5409 419 | 1T83,"A:I332Y,B:I332Y",0.16,-58305.67297 420 | 1T83,"A:K274E,B:K274E",-1.07,-56978.691 421 | 1T83,"A:K274L,B:K274L",-0.05,-56978.691 422 | 1T83,"A:K274R,B:K274R",-0.2,-56978.691 423 | 1T83,"A:K274T,B:K274T",-0.2,-56978.691 424 | 1T83,"A:K274Y,B:K274Y",-0.04,-56978.691 425 | 1T83,"A:K326E,B:K326E",-0.8,-56854.61952 426 | 1T83,"A:K326I,B:K326I",-0.21,-57141.3747 427 | 1T83,"A:K326T,B:K326T",-0.37,-57141.3747 428 | 1T83,"A:L235D,B:L235D",-0.3,-58688.81357 429 | 1T83,"A:L235F,B:L235F",0.19,-59254.7024 430 | 1T83,"A:L235H,B:L235H",0.53,-58783.63 431 | 1T83,"A:L235I,B:L235I",-0.06,-59102.49152 432 | 1T83,"A:L235N,B:L235N",0.54,-58783.63 433 | 1T83,"A:L235Q,B:L235Q",0.4,-58688.81357 434 | 1T83,"A:L235S,B:L235S",-0.13,-58524.15732 435 | 1T83,"A:L235T,B:L235T",0.39,-58072.56587 436 | 1T83,"A:L235V,B:L235V",0.43,-59103.54835 437 | 1T83,"A:L235Y,B:L235Y",-0.1,-59264.81925 438 | 1T83,"A:L328A,B:L328A",0.95,-57960.46268 439 | 1T83,"A:L328D,B:L328D,A:I332E,B:I332E",-0.17,-57302.20525 440 | 1T83,"A:L328E,B:L328E",1.26,-58275.05608 441 | 1T83,"A:L328E,B:L328E,A:I332E,B:I332E",0.95,-58439.82252 442 | 1T83,"A:L328F,B:L328F",0.85,-58338.1302 443 | 1T83,"A:L328H,B:L328H",2.32,-56863.49772 444 | 1T83,"A:L328H,B:L328H,A:I332E,B:I332E",2.32,-57872.84527 445 | 1T83,"A:L328I,B:L328I,A:I332E,B:I332E",-0.74,-58303.4763 446 | 1T83,"A:L328I,B:L328I,A:I332E,B:I332E",-1.16,-58303.4763 447 | 1T83,"A:L328M,B:L328M",0.93,-58030.07597 448 | 1T83,"A:L328M,B:L328M,A:I332E,B:I332E",-0.57,-58371.7856 449 | 1T83,"A:L328N,B:L328N",0.31,-57044.6796 450 | 1T83,"A:L328N,B:L328N,A:I332E,B:I332E",2.32,-57191.17192 451 | 1T83,"A:L328Q,B:L328Q,A:I332E,B:I332E",-0.26,-57191.17192 452 | 1T83,"A:L328Q,B:L328Q,A:I332E,B:I332E",0.21,-57191.17192 453 | 1T83,"A:L328T,B:L328T,A:I332E,B:I332E",-0.06,-58303.4763 454 | 1T83,"A:L328V,B:L328V,A:I332E,B:I332E",-0.43,-58134.88807 455 | 1T83,"A:N276E,B:N276E",0.08,-56978.691 456 | 1T83,"A:N276L,B:N276L",-0.04,-56978.691 457 | 1T83,"A:N276R,B:N276R",0.25,-56978.691 458 | 1T83,"A:N276S,B:N276S",0.53,-56978.691 459 | 1T83,"A:N276Y,B:N276Y",0.34,-56978.691 460 | 1T83,"A:N297D,B:N297D",2.32,-54949.3138 461 | 1T83,"A:N297D,B:N297D,A:A330Y,B:A330Y,A:I332E,B:I332E",0.5,-56549.91 462 | 1T83,"A:N297D,B:N297D,A:I332E,B:I332E",1.5,-55257.89855 463 | 1T83,"A:N297D,B:N297D,A:S298A,B:S298A,A:A330Y,B:A330Y,A:I332E,B:I332E",1.09,-55265.7535 464 | 1T83,"A:N297D,B:N297D,A:T299E,B:T299E,A:I332E,B:I332E",2.32,-56189.48252 465 | 1T83,"A:N297D,B:N297D,A:T299F,B:T299F,A:I332E,B:I332E",2.32,-56536.52655 466 | 1T83,"A:N297D,B:N297D,A:T299H,B:T299H,A:I332E,B:I332E",2.32,-56735.18767 467 | 1T83,"A:N297D,B:N297D,A:T299I,B:T299I,A:I332E,B:I332E",2.32,-53387.4736 468 | 1T83,"A:N297D,B:N297D,A:T299L,B:T299L,A:I332E,B:I332E",2.32,-56858.71395 469 | 1T83,"A:N297D,B:N297D,A:T299V,B:T299V,A:I332E,B:I332E",2.32,-56237.05042 470 | 1T83,"A:N297E,B:N297E,A:I332E,B:I332E",2.32,-55326.518 471 | 1T83,"A:N297S,B:N297S",2.32,-55816.9129 472 | 1T83,"A:N297S,B:N297S,A:I332E,B:I332E",2.32,-56120.49695 473 | 1T83,"A:N325A,B:N325A",1.31,-57139.37427 474 | 1T83,"A:N325D,B:N325D",0.53,-57152.76195 475 | 1T83,"A:N325E,B:N325E",2.32,-57139.37427 476 | 1T83,"A:N325H,B:N325H",0.19,-58526.8707 477 | 1T83,"A:N325I,B:N325I",2.32,-57139.37427 478 | 1T83,"A:N325L,B:N325L",2.32,-57139.37427 479 | 1T83,"A:N325Q,B:N325Q",2.32,-57192.90542 480 | 1T83,"A:N325T,B:N325T",-0.06,-57139.37427 481 | 1T83,"A:N325V,B:N325V",0.43,-57139.37427 482 | 1T83,"A:P244H,B:P244H",0.11,-56978.691 483 | 1T83,"A:P244H,B:P244H,A:P245A,B:P245A,A:P247V,B:P247V",0.04,-56978.691 484 | 1T83,"A:P245A,B:P245A",0.82,-56978.691 485 | 1T83,"A:P247G,B:P247G",0.36,-56978.691 486 | 1T83,"A:P247V,B:P247V",0.38,-56978.691 487 | 1T83,"A:P329F,B:P329F",2.32,-58530.8488 488 | 1T83,"A:S239D,B:S239D",-1.46,-55529.8719 489 | 1T83,"A:S239D,B:S239D,A:A330L,B:A330L,A:I332E,B:I332E",-2.92,-55377.32055 490 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E",-2.88,-56849.6836 491 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:K326E,B:K326E",-2.47,-56790.21827 492 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:K326T,B:K326T",-2.42,-57076.9174 493 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:L235D,B:L235D",-1.16,-59834.28697 494 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:V240I,B:V240I",-1.98,-57640.6799 495 | 1T83,"A:S239D,B:S239D,A:A330Y,B:A330Y,A:I332E,B:I332E,A:V264T,B:V264T",-1.71,-58710.3606 496 | 1T83,"A:S239D,B:S239D,A:D265F,B:D265F,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-55815.6654 497 | 1T83,"A:S239D,B:S239D,A:D265H,B:D265H,A:N297D,B:N297D,A:I332E,B:I332E",1.91,-58324.39053 498 | 1T83,"A:S239D,B:S239D,A:D265I,B:D265I,A:N297D,B:N297D,A:I332E,B:I332E",2.73,-58171.49063 499 | 1T83,"A:S239D,B:S239D,A:D265L,B:D265L,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-58394.89858 500 | 1T83,"A:S239D,B:S239D,A:D265T,B:D265T,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-57096.6409 501 | 1T83,"A:S239D,B:S239D,A:D265V,B:D265V,A:N297D,B:N297D,A:I332E,B:I332E",2.08,-58363.61292 502 | 1T83,"A:S239D,B:S239D,A:D265Y,B:D265Y,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-56097.40382 503 | 1T83,"A:S239D,B:S239D,A:I332D,B:I332D",-1.57,-55553.77962 504 | 1T83,"A:S239D,B:S239D,A:I332E,B:I332E",-2.39,-55553.77962 505 | 1T83,"A:S239D,B:S239D,A:I332E,B:I332E,A:A330I,B:A330I",-2.42,-55382.11415 506 | 1T83,"A:S239D,B:S239D,A:I332N,B:I332N",-1.17,-55553.77962 507 | 1T83,"A:S239D,B:S239D,A:I332Q,B:I332Q",-1.32,-55553.77962 508 | 1T83,"A:S239D,B:S239D,A:N297D,B:N297D,A:I332E,B:I332E",0.76,-57961.38328 509 | 1T83,"A:S239D,B:S239D,A:N297D,B:N297D,A:I332E,B:I332E,A:A330Y,B:A330Y",2.32,-57789.25922 510 | 1T83,"A:S239D,B:S239D,A:N297D,B:N297D,A:I332E,B:I332E,A:A330Y,B:A330Y,A:F241S,B:F241S,A:F243H,B:F243H,A:V262T,B:V262T,A:V264T,B:V264T",2.32,-61288.65947 511 | 1T83,"A:S239D,B:S239D,A:S298A,B:S298A,A:I332E,B:I332E",-3.37,-56056.93857 512 | 1T83,"A:S239D,B:S239D,A:V264I,B:V264I,A:I332E,B:I332E",-2.13,-58727.7754 513 | 1T83,"A:S239E,B:S239E",-1.38,-57102.997 514 | 1T83,"A:S239E,B:S239E,A:D265G,B:D265G",2.32,-57367.25955 515 | 1T83,"A:S239E,B:S239E,A:D265N,B:D265N",2.32,-56550.19235 516 | 1T83,"A:S239E,B:S239E,A:D265Q,B:D265Q",1.78,-57155.057 517 | 1T83,"A:S239E,B:S239E,A:I332D,B:I332D",-1.32,-54892.80297 518 | 1T83,"A:S239E,B:S239E,A:I332E,B:I332E",-1.04,-54892.80297 519 | 1T83,"A:S239E,B:S239E,A:I332N,B:I332N",-1.47,-57135.87457 520 | 1T83,"A:S239E,B:S239E,A:I332Q,B:I332Q",-0.79,-57135.87457 521 | 1T83,"A:S239E,B:S239E,A:N297D,B:N297D,A:I332E,B:I332E",1.67,-57056.60148 522 | 1T83,"A:S239E,B:S239E,A:V264I,B:V264I,A:A330Y,B:A330Y,A:I332E,B:I332E",-1.27,-57699.87825 523 | 1T83,"A:S239E,B:S239E,A:V264I,B:V264I,A:I332E,B:I332E",-1.62,-57403.16205 524 | 1T83,"A:S239F,B:S239F",0.9,-57219.7481 525 | 1T83,"A:S239H,B:S239H",0.95,-57852.02888 526 | 1T83,"A:S239N,B:S239N",2.32,-56610.6004 527 | 1T83,"A:S239N,B:S239N,A:A330L,B:A330L,A:I332E,B:I332E",-1.52,-57033.0774 528 | 1T83,"A:S239N,B:S239N,A:A330Y,B:A330Y,A:I332E,B:I332E",-1.57,-57093.51062 529 | 1T83,"A:S239N,B:S239N,A:I332D,B:I332D",-0.67,-57062.99728 530 | 1T83,"A:S239N,B:S239N,A:I332E,B:I332E",-1.57,-57062.99728 531 | 1T83,"A:S239N,B:S239N,A:I332N,B:I332N",0.5,-57062.99728 532 | 1T83,"A:S239N,B:S239N,A:I332Q,B:I332Q",0.34,-58388.14383 533 | 1T83,"A:S239N,B:S239N,A:S298A,B:S298A,A:I332E,B:I332E",-2.06,-56344.25118 534 | 1T83,"A:S239Q,B:S239Q,A:I332D,B:I332D",-0.96,-55298.48172 535 | 1T83,"A:S239Q,B:S239Q,A:I332E,B:I332E",-1.12,-55298.48172 536 | 1T83,"A:S239Q,B:S239Q,A:I332N,B:I332N",0.56,-56566.68663 537 | 1T83,"A:S239Q,B:S239Q,A:I332Q,B:I332Q",0.31,-57885.4274 538 | 1T83,"A:S239Q,B:S239Q,A:V264I,B:V264I,A:I332E,B:I332E",-0.45,-56133.10322 539 | 1T83,"A:S239T,B:S239T",-0.17,-58556.93548 540 | 1T83,"A:S239Y,B:S239Y",0.93,-57320.84242 541 | 1T83,"A:S267L,B:S267L,A:A327S,B:A327S",2.32,-52875.70695 542 | 1T83,"A:S267Q,B:S267Q,A:A327S,B:A327S",2.08,-54966.55592 543 | 1T83,"A:S298A,B:S298A",-0.47,-56425.69105 544 | 1T83,"A:S298A,B:S298A,A:E333A,B:E333A,A:K334A,B:K334A",-0.56,-56385.54095 545 | 1T83,"A:S298A,B:S298A,A:I332E,B:I332E",-1.83,-56745.94768 546 | 1T83,"A:S298H,B:S298H",0.78,-57091.3532 547 | 1T83,"A:S298N,B:S298N",0.53,-56438.963 548 | 1T83,"A:S298T,B:S298T",0.04,-57092.4664 549 | 1T83,"A:S324D,B:S324D",-0.04,-56978.691 550 | 1T83,"A:S324I,B:S324I",-0.08,-56978.691 551 | 1T83,"A:S324L,B:S324L",2.32,-56978.11492 552 | 1T83,"A:S324R,B:S324R",0.2,-56978.691 553 | 1T83,"A:S324V,B:S324V",-0.09,-56978.691 554 | 1T83,"A:S324Y,B:S324Y",0.01,-56978.11492 555 | 1T83,"A:T299A,B:T299A",2.08,-56933.23955 556 | 1T83,"A:T299H,B:T299H",2.32,-54681.58865 557 | 1T83,"A:T299I,B:T299I",2.32,-55692.44517 558 | 1T83,"A:T299S,B:T299S",1.12,-56933.23955 559 | 1T83,"A:T299V,B:T299V",2.32,-56435.65437 560 | 1T83,"A:T335D,B:T335D",-0.61,-56978.691 561 | 1T83,"A:T335R,B:T335R",-0.56,-56978.691 562 | 1T83,"A:T335Y,B:T335Y",-0.26,-56978.691 563 | 1T83,"A:V240A,B:V240A",0.21,-56938.5409 564 | 1T83,"A:V240I,B:V240I",-0.7,-56978.691 565 | 1T83,"A:V240I,B:V240I,A:V266I,B:V266I",-0.32,-56978.691 566 | 1T83,"A:V240M,B:V240M",-0.43,-56978.691 567 | 1T83,"A:V263I,B:V263I",1.36,-56978.691 568 | 1T83,"A:V263M,B:V263M",1.78,-56978.691 569 | 1T83,"A:V263T,B:V263T",0.5,-56978.691 570 | 1T83,"A:V264A,B:V264A",0.38,-56382.98325 571 | 1T83,"A:V264E,B:V264E,A:N297D,B:N297D,A:I332E,B:I332E",1.78,-57692.2902 572 | 1T83,"A:V264F,B:V264F",1.09,-54976.58635 573 | 1T83,"A:V264I,B:V264I",-0.21,-56288.04835 574 | 1T83,"A:V264I,B:V264I,A:A330L,B:A330L,A:I332E,B:I332E",-1.43,-56418.41992 575 | 1T83,"A:V264I,B:V264I,A:A330Y,B:A330Y,A:I332E,B:I332E",-1.47,-57882.54385 576 | 1T83,"A:V264I,B:V264I,A:I332E,B:I332E",-1.5,-56605.60367 577 | 1T83,"A:V264I,B:V264I,A:S298A,B:S298A,A:I332E,B:I332E",-1.66,-56170.709 578 | 1T83,"A:V264L,B:V264L",0.34,-56382.98325 579 | 1T83,"A:V264M,B:V264M",0.8,-56382.98325 580 | 1T83,"A:V264T,B:V264T",-0.6,-56235.4818 581 | 1T83,"A:V264Y,B:V264Y",-0.01,-55839.4276 582 | 1T83,"A:V266A,B:V266A",2.32,-56978.691 583 | 1T83,"A:V266I,B:V266I",-0.37,-56978.691 584 | 1T83,"A:V266M,B:V266M",0.28,-55732.57277 585 | 1T83,"A:V266T,B:V266T",0.47,-57141.3747 586 | 1T83,"A:V273I,B:V273I",0.14,-56978.691 587 | 1T83,"A:V302I,B:V302I",-0.01,-56978.691 588 | 1T83,"A:V323I,B:V323I",0.11,-56978.691 589 | 1T83,"A:W313F,B:W313F",0.08,-56978.691 590 | 1T83,"A:Y278E,B:Y278E",0.06,-56978.691 591 | 1T83,"A:Y278T,B:Y278T",-0.37,-56978.691 592 | 1T83,"A:Y278W,B:Y278W",0.53,-56978.691 593 | 1T83,"A:Y296D,B:Y296D",0.28,-54736.49815 594 | 1T83,"A:Y296E,B:Y296E",0.19,-55103.80812 595 | 1T83,"A:Y296E,B:Y296E,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-52743.51492 596 | 1T83,"A:Y296H,B:Y296H,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-53572.61337 597 | 1T83,"A:Y296I,B:Y296I",1.43,-54442.27891 598 | 1T83,"A:Y296L,B:Y296L",0.9,-58409.4619 599 | 1T83,"A:Y296N,B:Y296N",0.73,-55103.80812 600 | 1T83,"A:Y296N,B:Y296N,A:N297D,B:N297D,A:I332E,B:I332E",1.91,-53610.50218 601 | 1T83,"A:Y296Q,B:Y296Q",0.39,-55094.00032 602 | 1T83,"A:Y296Q,B:Y296Q,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-53467.75465 603 | 1T83,"A:Y296S,B:Y296S",1.26,-54736.49815 604 | 1T83,"A:Y296T,B:Y296T",2.32,-55167.2152 605 | 1T83,"A:Y296T,B:Y296T,A:N297D,B:N297D,A:I332E,B:I332E",2.32,-53594.26358 606 | 1VFB,C:D119A,1,-51096.8378 607 | 1VFB,C:D18A,0.3,-51328.425 608 | 1VFB,C:I124A,1.2,-50730.64497 609 | 1VFB,C:K116A,0.7,-49347.56292 610 | 1VFB,C:L129A,0.2,-51214.52763 611 | 1VFB,C:N19A,0.3,-50969.80672 612 | 1VFB,C:Q121A,2.9,-50763.29998 613 | 1VFB,C:R125A,1.8,-50784.15259 614 | 1VFB,C:S24A,0.8,-52459.13333 615 | 1VFB,C:T118A,0.8,-52047.86848 616 | 1VFB,C:V120A,0.9,-51161.13665 617 | 1VFB,C:Y23A,0.4,-49881.77636 618 | 1VFB,H:D100A,2.9,-51660.52776 619 | 1VFB,"H:D100A,C:S24A",3.4,-51709.49281 620 | 1VFB,H:D54A,1,-52048.4691 621 | 1VFB,"H:D54A,C:T118A",1.2,-51998.16082 622 | 1VFB,H:D58E,0.08,-51063.61848 623 | 1VFB,H:D58N,-0.13,-51081.16622 624 | 1VFB,H:G31A,0.3,-49303.5136 625 | 1VFB,H:G31E,-0.51,-49303.5136 626 | 1VFB,H:G31W,0.01,-49303.5136 627 | 1VFB,H:R99W,0.71,-49509.98836 628 | 1VFB,H:R99Y,1.26,-49902.80741 629 | 1VFB,H:S28D,0,-51064.38648 630 | 1VFB,H:S28E,-0.1,-49274.30608 631 | 1VFB,H:S28N,0.15,-51064.38648 632 | 1VFB,H:S28Q,0.08,-51064.38648 633 | 1VFB,H:W52A,0.9,-50746.55642 634 | 1VFB,"H:W52A,C:D119A",2.2,-50427.06653 635 | 1VFB,H:Y101A,4,-52077.92127 636 | 1VFB,H:Y101F,1.6,-51130.86826 637 | 1VFB,"H:Y101F,C:D119A",2.7,-51670.96446 638 | 1VFB,"H:Y101F,C:V120A",2.5,-51317.89272 639 | 1VFB,H:Y32A,1.1,-51284.8194 640 | 1VFB,"H:Y32A,C:K116A",1.6,-49303.5136 641 | 1VFB,H:Y32E,1.91,-47614.58991 642 | 1VFB,L:L46D,8,-50903.34361 643 | 1VFB,L:L46E,8,-50865.07629 644 | 1VFB,L:N31W,0.17,-51155.75428 645 | 1VFB,L:T52F,0.47,-51023.58873 646 | 1VFB,L:T53R,1.67,-50996.2438 647 | 1VFB,L:W92A,3.3,-51222.28774 648 | 1VFB,"L:W92A,C:I124A",3.8,-49981.65732 649 | 1VFB,"L:W92A,C:L129A",3.3,-51371.85529 650 | 1VFB,"L:W92A,C:Q121A",3.5,-50341.18766 651 | 1VFB,"L:W92A,C:R125A",3.4,-51560.15295 652 | 1VFB,L:Y32A,1.7,-51284.8194 653 | 1VFB,"L:Y32A,C:I124A",2.9,-51789.41428 654 | 1VFB,"L:Y32A,C:Q121A",2.6,-50334.04914 655 | 1VFB,L:Y32W,8,-51523.069 656 | 1VFB,L:Y50A,0.5,-48456.05002 657 | 1VFB,"L:Y50A,C:D119A",1.2,-51446.71198 658 | 1VFB,"L:Y50A,C:D18A",1.3,-50945.34552 659 | 1VFB,L:Y50K,1.67,-51434.7105 660 | 1VFB,L:Y50R,0.85,-51977.13741 661 | 1YY9,H:N56A,-0.06,-72066.95795 662 | 1YY9,H:T61E,-0.06,-72861.44754 663 | 1YY9,L:N93A,-0.74,-74978.64209 664 | 1YY9,L:S26D,-0.2,-72861.44754 665 | 1YY9,"L:S26D,L:T31E,L:N93A",-1.33,-75505.47114 666 | 1YY9,"L:S26D,L:T31E,L:N93A,H:N56A,H:T61E",-0.65,-71752.33399 667 | 1YY9,L:T31E,-0.52,-73388.27659 668 | 1YY9,"L:T31E,L:N93A",-0.82,-75505.47114 669 | 2JEL,P:A82S,0,-59579.3969 670 | 2JEL,P:D69E,0.96,-59298.5793 671 | 2JEL,P:E5D,0.41,-59582.27345 672 | 2JEL,P:E5Q,0.72,-59582.27345 673 | 2JEL,P:E66K,4.13,-59180.21445 674 | 2JEL,P:E68A,0.41,-59796.56925 675 | 2JEL,P:E70A,2.75,-61327.9579 676 | 2JEL,P:E70K,4.13,-61352.6574 677 | 2JEL,P:E75R,2.75,-58671.53983 678 | 2JEL,P:E83A,0,-59323.2756 679 | 2JEL,P:E85A,0,-59579.3969 680 | 2JEL,P:E85D,0,-59579.3969 681 | 2JEL,P:E85K,0,-59579.3969 682 | 2JEL,P:E85Q,0,-59579.3969 683 | 2JEL,P:F2W,2.64,-60912.8119 684 | 2JEL,P:F2Y,0,-60233.42448 685 | 2JEL,P:H76A,-0.41,-57031.09095 686 | 2JEL,P:H76D,-0.66,-57031.09095 687 | 2JEL,P:K24E,0,-59579.3969 688 | 2JEL,P:K27E,0,-59579.3969 689 | 2JEL,P:K72E,0.41,-58849.93868 690 | 2JEL,P:K72R,0,-59298.5793 691 | 2JEL,P:K79E,0.41,-59473.25235 692 | 2JEL,P:N12D,0,-59579.3969 693 | 2JEL,P:N38T,0,-59579.3969 694 | 2JEL,P:P11E,0,-59579.3969 695 | 2JEL,P:Q3K,4.13,-59474.55858 696 | 2JEL,P:Q4K,1.38,-58982.88578 697 | 2JEL,P:Q57E,-0.41,-59579.3969 698 | 2JEL,P:Q71E,2.75,-61511.77165 699 | 2JEL,P:R17G,0,-59579.3969 700 | 2JEL,P:R17K,0,-59579.3969 701 | 2JEL,P:S41C,1.51,-59604.80225 702 | 2JEL,P:S43C,0,-59579.3969 703 | 2JEL,P:S46C,0,-59579.3969 704 | 2JEL,P:S64T,4.13,-59561.71015 705 | 2JEL,P:T34Q,0,-59573.5414 706 | 2JEL,P:T36Q,0.41,-59595.40368 707 | 2JEL,P:T62A,0,-59582.27345 708 | 2JEL,P:T62N,0,-60007.44558 709 | 2JEL,P:T7N,0.41,-59579.3969 710 | 2JEL,P:T7S,0,-59579.3969 711 | 2JEL,P:V6F,0,-58819.50528 712 | 2NY7,"H:N31H,H:V33T,H:I34L",-0.69,-55361.71881 713 | 2NY7,"H:N31H,H:V33T,H:I34V",-0.81,-55361.71881 714 | 2NY7,"H:P97E,H:Y98W,H:S99G",-1.23,-58742.2529 715 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aD,H:D100bQ,H:S100cR,H:P100dR,H:Q100eY",-0.74,-59558.0382 716 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aD,H:D100bQ,H:S100cV,H:P100dR,H:Q100eY",-2.26,-60274.94757 717 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aE,H:D100bM,H:S100cF,H:P100dR,H:Q100eY",-2.46,-59458.3225 718 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aE,H:D100bM,H:S100cR,H:P100dR,H:Q100eF",-2.3,-59783.13625 719 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aE,H:D100bQ,H:S100cF,H:P100dR,H:Q100eF",-1.61,-62025.42853 720 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aH,H:D100bQ,H:S100cR,H:P100dR,H:Q100eY",-2.27,-68547.86681 721 | 2NY7,"H:P97E,H:Y98W,H:S99G,H:D100aT,H:D100bQ,H:S100cR,H:P100dR,H:Q100eF",-2.12,-62658.76572 722 | 2NY7,"H:V33T,H:H35M",-0.57,-58088.23418 723 | 2NY7,"H:V33T,H:I34V",-1.25,-58089.26753 724 | 2NY7,"L:A93G,L:S95A",-0.38,-58322.99158 725 | 2NY7,"L:A93W,L:S95Q",-1.47,-58322.99158 726 | 2NY7,"L:S28K,L:I28aE,L:R29F,L:S30G",-0.16,-58322.99158 727 | 2NY7,"L:S28P,L:I28aL,L:R29H,L:S30R,L:R31A",-1.3,-58322.99158 728 | 2NY7,"L:S28Q,L:I28aL,L:R29D,L:S30G,L:R31S",-2,-58322.99158 729 | 2NY7,"L:S28T,L:I28aV,L:R29Y,L:S30R,L:R31D",-1.03,-58322.99158 730 | 2NY7,"L:V90K,L:A93D,L:S95F",-2,-58322.99158 731 | 2NY7,"L:V90K,L:A93G,L:S94G,L:S95T",-1.93,-58515.01168 732 | 2NY7,"L:V90L,L:A93R,L:S94G,L:S95N",-1.61,-58534.50898 733 | 2NY7,"L:V90M,L:A93G,L:S94F,L:S95T",-1.36,-58630.28748 734 | 2NY7,"L:V90M,L:A93G,L:S94R,L:S95D",-0.24,-58519.53238 735 | 2NY7,"L:V90Q,L:A93D,L:S95L",-1.61,-58533.18428 736 | 2NY7,"L:V90Q,L:A93W,L:S94P,L:S95F",-2.27,-58528.24373 737 | 2NY7,"L:V90S,L:A93G,L:S94R,L:S95D",-1.52,-58519.53238 738 | 2NY7,"L:V90T,L:A93R,L:S94G",-2.65,-58530.11628 739 | 2NY7,"L:V90T,L:A93R,L:S94G,L:S95H",-2.71,-58530.11628 740 | 2NY7,"L:V90T,L:A93R,L:S94G,L:S95I",-2.31,-58530.11628 741 | 2NY7,"L:V90T,L:A93R,L:S94G,L:S95V",-0.98,-58530.11628 742 | 2NY7,"L:V90T,L:A93W,L:S95G",-1.56,-58337.64093 743 | 2NYY,A:D1058A,0.01,-84008.55703 744 | 2NYY,A:D1062A,2.53,-83162.61791 745 | 2NYY,A:E920A,2.84,-80922.59273 746 | 2NYY,A:F917A,0.42,-83558.43803 747 | 2NYY,A:F953A,4.06,-83676.86131 748 | 2NYY,A:H1064A,7.32,-83560.84493 749 | 2NYY,A:I956A,-0.01,-83291.76506 750 | 2NYY,A:K1056A,-0.03,-82951.73279 751 | 2NYY,A:K903A,0.29,-86832.29601 752 | 2NYY,A:K923A,-0.14,-82576.04973 753 | 2NYY,A:L919A,2.59,-86305.25908 754 | 2NYY,A:N918A,0.89,-83778.14221 755 | 2NYY,A:N954A,0.1,-84161.64001 756 | 2NYY,A:Q915A,0.52,-83649.69813 757 | 2NYY,A:R1061A,0.82,-82878.39364 758 | 2NYY,A:R1294A,0.3,-84833.25357 759 | 2NYY,A:S902A,-0.23,-84315.09796 760 | 2NYY,A:S955A,0,-83696.97356 761 | 2NYY,A:T1063A,1.62,-84288.89071 762 | 2NYY,H:K30R,0.07,-83732.01401 763 | 2NYY,H:M34Q,-0.06,-83732.01401 764 | 2NYY,H:Y31D,0.07,-86646.91116 765 | 2NYY,H:Y31Q,0.13,-86604.61213 766 | 2NYY,H:Y57Q,0.52,-83527.94194 767 | 2NYY,L:D30Y,0.65,-81162.18941 768 | 2NYY,L:H34R,0.1,-83322.45648 769 | 2NYY,L:S28Q,0.42,-84210.18893 770 | 2NYY,L:S31N,-0.36,-83310.95578 771 | 2NZ9,A:D1058A,-0.03,-84912.61816 772 | 2NZ9,A:D1062A,2.34,-85578.85191 773 | 2NZ9,A:E920A,2.77,-83778.64488 774 | 2NZ9,A:F917A,-0.05,-83238.25078 775 | 2NZ9,A:F953A,3.34,-84275.88986 776 | 2NZ9,A:H1064A,7.42,-83485.90191 777 | 2NZ9,A:I956A,0.07,-84775.01054 778 | 2NZ9,A:K1056A,-0.01,-85095.36666 779 | 2NZ9,A:K903A,0.54,-84168.41886 780 | 2NZ9,A:K923A,-0.3,-84146.80345 781 | 2NZ9,A:L919A,2.28,-83667.41493 782 | 2NZ9,A:N918A,2.16,-85490.80096 783 | 2NZ9,A:N954A,-0.15,-83672.05156 784 | 2NZ9,A:Q915A,0.1,-84929.72826 785 | 2NZ9,A:R1061A,0.29,-84343.14623 786 | 2NZ9,A:R1294A,0.39,-84535.81242 787 | 2NZ9,A:S902A,-0.12,-84491.76176 788 | 2NZ9,A:S955A,-0.08,-84792.24476 789 | 2NZ9,A:T1063A,2.37,-84122.93723 790 | 3BDY,H:D31A,0.2,-62639.08411 791 | 3BDY,H:D98A,0,-66664.56276 792 | 3BDY,H:F100A,0.7,-62546.40933 793 | 3BDY,H:G96A,0.2,-65495.17271 794 | 3BDY,H:G97A,-0.1,-62639.08411 795 | 3BDY,H:G99A,0.8,-66209.09638 796 | 3BDY,H:K30A,0.2,-62639.08411 797 | 3BDY,H:N54A,-0.2,-62752.95386 798 | 3BDY,H:R50A,-0.3,-60910.58248 799 | 3BDY,H:R58A,-0.2,-63220.93853 800 | 3BDY,H:T32A,-0.4,-62639.08411 801 | 3BDY,H:T53A,-0.5,-62766.25066 802 | 3BDY,H:W95A,2,-62740.29728 803 | 3BDY,H:Y100aA,0.5,-61267.78013 804 | 3BDY,H:Y33A,0.3,-62435.63046 805 | 3BDY,H:Y52A,0.4,-62069.33561 806 | 3BDY,H:Y56A,0.2,-62676.92431 807 | 3BDY,L:D27aA,0,-62639.08411 808 | 3BDY,L:G31A,1.2,-61592.89151 809 | 3BDY,L:G51A,1,-62639.08411 810 | 3BDY,L:H91A,2,-62556.85583 811 | 3BDY,L:I27bA,1.1,-62978.76901 812 | 3BDY,L:I29A,0.8,-63289.08482 813 | 3BDY,L:P27cA,0.2,-62639.08411 814 | 3BDY,L:R27dA,-0.2,-62639.08411 815 | 3BDY,L:S28A,1,-63072.9514 816 | 3BDY,L:S30A,1.3,-62639.66801 817 | 3BDY,L:S52A,0.1,-62639.08411 818 | 3BDY,L:T93A,-0.3,-63031.66621 819 | 3BDY,L:T94A,0,-63272.59403 820 | 3BDY,L:W50A,1.3,-62496.94536 821 | 3BDY,L:Y32A,1.7,-62681.44782 822 | 3BDY,L:Y53A,0.7,-62566.94218 823 | 3BDY,L:Y92A,1.4,-61095.8407 824 | 3BE1,H:D31A,0.4,-48944.3184 825 | 3BE1,H:D98A,-0.1,-49836.57945 826 | 3BE1,H:F100A,1.9,-49288.29158 827 | 3BE1,H:G96A,0.1,-49362.82943 828 | 3BE1,H:G97A,0.3,-49276.8832 829 | 3BE1,H:G99A,1.8,-48216.6105 830 | 3BE1,H:K30A,-0.3,-48944.3184 831 | 3BE1,H:N54A,-0.8,-49067.3314 832 | 3BE1,H:R50A,2.4,-45083.0868 833 | 3BE1,H:R58A,2.5,-44995.39872 834 | 3BE1,H:T32A,-0.4,-48944.3184 835 | 3BE1,H:T53A,0.1,-48965.9653 836 | 3BE1,H:W95A,1.8,-49456.32121 837 | 3BE1,H:Y100aA,1.2,-49650.16776 838 | 3BE1,H:Y33A,2.4,-48968.28755 839 | 3BE1,H:Y52A,-0.8,-48966.6485 840 | 3BE1,H:Y56A,1.8,-45422.71342 841 | 3BE1,L:D27aA,0,-48944.3184 842 | 3BE1,L:G31A,0.3,-49105.4449 843 | 3BE1,L:G51A,-0.3,-48944.3184 844 | 3BE1,L:H91A,0.9,-49401.92708 845 | 3BE1,L:I27bA,-0.2,-48449.2203 846 | 3BE1,L:I29A,0.9,-49018.38125 847 | 3BE1,L:P27cA,0.1,-48944.3184 848 | 3BE1,L:R27dA,-0.2,-48736.02057 849 | 3BE1,L:S28A,0.3,-48944.3184 850 | 3BE1,L:S30A,-0.2,-48982.71865 851 | 3BE1,L:S52A,0.3,-48944.3184 852 | 3BE1,L:T93A,-0.4,-48340.5294 853 | 3BE1,L:T94A,1.4,-48577.11359 854 | 3BE1,L:W50A,1.4,-49217.2741 855 | 3BE1,L:Y32A,-0.8,-49590.4782 856 | 3BE1,L:Y53A,0.9,-48562.38348 857 | 3BE1,L:Y92A,0.5,-48378.76133 858 | 3BN9,A:D217A,0.57,-83192.14781 859 | 3BN9,A:D60aA,0.42,-82285.50507 860 | 3BN9,A:D60bA,0.31,-81229.97898 861 | 3BN9,A:D96A,6.7,-82592.52897 862 | 3BN9,A:E169A,0.37,-82285.50507 863 | 3BN9,A:F60eA,-0.05,-82295.24014 864 | 3BN9,A:F94A,0.64,-82424.64129 865 | 3BN9,A:F97A,6.7,-79239.85012 866 | 3BN9,A:H143A,0.09,-83795.23781 867 | 3BN9,A:I41A,0,-80853.70699 868 | 3BN9,A:I60A,0.84,-82023.15864 869 | 3BN9,A:K224A,0.79,-82145.4399 870 | 3BN9,A:L153A,0.34,-82285.50507 871 | 3BN9,A:N95A,0.77,-82341.37802 872 | 3BN9,A:Q145A,0.13,-82285.50507 873 | 3BN9,A:Q174A,-0.03,-79863.83742 874 | 3BN9,A:Q175A,2.51,-78565.0173 875 | 3BN9,A:Q221aA,0.71,-82236.68087 876 | 3BN9,A:Q38A,-0.42,-82314.07022 877 | 3BN9,A:R222A,-0.09,-82285.50507 878 | 3BN9,A:R60cA,-0.05,-82483.75726 879 | 3BN9,A:R60fA,-0.07,-82285.50507 880 | 3BN9,A:R87A,-0.16,-82285.50507 881 | 3BN9,A:T150A,0.29,-82285.50507 882 | 3BN9,A:T98A,1.13,-82248.50467 883 | 3BN9,A:Y146A,1.09,-83656.23173 884 | 3BN9,A:Y60gA,0.02,-82759.88949 885 | 3BN9,H:P100H,8,-82065.23175 886 | 3BN9,H:Q100aV,1.36,-83231.16522 887 | 3BN9,H:S30G,1.36,-82044.63448 888 | 3BN9,H:S30N,1.36,-82705.74575 889 | 3BN9,H:T28R,0.3,-82396.30589 890 | 3BN9,H:T98Q,0,-81635.40292 891 | 3BN9,H:T98R,-0.06,-82132.97412 892 | 3BN9,H:Y99S,0.41,-83898.10155 893 | 3HFM,H:C95A,5.52,-51708.80958 894 | 3HFM,"H:C95A,Y:K96A",8,-52099.99721 895 | 3HFM,"H:C95A,Y:K97A",8,-52598.85361 896 | 3HFM,"H:C95A,Y:Y20A",8,-49777.83538 897 | 3HFM,H:C95F,3.25,-51708.80958 898 | 3HFM,"H:C95F,Y:K96A",8,-51443.80196 899 | 3HFM,"H:C95F,Y:K97A",8,-53281.31251 900 | 3HFM,"H:C95F,Y:Y20A",6.18,-49635.26328 901 | 3HFM,H:D32A,1.9,-50256.93211 902 | 3HFM,"H:D32A,Y:K97A",4.6,-52461.17338 903 | 3HFM,"H:D32A,Y:K97M",1.12,-52533.70488 904 | 3HFM,H:D32N,0.17,-50256.93211 905 | 3HFM,"H:D32N,Y:K97A",4.89,-52930.69651 906 | 3HFM,"H:D32N,Y:K97M",0.3,-51475.02862 907 | 3HFM,H:S31A,0.17,-50069.09661 908 | 3HFM,H:Y33A,6,-52792.88972 909 | 3HFM,"H:Y33A,Y:K96A",8,-51933.75757 910 | 3HFM,"H:Y33A,Y:K97A",6.83,-50745.82249 911 | 3HFM,"H:Y33A,Y:Y20A",8,-49415.52633 912 | 3HFM,H:Y50A,8,-51534.45566 913 | 3HFM,"H:Y50A,Y:R21A",8,-51425.58105 914 | 3HFM,L:N31A,5.22,-51183.31948 915 | 3HFM,"L:N31A,Y:K96A",8,-48916.94456 916 | 3HFM,L:N31D,1.34,-53624.43828 917 | 3HFM,L:N31E,5.67,-53624.43828 918 | 3HFM,L:N32A,5.11,-56500.20647 919 | 3HFM,"L:N32A,Y:Y20A",8,-52410.99169 920 | 3HFM,L:Q53A,0.95,-51695.78231 921 | 3HFM,L:Y50A,4.57,-51534.45566 922 | 3HFM,"L:Y50A,Y:K96A",8,-52413.13601 923 | 3HFM,"L:Y50A,Y:K97A",8,-53956.44761 924 | 3HFM,"L:Y50A,Y:R21A",6.42,-51425.58105 925 | 3HFM,"L:Y50A,Y:Y20A",8,-51040.86179 926 | 3HFM,L:Y50F,2.36,-50985.38696 927 | 3HFM,"L:Y50F,Y:K96A",8,-51938.00721 928 | 3HFM,"L:Y50F,Y:K97A",8,-50319.32384 929 | 3HFM,"L:Y50F,Y:R21A",4.33,-49981.71052 930 | 3HFM,"L:Y50F,Y:Y20A",6.18,-53368.34947 931 | 3HFM,L:Y50L,4.4,-50430.14321 932 | 3HFM,L:Y96A,2.71,-49213.33506 933 | 3HFM,"L:Y96A,Y:R21A",5.76,-49273.94716 934 | 3HFM,L:Y96F,1.4,-53688.81519 935 | 3HFM,"L:Y96F,Y:R21A",4.19,-49702.50232 936 | 3HFM,Y:K96A,6.83,-52099.99721 937 | 3HFM,Y:K97A,6.18,-52922.66098 938 | 3HFM,Y:K97M,1.09,-50494.10526 939 | 3HFM,Y:R21A,1.03,-49582.6974 940 | 3HFM,Y:Y20A,4.87,-49283.70201 941 | 3K2M,D:E52A,2.5,-53605.39482 942 | 3K2M,D:M88A,4,-54444.64379 943 | 3K2M,D:R38A,2.5,-53862.21812 944 | 3K2M,D:W80A,4,-52377.02984 945 | 3K2M,D:Y35A,1,-54045.7658 946 | 3K2M,D:Y36A,3.7,-51945.47019 947 | 3K2M,D:Y87A,4,-53291.50942 948 | 3NGB,H:A56G,-0.06,-68774.53325 949 | 3NGB,"H:A56G,H:V57T,H:P62K,H:V73T",1.67,-68207.45803 950 | 3NGB,"H:C32S,H:C98A",0.26,-71185.57862 951 | 3NGB,H:G54S,0.73,-65297.93451 952 | 3NGB,H:I30T,0.08,-67598.6745 953 | 3NGB,"H:I30T,H:K52N,H:R53N,H:G54S,H:A56G,H:V57T,H:R61Q,H:P62K,H:V73T,H:Y74S,L:Y28S",0.87,-69358.63193 954 | 3NGB,H:K52N,0.18,-68874.40452 955 | 3NGB,H:P62K,0.23,-68411.18087 956 | 3NGB,H:R53N,0.05,-71129.71781 957 | 3NGB,H:R61Q,0.1,-67833.34701 958 | 3NGB,H:T33Y,0.08,-67324.54202 959 | 3NGB,"H:T33Y,H:G55S,H:A56G,H:V57T,H:P62K,H:V73T,H:Y74S",1.91,-68864.44219 960 | 3NGB,H:V57T,0.14,-68371.70712 961 | 3NGB,H:V73T,0.16,-68115.55707 962 | 3NGB,H:Y74S,0.33,-68273.90607 963 | 3NPS,A:D214A,1.48,-74352.24516 964 | 3NPS,A:D46A,0.34,-74352.24516 965 | 3NPS,A:D47A,1.08,-77343.13852 966 | 3NPS,A:D91A,1.52,-75037.10021 967 | 3NPS,A:E163A,0.62,-74352.24516 968 | 3NPS,A:F50A,0.22,-74352.24516 969 | 3NPS,A:F89A,1.61,-75134.24904 970 | 3NPS,A:F92A,0.47,-75565.10991 971 | 3NPS,A:H138A,1.89,-78732.36046 972 | 3NPS,A:I26A,0.65,-77944.55209 973 | 3NPS,A:I45A,-0.34,-75067.69401 974 | 3NPS,A:K221A,-0.1,-74352.24516 975 | 3NPS,A:L147A,0.3,-74352.24516 976 | 3NPS,A:N90A,0.26,-74319.57723 977 | 3NPS,A:Q140A,0.3,-74352.24516 978 | 3NPS,A:Q168A,-0.06,-75455.2582 979 | 3NPS,A:Q169A,0.75,-74848.99393 980 | 3NPS,A:Q218A,-0.04,-74024.63283 981 | 3NPS,A:Q23A,0.03,-74352.24516 982 | 3NPS,A:R219A,-0.08,-74352.24516 983 | 3NPS,A:R48A,-1.07,-75951.2353 984 | 3NPS,A:R51A,0.14,-74352.24516 985 | 3NPS,A:R82A,-0.15,-74352.24516 986 | 3NPS,A:T144A,0.18,-75625.98371 987 | 3NPS,A:T93A,0.73,-74319.61447 988 | 3NPS,A:Y141A,1.79,-72822.53188 989 | 3NPS,A:Y52A,0.46,-74022.75331 990 | 3WJJ,"A:A327N,B:A327N",-0.08,-44250.65984 991 | 3WJJ,"A:A327S,B:A327S",0.56,-44150.83829 992 | 3WJJ,"A:A330I,B:A330I",2.32,-50143.09262 993 | 3WJJ,"A:A330L,B:A330L",0.57,-49771.74391 994 | 3WJJ,"A:A330L,B:A330L,A:I332E,B:I332E",-0.42,-49848.15694 995 | 3WJJ,"A:A330Y,B:A330Y",0.17,-50143.09262 996 | 3WJJ,"A:A330Y,B:A330Y,A:I332E,B:I332E",-0.88,-49806.94709 997 | 3WJJ,"A:I332D,B:I332D",-0.71,-43332.86462 998 | 3WJJ,"A:I332E,B:I332E",-0.81,-49712.31831 999 | 3WJJ,"A:S239D,B:S239D",-0.89,-50244.02648 1000 | 3WJJ,"A:S239D,B:S239D,A:A330L,B:A330L,A:I332E,B:I332E",-1.2,-50124.32933 1001 | 3WJJ,"A:S239D,B:S239D,A:I332E,B:I332E",-1.77,-49620.07933 1002 | 3WJJ,"A:S239D,B:S239D,A:S298A,B:S298A,A:I332E,B:I332E",-1.08,-49966.09358 1003 | 3WJJ,"A:S239D,B:S239D,A:V264I,B:V264I,A:I332E,B:I332E",-1.58,-40955.4018 1004 | 3WJJ,"A:S239E,B:S239E,A:I332E,B:I332E",-0.74,-42657.35732 1005 | 3WJJ,"A:S239N,B:S239N,A:S298A,B:S298A,A:I332E,B:I332E",-0.97,-49409.54489 1006 | 3WJJ,"A:S239Q,B:S239Q,A:I332E,B:I332E",-0.92,-48748.35779 1007 | 3WJJ,"A:V240A,B:V240A",1.17,-50118.66179 1008 | 3WJJ,"A:V240M,B:V240M",-0.19,-50118.66179 1009 | 3WJJ,"A:V264I,B:V264I,A:A330L,B:A330L,A:I332E,B:I332E",-0.34,-49226.62064 1010 | 3WJJ,"A:V264I,B:V264I,A:A330Y,B:A330Y,A:I332E,B:I332E",-0.75,-49187.81564 1011 | 3WJJ,"A:V264I,B:V264I,A:I332E,B:I332E",-0.27,-49163.38481 1012 | 3WJJ,"A:V264Y,B:V264Y",0.78,-49183.81464 1013 | 3WJJ,"A:Y296E,B:Y296E",-0.06,-50286.15064 1014 | 3WJJ,"A:Y296Q,B:Y296Q",0.5,-50286.15064 1015 | HM_1KTZ,B:D118A,0.8,-39730.26555 1016 | HM_1KTZ,B:D32A,1.5,-38288.32521 1017 | HM_1KTZ,B:D32N,2,-39975.37677 1018 | HM_1KTZ,B:E119A,1.5,-40160.64424 1019 | HM_1KTZ,B:E119Q,1.6,-40041.80999 1020 | HM_1KTZ,B:E55A,1.2,-39727.761 1021 | HM_1KTZ,B:E75A,1.1,-40451.29382 1022 | HM_1KTZ,B:F110A,0.9,-39851.54445 1023 | HM_1KTZ,B:F30A,3,-40109.63432 1024 | HM_1KTZ,B:H79A,0.3,-40035.40857 1025 | HM_1KTZ,B:I125A,0.5,-39851.54445 1026 | HM_1KTZ,B:I50A,1.9,-40225.29697 1027 | HM_1KTZ,B:I53A,1.4,-40015.7839 1028 | HM_1KTZ,B:L27A,1.8,-40630.58855 1029 | HM_1KTZ,B:M112A,0.9,-39934.56761 1030 | HM_1KTZ,B:N47A,0.3,-39851.54445 1031 | HM_1KTZ,B:S49A,0.3,-39909.9675 1032 | HM_1KTZ,B:S52A,0.2,-39891.7352 1033 | HM_1KTZ,B:S52L,4,-40401.37867 1034 | HM_1KTZ,B:T51A,1.5,-39873.99248 1035 | HM_1KTZ,B:V62A,0.7,-40035.40857 1036 | HM_1KTZ,B:V77A,0.4,-39886.11068 1037 | HM_1YY9,H:A98W,-0.23,-80238.11958 1038 | HM_1YY9,H:G33D,-0.89,-80509.12663 1039 | HM_1YY9,H:I51G,-0.51,-80321.49996 1040 | HM_1YY9,H:R97D,-0.99,-80321.49996 1041 | HM_1YY9,H:T100Y,-0.45,-79270.94056 1042 | HM_1YY9,H:T57G,-0.46,-80321.49996 1043 | HM_1YY9,H:T57P,-0.48,-80321.49996 1044 | HM_1YY9,H:V50L,-0.6,-79206.77123 1045 | HM_1YY9,H:V50Q,-0.64,-79889.21323 1046 | HM_1YY9,H:Y32R,-0.13,-80212.46298 1047 | HM_1YY9,L:A25V,-0.62,-80321.49996 1048 | HM_1YY9,L:G30Y,-0.92,-80321.49996 1049 | HM_1YY9,L:Q27Y,-0.83,-80073.37071 1050 | HM_1YY9,L:T97C,-0.51,-80321.49996 1051 | HM_1YY9,L:T97D,-0.66,-80321.49996 1052 | HM_1YY9,L:T97S,-0.7,-80321.49996 1053 | HM_2NYY,A:D1062A,-0.14,-71662.91955 1054 | HM_2NYY,A:D902A,-0.49,-66728.99401 1055 | HM_2NYY,A:E920A,0.5,-64119.55048 1056 | HM_2NYY,A:F953A,1.53,-66236.62908 1057 | HM_2NYY,A:I917A,0.95,-68472.65235 1058 | HM_2NYY,A:K915A,-0.31,-66829.30226 1059 | HM_2NYY,A:K955A,-0.5,-66546.68686 1060 | HM_2NYY,A:L919A,0.41,-69091.42262 1061 | HM_2NYY,A:N918A,0.3,-67653.31916 1062 | HM_2NYY,A:N957A,0.01,-66130.99588 1063 | HM_2NYY,A:P1063A,0.24,-66191.53715 1064 | HM_2NYY,A:R1061A,0.58,-65900.69749 1065 | HM_2NYY,A:R1064A,4.44,-74098.06345 1066 | HM_2NYY,A:R903A,-0.02,-72427.57921 1067 | HM_2NYY,A:S954A,-0.66,-66718.66592 1068 | HM_2NYY,A:T923A,0.62,-66810.23526 1069 | HM_2NYY,H:K30R,0.51,-66928.59691 1070 | HM_2NYY,H:M34Q,-0.01,-66928.59691 1071 | HM_2NYY,H:Y31D,0.97,-67438.44572 1072 | HM_2NYY,H:Y31Q,1.33,-68473.33721 1073 | HM_2NYY,H:Y57Q,1.19,-65878.86548 1074 | HM_2NYY,L:D30Y,0.6,-71532.72787 1075 | HM_2NYY,L:H34R,0.63,-66749.94371 1076 | HM_2NYY,L:S28Q,0.7,-67206.66061 1077 | HM_2NYY,L:S31N,1.2,-70899.65132 1078 | HM_2NZ9,A:D1062A,-0.14,-73848.0342 1079 | HM_2NZ9,A:D902A,-0.49,-73502.97094 1080 | HM_2NZ9,A:E920A,0.5,-73128.11094 1081 | HM_2NZ9,A:F953A,1.53,-74631.21361 1082 | HM_2NZ9,A:I917A,0.95,-72957.22521 1083 | HM_2NZ9,A:K915A,-0.31,-75816.95191 1084 | HM_2NZ9,A:K955A,-0.5,-76643.07161 1085 | HM_2NZ9,A:L919A,0.41,-75393.78071 1086 | HM_2NZ9,A:N918A,0.3,-75716.85301 1087 | HM_2NZ9,A:N957A,0.01,-74527.49688 1088 | HM_2NZ9,A:P1063A,0.24,-74485.48491 1089 | HM_2NZ9,A:R1061A,0.58,-74527.37083 1090 | HM_2NZ9,A:R1064A,4.44,-74298.08141 1091 | HM_2NZ9,A:R903A,-0.02,-75533.33699 1092 | HM_2NZ9,A:S954A,-0.66,-75911.26866 1093 | HM_2NZ9,A:T923A,0.62,-75083.63911 1094 | HM_3BN9,H:P100H,1.36,-76243.47938 1095 | HM_3BN9,H:Q100aV,0.41,-76009.78426 1096 | HM_3BN9,H:S30G,0.71,-75989.23253 1097 | HM_3BN9,H:S30N,0.71,-77069.63993 1098 | HM_3BN9,H:T28R,-0.24,-77004.05558 1099 | HM_3BN9,H:T98Q,-0.16,-77176.93911 1100 | HM_3BN9,H:T98R,-1.57,-76338.12081 1101 | HM_3BN9,H:Y99S,0.54,-78920.01643 --------------------------------------------------------------------------------