diff --git a/.github/workflows/docs.yaml b/.github/workflows/docs.yaml index 2644e6ed..aed210a6 100644 --- a/.github/workflows/docs.yaml +++ b/.github/workflows/docs.yaml @@ -28,7 +28,7 @@ jobs: uses: mamba-org/setup-micromamba@v1 with: environment-file: environment.yml - create-args: python=3.10 + create-args: python=3.12 init-shell: bash cache-downloads: true cache-environment: true diff --git a/.github/workflows/main.yaml b/.github/workflows/main.yaml index 86aa1462..cf0e9405 100644 --- a/.github/workflows/main.yaml +++ b/.github/workflows/main.yaml @@ -22,7 +22,7 @@ jobs: - name: Setup python uses: actions/setup-python@v5 with: - python-version: "3.10" + python-version: "3.12" - name: Configure docker run: echo ${{ secrets.GITHUB_TOKEN }} | docker login ghcr.io -u ${{ github.repository_owner }} --password-stdin - name: Install build and tag requirements diff --git a/.github/workflows/pr.yaml b/.github/workflows/pr.yaml index 9bb51875..2a6a9597 100644 --- a/.github/workflows/pr.yaml +++ b/.github/workflows/pr.yaml @@ -23,18 +23,18 @@ jobs: - name: Setup python uses: actions/setup-python@v5 with: - python-version: "3.10" + python-version: "3.12" - name: Install tox run: pip install tox - name: Run quality checks - run: tox -e py310-lint,py310-type + run: tox -e py312-lint,py312-type - name: Directory Cache uses: actions/cache@v4 with: path: .tox - key: tox-${{ runner.os }}-3.10-${{ hashFiles('tox.ini') }} + key: tox-${{ runner.os }}-3.12-${{ hashFiles('tox.ini') }} restore-keys: | - tox-${{ runner.os }}-3.10- + tox-${{ runner.os }}-3.12- test: name: Build and test docker image @@ -101,7 +101,7 @@ jobs: uses: mamba-org/setup-micromamba@v1 with: environment-file: environment.yml - create-args: python=3.10 + create-args: python=3.12 init-shell: bash cache-downloads: true cache-environment: true diff --git a/docs/conf.py b/docs/conf.py index aec33ab7..9c4a4cab 100644 --- a/docs/conf.py +++ b/docs/conf.py @@ -5,7 +5,9 @@ import plinder DOC_PATH = Path(__file__).parent -COLUMN_REFERENCE_PATH = DOC_PATH.parent / "src" / "plinder" / "data" / "column_descriptions" +COLUMN_REFERENCE_PATH = ( + DOC_PATH.parent / "src" / "plinder" / "data" / "column_descriptions" +) # Avoid verbose logs in rendered notebooks os.environ["PLINDER_LOG_LEVEL"] = "0" diff --git a/environment.yml b/environment.yml index 01df3379..5caf63a7 100644 --- a/environment.yml +++ b/environment.yml @@ -7,7 +7,7 @@ channels: - defaults - bioconda dependencies: - - python=3.10.* + - python=3.12.* - reduce - openstructure - mmseqs2 diff --git a/pyproject.toml b/pyproject.toml index f472e98e..c4867697 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -2,7 +2,7 @@ name = "plinder" dynamic = ["version"] dependencies = [ - "biotite >= 1.0", + "biotite >= 1.2", "numpy", "pandas", "typing_extensions", @@ -18,7 +18,7 @@ dependencies = [ "omegaconf", "mmcif", "eval_type_backport", - "posebusters", + "posebusters>=0.6.4", "duckdb", "cloudpathlib", "mols2grid", diff --git a/requirements_data.txt b/requirements_data.txt index 6699f5bc..f7a2717e 100644 --- a/requirements_data.txt +++ b/requirements_data.txt @@ -2,4 +2,5 @@ tabulate pdb-validation @ git+https://git.scicore.unibas.ch/schwede/ligand-validation.git mmpdb @ git+https://github.com/rdkit/mmpdb.git - https://download.pytorch.org/whl/cpu/torch-2.5.1%2Bcpu-cp312-cp312-linux_x86_64.whl#sha256=4856f9d6925121d13c2df07aa7580b767f449dfe71ae5acde9c27535d5da4840 + torch @ https://download.pytorch.org/whl/cpu/torch-2.5.1%2Bcpu-cp312-cp312-linux_x86_64.whl#sha256=4856f9d6925121d13c2df07aa7580b767f449dfe71ae5acde9c27535d5da4840 ; sys_platform == "linux" + torch >= 2.5 ; sys_platform == "darwin" diff --git a/src/plinder/core/scores/index.py b/src/plinder/core/scores/index.py index 2206bba3..e6356986 100644 --- a/src/plinder/core/scores/index.py +++ b/src/plinder/core/scores/index.py @@ -57,7 +57,7 @@ def query_index( assert query is not None df = sql(query).to_df() # START patch-2 - # TODO-2: remove this patch after entry_release_date is fixed + # TODO-2: rm this only once source data is regenerated!! if "entry_release_date" in df.columns: from importlib import resources diff --git a/src/plinder/core/utils/io.py b/src/plinder/core/utils/io.py index 1c591757..d0556061 100644 --- a/src/plinder/core/utils/io.py +++ b/src/plinder/core/utils/io.py @@ -74,8 +74,11 @@ def download_pdb_chain_cif_file(pdb_id: str, chain_id: str, filename: Path) -> P ), model=1, use_author_fields=False, + include_bonds=True, ) write_file = CIFFile() - set_structure(write_file, structure[structure.chain_id == chain_id]) + set_structure( + write_file, structure[structure.chain_id == chain_id], include_bonds=True + ) write_file.write(filename.as_posix()) return filename diff --git a/src/plinder/data/clusters.py b/src/plinder/data/clusters.py index c17d0677..4faa67fe 100644 --- a/src/plinder/data/clusters.py +++ b/src/plinder/data/clusters.py @@ -1,9 +1,16 @@ # Copyright (c) 2024, Plinder Development Team # Distributed under the terms of the Apache License 2.0 +import os +import sys from pathlib import Path from time import time from typing import Callable, TypeVar +if sys.platform == "darwin": + # For macOS only: allow multiple OpenMP runtimes to coexist + # (needed on macOS with conda) + os.environ.setdefault("KMP_DUPLICATE_LIB_OK", "TRUE") + import networkit as nk import numpy as np import pandas as pd @@ -66,6 +73,9 @@ def make_nk_communities( tuple[list[tuple[int, str]], int] """ assert not directed + if sys.platform == "darwin": + # For macOS only: limit to 1 thread to avoid segfault in PLM with multiple OMP runtimes + nk.setNumberOfThreads(1) communities = nk.community.detectCommunities(graph, nk.community.PLM(graph)) community_list = [ communities.getMembers(i) for i in range(communities.numberOfSubsets()) diff --git a/src/plinder/data/pipeline/io.py b/src/plinder/data/pipeline/io.py index ab20793e..6d735cdb 100644 --- a/src/plinder/data/pipeline/io.py +++ b/src/plinder/data/pipeline/io.py @@ -77,7 +77,7 @@ def download_cofactors( def download_affinity_data( *, data_dir: Path, - bindingdb_url: str = "https://www.bindingdb.org/bind/downloads/BindingDB_All_202401_tsv.zip", + bindingdb_url: str = "https://www.bindingdb.org/bind/downloads/BindingDB_All_202504_tsv.zip", force_update: bool = False, ) -> Any: """ @@ -102,18 +102,10 @@ def download_affinity_data( from zipfile import ZipFile affinity_path = data_dir / "dbs" / "affinity" / "affinity.json" - papyrus_raw_affinity_path = ( - data_dir / "dbs" / "affinity" / "papyrus_affinity_raw.tar.gz" - ) - bindingdb_raw_affinity_path = ( - data_dir / "dbs" / "affinity" / "BindingDB_All_202401.tsv" - ) - moad_raw_affinity_path = data_dir / "dbs" / "affinity" / "moad_affinity.csv" + bindingdb_raw_affinity_path = data_dir / "dbs" / "affinity" / "BindingDB_All.tsv" # Make sub directories - papyrus_raw_affinity_path.parent.mkdir(parents=True, exist_ok=True) bindingdb_raw_affinity_path.parent.mkdir(parents=True, exist_ok=True) - moad_raw_affinity_path.parent.mkdir(parents=True, exist_ok=True) if not affinity_path.is_file() or force_update: # Download BindingDB if ( diff --git a/src/plinder/data/pipeline/transform.py b/src/plinder/data/pipeline/transform.py index 5d7a9e48..7c4d4978 100644 --- a/src/plinder/data/pipeline/transform.py +++ b/src/plinder/data/pipeline/transform.py @@ -170,161 +170,6 @@ def calc_pchembl(affinity: float) -> Any: return df.groupby("pdbid_ligid").median().reset_index() -def transform_papyrus_affinity_data(*, raw_affinity_path: Path) -> pd.DataFrame: - """ - Unpack the tarball archive and collect the - contained files to a single parquet file. - - Parameters - ---------- - raw_affinity_path : Path - location of affinity data - - Returns - ------- - transformed : pd.DataFrame - median affinity dataset - """ - df = pd.read_csv(raw_affinity_path, sep="\t", compression="zip") - affinity_df = ( - df[ - [ - "accession", - "Quality", - "source", - "pchembl_value_Median", - "PDBID_ligand", - "PDBID_protein", - ] - ] - .copy() - .rename(columns={"pchembl_value_Median": "pchembl"}) - ) - affinity_df["PDBID_protein"] = affinity_df["PDBID_protein"].apply( - lambda x: x.split(";") - ) - affinity_df = affinity_df.explode("PDBID_protein") - affinity_df = affinity_df[affinity_df.pchembl.notna()] - affinity_df["pdbid_ligid"] = ( - affinity_df["PDBID_protein"].str.upper() + "_" + affinity_df["PDBID_ligand"] - ) - return ( - affinity_df[["pdbid_ligid", "pchembl"]] - .groupby("pdbid_ligid") - .median() - .reset_index() - ) - - -def transform_moad_affinity_data(*, raw_affinity_path: Path) -> pd.DataFrame: - """ - Unpack the tarball archive and collect the - contained files to a single parquet file. - - Parameters - ---------- - raw_affinity_path : Path - location of affinity data - - Returns - ------- - transformed : pd.DataFrame - median affinity dataset - """ - - def calc_pchembl(affinity: float, unit: str) -> Any: - if unit == "fM": - affinity = affinity * 10**-15 - - if affinity > 0: - return -1.0 * np.log10(affinity) - else: - return np.nan - elif unit == "pM": - affinity = affinity * 10**-12 - if affinity > 0: - return -1.0 * np.log10(affinity) - else: - return np.nan - elif unit == "nM": - affinity = affinity * 10**-9 - if affinity > 0: - return -1.0 * np.log10(affinity) - else: - return np.nan - elif unit == "uM": - affinity = affinity * 10**-6 - if affinity > 0: - return -1.0 * np.log10(affinity) - else: - return np.nan - elif unit == "mM": - affinity = affinity * 10**-3 - if affinity > 0: - return -1.0 * np.log10(affinity) - else: - return np.nan - elif unit == "M": - return affinity - - with open(raw_affinity_path) as f: - combined_list = [] - for line in f.readlines(): - line_split = line.split(",") - tmp_enzyme_class = line_split[0] - tmp_pdbid = line_split[2] - if len(tmp_enzyme_class.split(".")) == 4: - new_enzyme_class = tmp_enzyme_class - if len(tmp_pdbid) > 0: - if "Family" in line_split[1]: - family_representative = True - else: - family_representative = False - new_pdbid = tmp_pdbid - if (line_split[3] != "") & (line_split[5] != "Ka"): - combined_list.append( - [ - new_enzyme_class, - family_representative, - new_pdbid, - line_split[3], - line_split[4], - line_split[7], - line_split[8], - line_split[9], - ] - ) - moad_df = pd.DataFrame( - combined_list, - columns=[ - "ec_no.", - "ec_family_rep", - "pdbid", - "binder_and_chain", - "valid_ligand", - "affinity", - "unit", - "smiles", - ], - ) - moad_df["pdbid"] = moad_df["pdbid"].str.lower() - - moad_df["binder_id"] = moad_df["binder_and_chain"].apply(lambda x: x.split(":")[0]) - moad_df["binder_id"] = moad_df["binder_id"].apply(lambda x: x.split()) - moad_df = moad_df.explode("binder_id") - moad_df["pdbid_ligid"] = moad_df["pdbid"].str.upper() + "_" + moad_df["binder_id"] - # This will set instances with undefined affinity to nan - moad_df["pchembl"] = moad_df[["affinity", "unit"]].apply( - lambda x: calc_pchembl(float(x[0]), x[1]) if x[0] != "" else np.nan, axis=1 - ) - return ( - moad_df[["pdbid_ligid", "pchembl"]] - .groupby("pdbid_ligid") - .median() - .reset_index() - ) - - def transform_components_data(*, raw_components_path: Path) -> pd.DataFrame: import gemmi diff --git a/src/plinder/data/pipeline/utils.py b/src/plinder/data/pipeline/utils.py index 184c1d26..f6fff4f3 100644 --- a/src/plinder/data/pipeline/utils.py +++ b/src/plinder/data/pipeline/utils.py @@ -113,6 +113,8 @@ def load_entries_from_zips( two_char_codes: Optional[list[str]] = None, pdb_ids: Optional[list[str]] = None, load_for_scoring: bool = False, + max_protein_chains: int = 5, + max_ligand_chains: int = 5, ) -> Dict[str, "Entry"]: """ Load entries from the qc zips into a dict @@ -151,6 +153,8 @@ def load_entries_from_zips( pdb_id = name.replace(".json", "") reduced[pdb_id] = Entry.model_validate_json(obj.read()).prune( load_for_scoring=load_for_scoring, + max_protein_chains=max_protein_chains, + max_ligand_chains=max_ligand_chains, ) except Exception as e: LOG.error(f"failed to read name={name} failed with {repr(e)}") diff --git a/src/plinder/data/utils/annotations/aggregate_annotations.py b/src/plinder/data/utils/annotations/aggregate_annotations.py index 5b0bfd86..baf75778 100644 --- a/src/plinder/data/utils/annotations/aggregate_annotations.py +++ b/src/plinder/data/utils/annotations/aggregate_annotations.py @@ -54,7 +54,7 @@ SymmetryMateContacts = ty.Annotated[ - dict[tuple[str, int], dict[tuple[str, int], set[int]]], + dict[tuple[str, int], dict[tuple[str, int], dict[int, set[int]]]], BeforeValidator(validate_chain_residue), Field(default_factory=dict), ] @@ -159,14 +159,25 @@ def num_pocket_residues(self) -> int: """ Number of pocket residues of the system """ - return sum(l.num_pocket_residues for l in self.ligands) + pocket_residues = set() + for ligand in self.ligands: + ligand_pocket_residues = ligand.pocket_residues + for chain in ligand_pocket_residues: + pocket_residues |= set( + (chain, residue) for residue in ligand_pocket_residues[chain] + ) + return len(pocket_residues) @cached_property def proper_num_pocket_residues(self) -> int: """ Number of pocket residues of the system excluding ions and artifacts """ - return sum(l.num_pocket_residues for l in self.proper_ligands()) + pocket_residues = set() + for chain in self.pocket_residues: + for residue in self.pocket_residues[chain]: + pocket_residues.add((chain, residue)) + return len(pocket_residues) @cached_property def num_interactions(self) -> int: @@ -257,6 +268,8 @@ def pocket_residues(self) -> dict[str, dict[int, str]]: """ all_residues: dict[str, dict[int, str]] = defaultdict(dict) for ligand in self.ligands: + if not ligand.is_proper: + continue ligand_pocket_residues = ligand.pocket_residues for chain in ligand_pocket_residues: all_residues[chain].update(ligand_pocket_residues[chain]) @@ -271,7 +284,7 @@ def interactions(self) -> dict[str, dict[int, list[str]]]: lambda: defaultdict(list) ) for ligand in self.ligands: - if ligand.is_artifact: + if not ligand.is_proper: continue for chain in ligand.interactions: for residue in ligand.interactions[chain]: @@ -523,11 +536,15 @@ def ligand_max_molecular_weight(self) -> float: """ Maximum molecular weight of the system ligands """ - return max( + max_vals = [ ligand.molecular_weight if ligand.molecular_weight is not None else -1.0 for ligand in self.ligands if ligand.molecular_weight is not None - ) + ] + if len(max_vals): + return max(max_vals) + else: + return 1 @cached_property def proper_ligand_max_molecular_weight(self) -> float: @@ -654,9 +671,18 @@ def set_validation( thresholds, ) - def run_posebusters_on_system(self, system_folder: Path) -> None: + def run_posebusters_on_system( + self, system_folder: Path, pose_index: int = 0 + ) -> None: """ - Run posebusters on the system + Run posebusters on the system. + + Parameters + ---------- + system_folder : Path + Folder containing system files. + pose_index : int, optional + Pose index to use for evaluation, by default 0 """ pb = PoseBusters(config="redock") receptor_file = system_folder / "receptor.pdb" @@ -680,7 +706,8 @@ def run_posebusters_on_system(self, system_folder: Path) -> None: f"run_posebusters: Error running posebusters on {ligand.id}: {e}" ) continue - key = (str(ligand_file), ligand.instance_chain) + # posebusters>=0.6.4 produces 3-tuple keys (filename, chain, pose_index) + key = (str(ligand_file), ligand.instance_chain, pose_index) ligand.posebusters_result = { k: v.get(key) for k, v in result_dict.items() if v.get(key) } @@ -864,6 +891,92 @@ def from_json( max_ligand_chains=max_ligand_chains, ) + def _populate_chains(self, ent: ty.Any, info: ty.Any) -> None: + """Set entry.chains and entry.water_chains from a loaded OST entity.""" + self.chains = { + chain.name: Chain.from_ost_chain( + chain, info, len(self.chain_to_seqres.get(chain.name, "")) + ) + for chain in ent.chains + if chain.type != mol.CHAINTYPE_WATER + } + self.water_chains = [ + chain.name for chain in ent.chains if chain.type == mol.CHAINTYPE_WATER + ] + + def _finalize( + self, + ligands: dict[str, Ligand], + info: io.MMCifInfo, + biounits: dict[str, ty.Any], + save_folder: Path | None, + max_protein_chains_to_save: int, + max_ligand_chains_to_save: int, + skip_posebusters: bool = False, + ) -> None: + """Label crystal contacts, set systems, save, and run posebusters.""" + if self.symmetry_mate_contacts: + for ligand in ligands.values(): + ligand.label_crystal_contacts(self.symmetry_mate_contacts) + self.set_systems(ligands) + self.label_chains() + if save_folder is not None: + self.save_systems( + info, + biounits, + save_folder, + max_protein_chains_to_save, + max_ligand_chains_to_save, + ) + if not skip_posebusters: + self.run_posebusters( + save_folder, + max_protein_chains_to_save, + max_ligand_chains_to_save, + ) + + def _collect_ligands_from_biounit( + self, + biounit: ty.Any, + biounit_id: str, + interface_proximal_gaps: dict[str, ty.Any], + plip_complex_threshold: float, + neighboring_residue_threshold: float, + neighboring_ligand_threshold: float, + data_dir: Path | None, + ) -> dict[str, "Ligand"]: + """Create Ligand objects for every ligand chain in a single biounit.""" + ligands: dict[str, Ligand] = {} + biounit_ligand_chains = [ + chain.name + for chain in biounit.chains + if chain.name.split(".")[1] in self.ligand_like_chains + ] + for ligand_chain in biounit_ligand_chains: + ligand_instance, ligand_asym_id = ligand_chain.split(".") + residue_numbers = [ + residue.number.num + for residue in biounit.FindChain(ligand_chain).residues + ] + ligand = Ligand.from_pli( + pdb_id=self.pdb_id, + biounit_id=biounit_id, + biounit=biounit, + ligand_instance=int(ligand_instance), + ligand_chain=self.chains[ligand_asym_id], + residue_numbers=residue_numbers, + ligand_like_chains=self.ligand_like_chains, + interface_proximal_gaps=interface_proximal_gaps, + all_covalent_dict=self.covalent_bonds, + plip_complex_threshold=plip_complex_threshold, + neighboring_residue_threshold=neighboring_residue_threshold, + neighboring_ligand_threshold=neighboring_ligand_threshold, + data_dir=data_dir, + ) + if ligand is not None: + ligands[ligand.id] = ligand + return ligands + @classmethod def from_cif_file( cls, @@ -872,6 +985,7 @@ def from_cif_file( neighboring_ligand_threshold: float = 4.0, min_polymer_size: int = 10, # TODO: this used to be max_non_small_mol_ligand_length max_non_small_mol_ligand_length: int = 20, # TODO: review and make consistent + data_dir: Path | None = None, save_folder: Path | None = None, max_protein_chains_to_save: int = 5, max_ligand_chains_to_save: int = 5, @@ -881,23 +995,21 @@ def from_cif_file( symmetry_mate_contact_threshold: float = 5.0, ) -> Entry: """ - Load an entry object from mmcif files + Load an entry object from mmCIF files in the pipeline Parameters ---------- cif_file : Path - mmcif files of interest + mmCIF file of interest neighboring_residue_threshold : float - Distance from ligand for protein \ - residues to be considered a ligand + Distance from ligand for protein residues to be considered a ligand neighboring_ligand_threshold : float - Distance from ligand for other ligans \ - to be considered a ligand + Distance from ligand for other ligands to be considered a ligand min_polymer_size : int = 10 - Minimum number of residues for chain to be seen as a \ - polymer, or Maximum number of residues for chain to be seen as a ligand \ + Minimum number of residues for chain to be seen as a polymer, + or Maximum number of residues for chain to be seen as a ligand max_non_small_mol_ligand_length: int = 20 - Maximum length of polymer that should be assessed for potentially being ligand + Maximum length of polymer to be assessed for potentially being ligand save_folder : Path Path to save files max_protein_chains_to_save : int @@ -905,8 +1017,7 @@ def from_cif_file( max_ligand_chains_to_save : int Maximum number of protein chains to save plip_complex_threshold=10 - Maximum distance from ligand to residues to be - included for plip calculations. + Maximum distance from ligand to residues to be included for plip calculations skip_save_systems: bool = False skips saving system files skip_posebusters: bool = False @@ -926,9 +1037,6 @@ def from_cif_file( ) entry_info = get_entry_info(cif_data) per_chain = get_chain_external_mappings(cif_data) - # TODO: annotate_interface_gaps does not use the same ligand chain definitions as the rest - # move this to later after protein/ligand chain assignment? - interface_proximal_gaps = annotate_interface_gaps(cif_file) resolution = entry_info.get("entry_resolution") r = None if resolution is not None: @@ -938,7 +1046,7 @@ def from_cif_file( r = None entry = cls( pdb_id=info.struct_details.entry_id.lower(), - release_date=info.revisions.GetDateOriginal(), + release_date=info.revisions.GetDate(0), oligomeric_state=str(entry_info.get("entry_oligomeric_state")) if entry_info.get("entry_oligomeric_state") is not None else None, @@ -956,19 +1064,9 @@ def from_cif_file( chain_to_seqres={c.name: c.string for c in seqres}, symmetry_mate_contacts=symmetry_mate_contacts, ) - entry.chains = { - chain.name: Chain.from_ost_chain( - chain, info, len(entry.chain_to_seqres.get(chain.name, "")) - ) - for chain in ent.chains - if chain.type != mol.CHAINTYPE_WATER - } - entry.water_chains = [ - chain.name for chain in ent.chains if chain.type == mol.CHAINTYPE_WATER - ] + entry._populate_chains(ent, info) - data_dir = None - if save_folder is not None: + if save_folder is not None and data_dir is None: data_dir = save_folder.parent.parent for chain in per_chain: entry.chains[chain].mappings = per_chain[chain] @@ -979,62 +1077,154 @@ def from_cif_file( entry.ligand_like_chains = detect_ligand_chains( ent, entry, min_polymer_size, max_non_small_mol_ligand_length ) - ligands = {} + protein_chains = [c for c in entry.chains if c not in entry.ligand_like_chains] + interface_proximal_gaps = annotate_interface_gaps( + cif_file, + protein_chains=protein_chains, + ligand_chains=list(entry.ligand_like_chains.keys()), + ) + ligands: dict[str, Ligand] = {} biounits = {} for biounit_info in info.biounits: + # note, biounit chains are renamed to 1.A, 1.B, etc. biounit = mol.alg.CreateBU(ent, biounit_info) - biounit_ligand_chains = [ - chain.name - for chain in biounit.chains - if chain.name.split(".")[1] in entry.ligand_like_chains - ] - for ligand_chain in biounit_ligand_chains: - ligand_instance, ligand_asym_id = ligand_chain.split(".") - data_dir = None - if save_folder is not None: - data_dir = save_folder.parent.parent - residue_numbers = [ - residue.number.num - for residue in biounit.FindChain(ligand_chain).residues - ] - ligand = Ligand.from_pli( - pdb_id=entry.pdb_id, - biounit_id=biounit_info.id, - biounit=biounit, - ligand_instance=int(ligand_instance), - ligand_chain=entry.chains[ligand_asym_id], - residue_numbers=residue_numbers, - ligand_like_chains=entry.ligand_like_chains, - interface_proximal_gaps=interface_proximal_gaps, - all_covalent_dict=entry.covalent_bonds, - plip_complex_threshold=plip_complex_threshold, - neighboring_residue_threshold=neighboring_residue_threshold, - neighboring_ligand_threshold=neighboring_ligand_threshold, - data_dir=data_dir, - ) - if ligand is not None: - ligands[ligand.id] = ligand - biounits[biounit_info.id] = biounit - entry.set_systems(ligands) - entry.label_chains() - if save_folder is not None and not skip_save_systems: - entry.save_systems( - info, - biounits, - save_folder, - max_protein_chains_to_save, - max_ligand_chains_to_save, + new_ligands = entry._collect_ligands_from_biounit( + biounit, + biounit_info.id, + interface_proximal_gaps, + plip_complex_threshold, + neighboring_residue_threshold, + neighboring_ligand_threshold, + data_dir, ) - # TODO: this is backwards because it assumes save_systems - # has already run but will fail if it hadn't run previously - # so we just check if save_folder is None (which it's not in the pipeline) - # VO: added option to skip to speed up testing! - if not skip_posebusters: - entry.run_posebusters( - save_folder, - max_protein_chains_to_save, - max_ligand_chains_to_save, + ligands.update(new_ligands) + biounits[biounit_info.id] = biounit + entry._finalize( + ligands, + info, + biounits, + save_folder if not skip_save_systems else None, + max_protein_chains_to_save, + max_ligand_chains_to_save, + skip_posebusters=skip_posebusters, + ) + return entry + + @classmethod + def from_custom_cif_file( + cls, + pdb_id: str, + cif_file: Path, + ligand_smiles_dict: dict[str, str] | None = None, + neighboring_residue_threshold: float = 6.0, + neighboring_ligand_threshold: float = 4.0, + min_polymer_size: int = 10, # TODO: this used to be max_non_small_mol_ligand_length + max_non_small_mol_ligand_length: int = 20, # TODO: review and make consistent + plip_complex_threshold: float = 10.0, + save_folder: Path | None = None, + max_protein_chains_to_save: int = 5, + max_ligand_chains_to_save: int = 5, + ) -> Entry: + """ + Creates entry from an extrernal mmCIF file + + Parameters + ---------- + pdb_id : str + annotation be used in PDB ID column + cif_file : Path + mmcif files of interest + ligand_smiles_dict : dict[str, str] | None, optional + Mapping of component ID (e.g. ``LIG``) to SMILES. + Required for unknown ligands without ``_chem_comp_bond`` + (typical of cofolding outputs). Known CCD compounds + are handled automatically. + neighboring_residue_threshold : float, optional + Distance from ligand for protein residues to be considered a ligand, + by default 6.0 + neighboring_ligand_threshold : float, optional + Distance from ligand for protein residues to be considered a ligand, + by default 4.0 + min_polymer_size : int, optional + _description_, by default 10 + save_folder : Path | None, optional + _description_, by default None + max_protein_chains_to_save : int, optional + Maximum number of protein chains to save, by default 5 + max_ligand_chains_to_save : int, optional + Maximum number of protein chains to save, by default 5 + + Returns + ------- + Entry + Entry object for the given pdbid + + Raises + ------ + MissingBondOrderError + If the CIF contains unknown ligands and no ``ligand_smiles_dict`` + is provided. + """ + from plinder.data.utils.annotations.biotite_utils import ( + MissingBondOrderError, + assign_bond_orders_from_smiles, + get_unknown_ligand_ids, + ) + + # Check for missing bond orders and enrich CIF if needed + unknown_ids = get_unknown_ligand_ids(cif_file) + if unknown_ids: + if ligand_smiles_dict is None: + raise MissingBondOrderError( + f"CIF contains unknown ligands {unknown_ids} with no " + "_chem_comp_bond and no CCD match. " + "Provide ligand_smiles_dict to assign bond orders." + ) + assign_bond_orders_from_smiles( + cif_file, + ligand_smiles=ligand_smiles_dict, ) + + ent, seqres, info = io.LoadMMCIF( + str(cif_file), seqres=True, info=True, remote=False + ) + entry = cls( + pdb_id=pdb_id, + chain_to_seqres={c.name: c.string for c in seqres}, + ) + entry._populate_chains(ent, info) + entry.ligand_like_chains = detect_ligand_chains( + ent, entry, min_polymer_size, max_non_small_mol_ligand_length + ) + protein_chains = [c for c in entry.chains if c not in entry.ligand_like_chains] + interface_proximal_gaps = annotate_interface_gaps( + cif_file, + protein_chains=protein_chains, + ligand_chains=list(entry.ligand_like_chains.keys()), + ) + biounit = ent.Copy() + edi = biounit.EditXCS(mol.BUFFERED_EDIT) + for chain in biounit.chains: + edi.RenameChain(chain, f"1.{chain.name}") + edi.UpdateICS() + ligands = entry._collect_ligands_from_biounit( + biounit, + "1", # single assembly; custom CIFs lack _pdbx_struct_assembly + interface_proximal_gaps, + plip_complex_threshold, + neighboring_residue_threshold, + neighboring_ligand_threshold, + data_dir=None, + ) + entry._finalize( + ligands, + info, + {"1": biounit}, + save_folder, + max_protein_chains_to_save, + max_ligand_chains_to_save, + skip_posebusters=True, + ) return entry def set_systems(self, ligands: dict[str, Ligand]) -> None: @@ -1204,8 +1394,8 @@ def format( self, criteria: QualityCriteria = QualityCriteria() ) -> dict[str, ty.Any]: """ - Format label for entry-level annotations by prepending \ - label with "entry_" + Format label for entry-level annotations by prepending label with "entry_" + Parameters ---------- self : Entry @@ -1340,7 +1530,6 @@ def set_validation( f"set_validation: Skipping validation for {self.pdb_id} as method is not X-RAY DIFFRACTION" ) return - self.label_crystal_contacts() if not validation_file.exists(): LOG.error(f"set_validation: Validation file not found {validation_file}") return @@ -1359,25 +1548,6 @@ def set_validation( f"set_validation: Error setting validation for {self.pdb_id}: {e}" ) - def label_crystal_contacts(self) -> None: - """ - Label contacts of ligand residues to other symmetry mates - Excludes neighboring residues (i.e same biounit) - """ - for system in self.systems: - for ligand in self.systems[system].ligands: - crystal_contacts: dict[tuple[str, int], set[int]] = defaultdict(set) - for residue_number in ligand.residue_numbers: - # get all contacts with chains in other asymmetric units - contacts = self.symmetry_mate_contacts.get( - (ligand.asym_id, residue_number), dict() - ) - for x, y in contacts.items(): - # keep only contacts with receptor - if x[0] not in self.ligand_like_chains: - crystal_contacts[x] |= y - ligand.set_crystal_contacts(crystal_contacts) - def add_ecod(self) -> None: """ Add ECOD annotations to chains diff --git a/src/plinder/data/utils/annotations/biotite_utils.py b/src/plinder/data/utils/annotations/biotite_utils.py new file mode 100644 index 00000000..7797bfd7 --- /dev/null +++ b/src/plinder/data/utils/annotations/biotite_utils.py @@ -0,0 +1,242 @@ +# Copyright (c) 2024, Plinder Development Team +# Distributed under the terms of the Apache License 2.0 +"""Check and assign ligand bond orders in mmCIF files. + +Cofolding tools (AlphaFold3, Boltz, Chai-1) output mmCIF files without +``_chem_comp_bond``. This module detects missing bond orders and assigns +them from user-supplied SMILES templates. + +Only ligands unknown to the CCD library *and* missing from +``_chem_comp_bond`` are processed. Known compounds (ATP, NAD, HEM, etc.) +are skipped automatically. +""" + +from __future__ import annotations + +import logging +from pathlib import Path + +import biotite.structure.io.pdbx as pdbx +from openbabel import pybel +from ost import conop, io, mol +from rdkit import Chem + +from plinder.core.structure.smallmols_utils import ( + mol_assigned_bond_orders_by_template, + params_removeHs, +) + +LOG = logging.getLogger(__name__) +_COMPOUND_LIB = conop.GetDefaultLib() + + +class MissingBondOrderError(ValueError): + """Raised when a CIF file has ligands with unresolvable bond orders.""" + + pass + + +def _get_hetatm_comp_ids(block: pdbx.CIFBlock) -> set[str]: + """Extract non-polymer component IDs from atom_site.""" + if "atom_site" not in block: + return set() + atom_site = block["atom_site"] + group_pdb = atom_site["group_PDB"].as_array() + comp_ids = atom_site["label_comp_id"].as_array() + return {comp_ids[i] for i in range(len(group_pdb)) if group_pdb[i] == "HETATM"} + + +def _get_cif_bond_comp_ids(block: pdbx.CIFBlock) -> set[str]: + """Return the set of comp_ids that already have _chem_comp_bond entries.""" + if "chem_comp_bond" not in block: + return set() + return set(block["chem_comp_bond"]["comp_id"].as_array()) + + +def _is_known_compound(comp_id: str) -> bool: + """Check if a component ID is known to the CCD compound library.""" + return _COMPOUND_LIB.FindCompound(comp_id) is not None + + +def get_unknown_ligand_ids(cif_input: pdbx.CIFFile | Path | str) -> set[str]: + """Return HETATM comp_ids not in CCD and missing ``_chem_comp_bond``. + + Parameters + ---------- + cif_input : CIFFile, Path, or str + Biotite CIFFile or path to an mmCIF file. + + Returns + ------- + set[str] + Component IDs requiring user-supplied SMILES. + """ + if not isinstance(cif_input, pdbx.CIFFile): + cif_input = pdbx.CIFFile.read(str(cif_input)) + block = list(cif_input.values())[0] + + hetatm_ids = _get_hetatm_comp_ids(block) + if not hetatm_ids: + return set() + + cif_bond_ids = _get_cif_bond_comp_ids(block) + + unknown = set() + for comp_id in hetatm_ids: + if comp_id in cif_bond_ids: + continue + if _is_known_compound(comp_id): + continue + unknown.add(comp_id) + return unknown + + +def _rdkit_bond_order_to_cif(bond_type: Chem.rdchem.BondType) -> str: + mapping = { + Chem.rdchem.BondType.SINGLE: "SING", + Chem.rdchem.BondType.DOUBLE: "DOUB", + Chem.rdchem.BondType.TRIPLE: "TRIP", + Chem.rdchem.BondType.AROMATIC: "AROM", + } + return mapping.get(bond_type, "SING") + + +def check_cif_bond_orders(cif_input: pdbx.CIFFile | Path | str) -> None: + """Raise if any ligand has unresolvable bond orders. + + Parameters + ---------- + cif_input : CIFFile, Path, or str + Biotite CIFFile or path to an mmCIF file. + + Raises + ------ + MissingBondOrderError + If any ligand is unknown to CCD and has no ``_chem_comp_bond``. + """ + unknown = get_unknown_ligand_ids(cif_input) + if unknown: + raise MissingBondOrderError( + f"CIF file contains unknown ligands {unknown} with " + "no _chem_comp_bond category and no CCD library match. " + "Provide ligand SMILES to assign bond orders." + ) + + +def assign_bond_orders_from_smiles( + cif_path: Path, + ligand_smiles: dict[str, str], + output_path: Path | None = None, +) -> Path: + """Assign bond orders to unknown ligands using SMILES templates. + + Known CCD compounds are skipped. Writes ``_chem_comp_bond`` into + the CIF, preserving any existing entries. + + Parameters + ---------- + cif_path : Path + Input mmCIF file. + ligand_smiles : dict[str, str] + Mapping of component ID (e.g. ``LIG``) to SMILES. + output_path : Path | None + Output path. Defaults to overwriting *cif_path*. + + Returns + ------- + Path + Path to the written CIF file. + + Raises + ------ + MissingBondOrderError + If unknown ligands remain without SMILES. + ValueError + If SMILES is invalid or template matching fails. + """ + if output_path is None: + output_path = cif_path + + cif_file = pdbx.CIFFile.read(str(cif_path)) + block = list(cif_file.values())[0] + + # Determine which ligands actually need bond order assignment + unknown_ids = get_unknown_ligand_ids(cif_file) + if not unknown_ids: + LOG.info("All ligands are known or already have bond orders, nothing to do") + cif_file.write(str(output_path)) + return output_path + + # Check that user provided SMILES for all unknown ligands + missing_smiles = unknown_ids - set(ligand_smiles.keys()) + if missing_smiles: + raise MissingBondOrderError( + f"Unknown ligands {missing_smiles} need SMILES but none were provided" + ) + + # Filter to only process unknown ligands + to_process = {k: v for k, v in ligand_smiles.items() if k in unknown_ids} + skipped = set(ligand_smiles.keys()) - unknown_ids + if skipped: + LOG.info(f"Skipping known compounds: {skipped}") + + ent = io.LoadMMCIF(str(cif_path)).Select("") + + # Preserve existing _chem_comp_bond rows + comp_id_list: list[str] = [] + atom_id_1_list: list[str] = [] + atom_id_2_list: list[str] = [] + value_order_list: list[str] = [] + + if "chem_comp_bond" in block: + existing = block["chem_comp_bond"] + for i in range(existing.row_count): + comp_id_list.append(existing["comp_id"].as_array()[i]) + atom_id_1_list.append(existing["atom_id_1"].as_array()[i]) + atom_id_2_list.append(existing["atom_id_2"].as_array()[i]) + value_order_list.append(existing["value_order"].as_array()[i]) + + for comp_id, smiles in to_process.items(): + template = Chem.MolFromSmiles(smiles) + if template is None: + raise ValueError(f"Invalid SMILES for {comp_id}: {smiles}") + + ligand_view = ent.Select(f"rname={comp_id}") + if not ligand_view.IsValid() or ligand_view.GetAtomCount() == 0: + raise ValueError(f"No atoms found for component {comp_id} in CIF") + + ligand_ent = mol.CreateEntityFromView(ligand_view, True) + + # Convert to RDKit mol via OpenBabel bond perception + pdbstring = io.EntityToPDBStr(ligand_ent).strip() + sdfstring = pybel.readstring("pdb", pdbstring).write("sdf") + rdkit_mol = Chem.MolFromMolBlock(sdfstring, sanitize=False) + if rdkit_mol is None: + raise ValueError(f"Could not parse ligand {comp_id} as RDKit mol") + + rdkit_mol = params_removeHs(rdkit_mol) + fixed_mol = mol_assigned_bond_orders_by_template(template, rdkit_mol) + + atom_names = [a.name.strip() for a in ligand_ent.atoms] + + for bond in fixed_mol.GetBonds(): + idx1 = bond.GetBeginAtomIdx() + idx2 = bond.GetEndAtomIdx() + if idx1 < len(atom_names) and idx2 < len(atom_names): + comp_id_list.append(comp_id) + atom_id_1_list.append(atom_names[idx1]) + atom_id_2_list.append(atom_names[idx2]) + value_order_list.append(_rdkit_bond_order_to_cif(bond.GetBondType())) + + bond_cat = pdbx.CIFCategory( + { + "comp_id": comp_id_list, + "atom_id_1": atom_id_1_list, + "atom_id_2": atom_id_2_list, + "value_order": value_order_list, + } + ) + block["chem_comp_bond"] = bond_cat + + cif_file.write(str(output_path)) + return output_path diff --git a/src/plinder/data/utils/annotations/get_similarity_scores.py b/src/plinder/data/utils/annotations/get_similarity_scores.py index 2895fd69..38b14ebd 100644 --- a/src/plinder/data/utils/annotations/get_similarity_scores.py +++ b/src/plinder/data/utils/annotations/get_similarity_scores.py @@ -199,6 +199,8 @@ def run_alignment( str(x) .replace("_xyz-enrich.cif.gz", "") .replace("_xyz-enrich.cif", "") + .replace(".cif.gz", "") + .replace(".cif", "") .replace("pdb_0000", "")[:4] for x in table["query"] ] @@ -212,6 +214,8 @@ def run_alignment( str(x) .replace("_xyz-enrich.cif.gz", "") .replace("_xyz-enrich.cif", "") + .replace(".cif.gz", "") + .replace(".cif", "") .replace("pdb_0000", "")[:4] for x in table["target"] ] @@ -364,10 +368,7 @@ def run_alignments( ) except Exception as e: scratch = ( - Path(*output_folder.parts[:3]) - / "scratch" - / "scores" - / "run_alignment_failures" + output_folder / "scratch" / "scores" / "run_alignment_failures" ) scratch.mkdir(exist_ok=True, parents=True) (scratch / f"{search_db}_{aln_type}.txt").write_text(f"{repr(e)}: {e}") @@ -381,10 +382,7 @@ def run_alignments( ) if not pdb_id_file.exists(): scratch = ( - Path(*output_folder.parts[:3]) - / "scratch" - / "scores" - / "run_alignments_failures" + output_folder / "scratch" / "scores" / "run_alignments_failures" ) scratch.mkdir(exist_ok=True, parents=True) (scratch / f"{search_db}_{aln_type}_{pdb_id}.txt").write_text("") @@ -394,10 +392,7 @@ def run_alignments( pdb_id_df.to_parquet(aln_dir / f"{pdb_id}.parquet") else: scratch = ( - Path(*output_folder.parts[:3]) - / "scratch" - / "scores" - / "run_alignments_empty" + output_folder / "scratch" / "scores" / "run_alignments_empty" ) scratch.mkdir(exist_ok=True, parents=True) (scratch / f"{search_db}_{aln_type}_{pdb_id}.txt").write_text("") @@ -422,6 +417,29 @@ def get_score_df( if not pdb_id_file.exists(): LOG.info(f"get_score_df: pdb_id_file={pdb_id_file} does not exist") continue + + # self.entries = {} + entries_to_load = {pdb_id} + if search_db != "pred" and pdb_id_file.exists(): + entries_to_load |= set( + pd.read_parquet(pdb_id_file, columns=["target_pdb_id"])[ + "target_pdb_id" + ] + ) + entries_to_load = entries_to_load.difference(self.entries.keys()) + LOG.info(f"entries_to_load pdb_id={pdb_id} {len(entries_to_load)}") + LOG.info( + f"loading {len(entries_to_load)} (additional) entries for {pdb_id}" + ) + self.entries.update( + load_entries_from_zips( + data_dir=data_dir, + pdb_ids=entries_to_load, + load_for_scoring=True, + max_protein_chains=20, + max_ligand_chains=20, + ) + ) pdb_file = ( self.db_dir / f"{search_db}_{aln_type}" @@ -430,30 +448,9 @@ def get_score_df( ) pdb_file.parent.mkdir(exist_ok=True, parents=True) if overwrite or not pdb_file.exists(): - self.entries = {} - entries_to_load = {pdb_id} - if search_db != "pred" and pdb_id_file.exists(): - entries_to_load |= set( - pd.read_parquet(pdb_id_file, columns=["target_pdb_id"])[ - "target_pdb_id" - ] - ) - entries_to_load = entries_to_load.difference(self.entries.keys()) - LOG.info(f"entries_to_load pdb_id={pdb_id} {len(entries_to_load)}") - LOG.info( - f"loading {len(entries_to_load)} (additional) entries for {pdb_id}" - ) - self.entries.update( - load_entries_from_zips( - data_dir=data_dir, - pdb_ids=entries_to_load, - load_for_scoring=True, - ) - ) - try: LOG.info( - f"mapping aligmnet df for {pdb_id} to {search_db} for {aln_type}" + f"mapping aligment df for {pdb_id} to {search_db} for {aln_type}" ) self.map_alignment_df(pdb_id_file, aln_type, search_db).to_parquet( pdb_file, index=True @@ -533,7 +530,12 @@ def map_alignment_df( df = pd.read_parquet(df_file) if aln_type == "foldseek": df["query"] = df["query"].replace( - {"_xyz-enrich.cif.gz": "", "_xyz-enrich.cif": "", "pdb_0000": ""}, + { + "_xyz-enrich.cif.gz": "", + "_xyz-enrich.cif": "", + "pdb_0000": "", + ".cif.gz": "", + }, regex=True, ) if search_db == "pred": @@ -542,7 +544,12 @@ def map_alignment_df( ) else: df["target"] = df["target"].replace( - {"_xyz-enrich.cif.gz": "", "_xyz-enrich.cif": "", "pdb_0000": ""}, + { + "_xyz-enrich.cif.gz": "", + "_xyz-enrich.cif": "", + "pdb_0000": "", + ".cif.gz": "", + }, regex=True, ) df["query_chain_mapped"] = ( @@ -754,9 +761,9 @@ def get_pocket_pli_scores( ]: pocket_scores: _SimilarityScoreDictType = defaultdict(float) pli_scores: _SimilarityScoreDictType = defaultdict(float) - pocket_length = query_system.num_pocket_residues - pli_length = query_system.num_interactions - pli_unique_length = query_system.num_unique_interactions + pocket_length = query_system.proper_num_pocket_residues + pli_length = query_system.proper_num_interactions + pli_unique_length = query_system.proper_num_unique_interactions for q_instance_chain, t_instance_chain in alns: aln = alns[(q_instance_chain, t_instance_chain)] q_pocket = query_system.pocket_residues.get(q_instance_chain, {}) @@ -856,7 +863,6 @@ def get_scores_holo( q_chain ].index.get_level_values("target_chain_mapped") ) - for target_system_id in self.entries[target_entry].systems: target_system = self.entries[target_entry].systems[target_system_id] if target_system.system_type != "holo": diff --git a/src/plinder/data/utils/annotations/interaction_utils.py b/src/plinder/data/utils/annotations/interaction_utils.py index 354952c4..893385f4 100644 --- a/src/plinder/data/utils/annotations/interaction_utils.py +++ b/src/plinder/data/utils/annotations/interaction_utils.py @@ -36,49 +36,74 @@ def get_symmetry_mate_contacts( mmcif_filename: Path, contact_threshold: float = 5.0 -) -> dict[tuple[str, int], dict[tuple[str, int], set[int]]]: +) -> dict[tuple[str, int], dict[tuple[str, int], dict[int, set[int]]]]: """ - Get all contacts within a given threshold between residues which are not in the same asymmetric unit (symmetry mates) + Get all contacts within a given threshold between any system residues that + are not in the same chain. This includes protein contacts with its images. + Stores only contacts that were generated using any symmetry operations + except for identity (self-image). + + Parameters + ---------- + mmcif_file : Path + mmcif structure file + + Returns + ------- + dict[tuple[str, int], dict[tuple[str, int], dict[int, set[int]]]] + Mapping of symmetry contacts between residue defined by (chain_id, residue_id) + and another residue's atom_id mapped to the symmetry operation (image_idx) + that generated the contact. """ cif = gemmi.read_structure(mmcif_filename.__str__(), merge_chain_parts=False) + cif.remove_waters() + cif.remove_hydrogens() + # cif.remove_alternative_conformations() + cif.setup_entities() ns = gemmi.NeighborSearch(cif[0], cif.cell, contact_threshold).populate( include_h=False ) cs = gemmi.ContactSearch(contact_threshold) - cs.ignore = gemmi.ContactSearch.Ignore.SameAsu + # ignore chain contacts with self + cs.ignore = gemmi.ContactSearch.Ignore.SameChain cs.twice = True pairs = cs.find_contacts(ns) - results: dict[tuple[str, int], dict[tuple[str, int], set[int]]] = defaultdict( - lambda: defaultdict(set) - ) + results: dict[ + tuple[str, int], dict[tuple[str, int], dict[int, set[int]]] + ] = defaultdict(lambda: defaultdict(lambda: defaultdict(set))) for p in pairs: - if p.partner1.residue.is_water() or p.partner2.residue.is_water(): - continue - i1, i2 = p.partner1.residue.label_seq, p.partner2.residue.label_seq - if i1 is None: - i1 = 1 - if i2 is None: - i2 = 1 c1, c2 = p.partner1.residue.subchain, p.partner2.residue.subchain - results[(c1, i1)][(c2, i2)].add(p.partner1.atom.serial) + # if p.partner1.residue.is_water() or p.partner2.residue.is_water(): + # continue + r1, r2 = p.partner1.residue.label_seq, p.partner2.residue.label_seq + if r1 is None: + r1 = 1 + if r2 is None: + r2 = 1 + # The image_idx is an index of the symmetry image (both crystallographic symmetry and strict NCS count) + # – it is 0 iff both atoms (partner1 and partner2) are in the same unit, thus we ignore + if p.image_idx == 0: + continue + results[(c1, r1)][(c2, r2)][p.partner1.atom.serial].add(p.image_idx) return results -def get_covalent_connections(data: DataContainer) -> dict[str, list[tuple[str, str]]]: +def get_covalent_connections( + cif_data: DataContainer +) -> dict[str, list[tuple[str, str]]]: """ - Get covalent connections from any mmcif file with - _struct_conn. attribute + Extract covalent connections from mmcif data container Parameters ---------- - mmcif_file : Path - mmcif file with _struct_conn. attribute + cif_data : DataContainer + mmcif data container Returns ------- - Dict[str, List[Set[str]]] - Mapping of covalent residues + dict[str, list[tuple[str, str]] + All covalent links as defined by mmcif annotations """ cov_dict = defaultdict(list) @@ -97,7 +122,7 @@ def get_covalent_connections(data: DataContainer) -> dict[str, list[tuple[str, s "ptnr2_label_atom_id", "conn_type_id", ] - cons = data.getObj("struct_conn") + cons = cif_data.getObj("struct_conn") if cons is None: return {} for con in cons.getCombinationCountsWithConditions( @@ -139,6 +164,33 @@ def extract_ligand_links_to_neighbouring_chains( neighboring_asym_ids: set[str], link_type: str = "covale", ) -> set[str]: + """ + Parse covalant dictionary for a given ligand and its neighbours. + + Parameters + ---------- + all_covalent_dict : dict[str, list[tuple[str, str]]] + All covalent links as defined by mmcif annotations + ligand_asym_id : str + ligand assymetric identification string + neighboring_asym_ids : set[str] + set of neighbour assymetric identification strings + link_type : str, optional + covalent linkage type in dictionary, by default "covale", + options include: + "covale": actual covalent linkage + "metalc": other dative bond, eg. metal-ligand dative bond + "hydrogc": strong hydorogen bonding of nucleic acid + + Returns + ------- + set[str] + set of covalent linkages in the entry between the ligand and its neighbours + + Notes + ----- + For the purpose of covalent annotations, we only consider "covale". + """ covalent_linkages = set() if link_type in all_covalent_dict: for link1, link2 in all_covalent_dict[link_type]: @@ -217,6 +269,9 @@ def pdbize( edi.SetChainDescription(chain, original_chain.description) edi.SetChainType(chain, original_chain.type) name_mapping[original_name] = final_name + for residue in entity.residues: + if len(residue.name) > 3: + edi.RenameResidue(residue, residue.name[:3]) edi.UpdateICS() return entity, name_mapping diff --git a/src/plinder/data/utils/annotations/ligand_utils.py b/src/plinder/data/utils/annotations/ligand_utils.py index a5ccff60..e30bac07 100644 --- a/src/plinder/data/utils/annotations/ligand_utils.py +++ b/src/plinder/data/utils/annotations/ligand_utils.py @@ -30,7 +30,9 @@ run_plip_on_split_structure, ) from plinder.data.utils.annotations.protein_utils import Chain -from plinder.data.utils.annotations.rdkit_utils import set_smiles_from_ligand_ost +from plinder.data.utils.annotations.rdkit_utils import ( + set_smiles_from_ligand_ost, +) from plinder.data.utils.annotations.utils import DocBaseModel # TODO: replace above with below @@ -668,12 +670,21 @@ def annotate_interface_gaps_per_chain( def validate_chain_residue(obj: dict[str, ty.Any]) -> dict[str, ty.Any]: clean = {} for k, v in obj.items(): - key = tuple(k.split(",")) if isinstance(k, str) else k + if isinstance(k, str): + if "," in k: + key: ty.Any = tuple(k.split(",")) + else: + try: + key = int(k) + except ValueError: + key = k + else: + key = k if isinstance(v, dict): clean[key] = validate_chain_residue(v) else: clean[key] = v - return clean # type: ignore + return clean CrystalContacts = ty.Annotated[ @@ -842,7 +853,7 @@ class Ligand(DocBaseModel): ) crystal_contacts: CrystalContacts = Field( default_factory=dict, - description="__Dictionary of {instance}.{chain} to residue number to set of interacting crystal contacts", + description="__Dictionary of {chain} to residue number to set of interacting crystal contacts", ) waters: dict[str, list[int]] = Field( default_factory=dict, @@ -1005,27 +1016,24 @@ def from_pli( data_dir : Path, optional location of plinder root """ - global \ - COFACTORS, \ - ARTIFACTS, \ - LIST_OF_CCD_SYNONYMS, \ - CCD_SYNONYMS_DICT, \ - KINASE_INHIBITORS, \ - BINDING_AFFINITY - if LIST_OF_CCD_SYNONYMS is None or CCD_SYNONYMS_DICT is None: - if data_dir is None: - raise ValueError( - "data_dir must be provided if CCD_SYNONYMS_DICT or LIST_OF_CCD_SYNONYMS is None" - ) - LIST_OF_CCD_SYNONYMS, CCD_SYNONYMS_DICT = get_ccd_synonyms(data_dir) - if COFACTORS is None: - COFACTORS = parse_cofactors(data_dir) - if ARTIFACTS is None: - ARTIFACTS = parse_artifacts() - if KINASE_INHIBITORS is None: - KINASE_INHIBITORS = parse_kinase_inhibitors(data_dir) - if BINDING_AFFINITY is None: - BINDING_AFFINITY = get_binding_affinity(data_dir) + if data_dir is not None: + global \ + COFACTORS, \ + ARTIFACTS, \ + LIST_OF_CCD_SYNONYMS, \ + CCD_SYNONYMS_DICT, \ + KINASE_INHIBITORS, \ + BINDING_AFFINITY + if LIST_OF_CCD_SYNONYMS is None or CCD_SYNONYMS_DICT is None: + LIST_OF_CCD_SYNONYMS, CCD_SYNONYMS_DICT = get_ccd_synonyms(data_dir) + if COFACTORS is None: + COFACTORS = parse_cofactors(data_dir) + if ARTIFACTS is None: + ARTIFACTS = parse_artifacts() + if KINASE_INHIBITORS is None: + KINASE_INHIBITORS = parse_kinase_inhibitors(data_dir) + if BINDING_AFFINITY is None: + BINDING_AFFINITY = get_binding_affinity(data_dir) ligand_instance_chain = f"{ligand_instance}.{ligand_chain.asym_id}" residue_selection = " or ".join(f"rnum={rnum}" for rnum in residue_numbers) ligand_selection = f"cname={mol.QueryQuoteName(ligand_instance_chain)} and ({residue_selection})" @@ -1153,10 +1161,11 @@ def from_pli( ligand.waters[plip_chain_mapping[plip_chain]].append(resnum) # add rdkit properties and type assignments ligand.set_rdkit() - # set is_artifact and is_cofactor and is_other - ligand.identify_artifacts_cofactors_and_other() - # unique code parsing! - ligand.unique_ccd_code = get_unique_ccd_longname(ligand.ccd_code) + if data_dir is not None: + # set is_artifact and is_cofactor and is_other + ligand.identify_artifacts_cofactors_and_other() + # unique code parsing! + ligand.unique_ccd_code = get_unique_ccd_longname(ligand.ccd_code) return ligand @@ -1245,21 +1254,50 @@ def pocket_residues(self) -> dict[str, dict[int, str]]: residues[chain][residue] = "interacting" return residues - def get_pocket_residues_set(self) -> set[tuple[str, int]]: - pocket_residues_set = set() + def get_pocket_residues_set(self) -> dict[tuple[str, int], set[str]]: + """ + Get a dict of pocket residues in the format (chain_id, residue_number) + mapping to biounit instance set + """ + pocket_residues_set = defaultdict(set) for chain in self.pocket_residues: for residue_number in self.pocket_residues[chain]: - pocket_residues_set.add((chain.split(".")[1], residue_number)) + pocket_residues_set[(chain.split(".")[1], residue_number)].add( + chain.split(".")[0] + ) return pocket_residues_set - def set_crystal_contacts( - self, crystal_contacts: dict[tuple[str, int], set[int]] + def label_crystal_contacts( + self, + symmetry_mate_contacts: dict[ + tuple[str, int], dict[tuple[str, int], dict[int, set[int]]] + ], ) -> None: - # exclude contacts from neighboring residues in same biounit + """ + Label ligand contacts to chains that are not part of the biounit. + """ + crystal_contacts: dict[tuple[str, int], set[int]] = defaultdict(set[int]) + + # get contacts from neigchboring chain residues within the biounit pocket_residues = self.get_pocket_residues_set() - self.crystal_contacts = { - x: y for x, y in crystal_contacts.items() if x not in pocket_residues - } + + for residue_number in self.residue_numbers: + # get all inter-chain contacts for a given ligand + contacts = symmetry_mate_contacts.get( + (self.asym_id, residue_number), dict() + ) + for x, y in contacts.items(): + # x is a tuple rec (chain_id, residue_number) + # y is a dict of ligand atom_id : {image_idx} - set of symmetry operations + num_crystal_image_contacts = len(y.values()) + # if detected contacts have more images than contact instances in the biounit pocket + # then we assume that this is a crystal contact with a symmetry mate + if num_crystal_image_contacts > len(pocket_residues.get(x, set())): + # on the edge cases it may not be clear which atom is in contact with the symmetry mate, thus better to store all? + for atom_id, image_idx in y.items(): + crystal_contacts[x] |= {atom_id} + # set crystal contacts + self.crystal_contacts = crystal_contacts @cached_property def num_crystal_contacted_residues(self) -> int: @@ -1464,7 +1502,7 @@ def format_residues( Returns ------- - List of residues in the format "__" + List of residues in the format "___" dict[str, list[str]] """ if residue_type == "interacting": @@ -1476,7 +1514,7 @@ def format_residues( _, chain = instance_chain.split(".") for residue_number in residues[instance_chain]: res.append( - f"{instance_chain}_{residue_number}_{chains[chain].residues[residue_number].index}" + f"{instance_chain}_{residue_number}_{chains[chain].residues[residue_number].index}_{chains[chain].residues[residue_number].auth_number}" ) # TODO: move some of this logic to Residue return {f"ligand_{residue_type}_residues": res} diff --git a/src/plinder/data/utils/annotations/rdkit_utils.py b/src/plinder/data/utils/annotations/rdkit_utils.py index e92fd99e..17ffa1c1 100644 --- a/src/plinder/data/utils/annotations/rdkit_utils.py +++ b/src/plinder/data/utils/annotations/rdkit_utils.py @@ -36,6 +36,9 @@ def ligand_ost_ent_to_rdkit_mol( edi = ent.EditXCS(omol.BUFFERED_EDIT) for i, chain in enumerate(ent.GetChainList()): edi.RenameChain(chain, f"{new_chains[i]}") + for residue in ent.residues: + if len(residue.name) > 3: + edi.RenameResidue(residue, residue.name[:3]) edi.UpdateICS() pdbstring = io.EntityToPDBStr(ent).strip() @@ -136,7 +139,11 @@ def set_smiles_from_ligand_ost(ent: omol.EntityHandle) -> str: "set_smiles_from_ligand_ost: CCD smiles could not be loaded by rdkit, moving to fix" ) rdkit_mol = ligand_ost_ent_to_rdkit_mol(ent) - return str(Chem.MolToSmiles(rdkit_mol)) + try: + return str(Chem.MolToSmiles(rdkit_mol)) + except Exception as e: + LOG.error(f"set_smiles_from_ligand_ost: {e}") + return "None" def set_smiles_from_ligand_ost_v2(ent: omol.EntityHandle) -> tuple[str, str]: diff --git a/src/plinder/data/utils/annotations/save_utils.py b/src/plinder/data/utils/annotations/save_utils.py index 8e2757cb..76502cee 100644 --- a/src/plinder/data/utils/annotations/save_utils.py +++ b/src/plinder/data/utils/annotations/save_utils.py @@ -35,6 +35,8 @@ def save_ligands( rdkit_mol = ligand_ost_ent_to_rdkit_mol( ligand_ost, smiles, num_unresolved_heavy_atoms or 0 ) + if rdkit_mol is None: + continue rdkit_mol.SetProp("_Name", chain) with Chem.SDWriter(str(Path(output_folder) / f"{chain}.sdf")) as w: w.write(rdkit_mol) diff --git a/src/plinder/eval/docking/utils.py b/src/plinder/eval/docking/utils.py index b2793999..0df18878 100644 --- a/src/plinder/eval/docking/utils.py +++ b/src/plinder/eval/docking/utils.py @@ -365,32 +365,11 @@ def calculate_ligand_scores(self) -> None: mol_cond=self.model.receptor_file, full_report=self.score_posebusters_full_report, ).to_dict() - # the assumption of key is prepended by ost, eg. '00001_1.D' or '00001_6YYO_Q1K_BBB_323' - key = ( - str(ligand_class.sdf_file), - "_".join(chain_name.split("_")[1:]), - ) - try: - ligand_class.posebusters = { - k: v[key] for k, v in result_dict.items() - } - except KeyError: - try: - # posebusters default when no name is present in SDF - key = (str(ligand_class.sdf_file), "mol_at_pos_0") - ligand_class.posebusters = { - k: v[key] for k, v in result_dict.items() - } - except KeyError: - # this should not be the case as it should be handled - key = ( - str(ligand_class.sdf_file), - ligand_class.sdf_file.stem, - ) - ligand_class.posebusters = { - k: v[key] for k, v in result_dict.items() - } - # print(f"key used {key}") + # Extract the key directly from the result dict (format varies by posebusters version) + key = next(iter(next(iter(result_dict.values())).keys())) + ligand_class.posebusters = { + k: v[key] for k, v in result_dict.items() + } if ligand_class.protein_chain_mapping is not None: assigned_model.add(chain_name) assigned_target.add( diff --git a/tests/conftest.py b/tests/conftest.py index 97452b67..e21de4c4 100644 --- a/tests/conftest.py +++ b/tests/conftest.py @@ -687,6296 +687,29 @@ def write_plinder_mount(monkeypatch, tmp_path): @pytest.fixture(autouse=True) def mock_ccd_lookups(monkeypatch): + from plinder.data.utils.annotations.ligand_utils import sort_ccd_codes + + data = json.loads((test_asset_fp / "ccd_lookups.json").read_text()) + synonyms = [set(s) for s in data["ccd_synonyms"]] monkeypatch.setattr( "plinder.data.utils.annotations.ligand_utils.LIST_OF_CCD_SYNONYMS", - [ - {"B1F", "B2F"}, - {"OY5", "OY8"}, - {"N1B", "4LA"}, - {"C2H", "ETD"}, - {"FMT", "CBX"}, - {"NFO", "NFB"}, - {"MBR", "B4M"}, - {"PGH", "PGC"}, - {"BXA", "BRM"}, - {"2PL", "PGA"}, - {"CRY", "GOL"}, - {"VKN", "YLL"}, - {"VDW", "0P0", "GTT"}, - {"AKG", "2OG"}, - {"GGL", "GLU"}, - {"FGA", "DGL"}, - {"ACA", "AHA"}, - {"GCG", "TS3"}, - {"HPG", "PDO"}, - {"148", "BTB"}, - {"EDO", "EGL"}, - {"PIG", "PGE"}, - {"P2K", "P6G"}, - {"SEA", "DHL"}, - {"BME", "SEO"}, - {"CS0", "OCY"}, - {"DHN", "AA4"}, - {"ABK", "FKI"}, - {"ASP", "IAS"}, - {"PAS", "PHD", "ASQ"}, - {"SER", "SEG"}, - {"BTC", "FCY", "CYS"}, - {"CAY", "CCS"}, - {"CSO", "CEA"}, - {"CSE", "SEC"}, - {"ICT", "ICI"}, - {"GLR", "KGR"}, - {"GAL", "GLB"}, - {"G4S", "GSA"}, - {"Z4Y", "TWG"}, - {"GS4", "SGC", "GSD"}, - {"SGN", "YJM"}, - {"AGC", "GLC"}, - {"ADG", "TOA"}, - {"NT2", "GU4"}, - {"L1L", "GP1"}, - {"BFP", "FBP"}, - {"I8Z", "I9X"}, - {"HSU", "BDR"}, - {"RDP", "R1P"}, - {"HNP", "H5P"}, - {"DSP", "DAS"}, - {"DMR", "MLT"}, - {"3PG", "MP3"}, - {"PAG", "2PG"}, - {"GPH", "GPO", "0AL"}, - {"R51", "R52"}, - {"PA4", "IDG"}, - {"KPI", "MCL"}, - {"EUG", "H7Y"}, - {"2H3", "CBU", "INS"}, - {"I6P", "IHP", "KGN"}, - {"GUR", "GLL"}, - {"0AU", "IU"}, - {"GCD", "DGC"}, - {"CYL", "ACI", "CMN"}, - {"TZA", "ACZ"}, - {"LC", "0C"}, - {"C", "C25", "C5P"}, - {"0U", "LHU"}, - {"2AU", "U2N"}, - {"U", "U25", "U5P"}, - {"U37", "T31"}, - {"S4U", "4SU"}, - {"PH2", "HHP"}, - {"PCA", "5HP", "PCC"}, - {"HAC", "ALC"}, - {"CHG", "CUC"}, - {"H2U", "DHU"}, - {"DOX", "DIO"}, - {"DXD", "DXN"}, - {"ORP", "D1P"}, - {"C32", "CBR"}, - {"I5C", "C38"}, - {"5IU", "5IT"}, - {"DCM", "DC"}, - {"C7S", "C7R"}, - {"DU", "UMP"}, - {"IGU", "0UH"}, - {"B1P", "AAB"}, - {"MNM", "NOZ"}, - {"NOJ", "DNJ"}, - {"TSO", "TSA", "BAR"}, - {"UYA", "0AZ"}, - {"DFC", "0DC"}, - {"HSZ", "XYP"}, - {"XYB", "BXP"}, - {"DDM", "DMJ"}, - {"FLH", "FOR"}, - {"PVL", "MIE"}, - {"LIN", "AAE"}, - {"3NK", "LL8"}, - {"CHH", "NWB"}, - {"GCM", "GLM", "F3V"}, - {"CNM", "ACM"}, - {"1ZT", "SC2"}, - {"YYR", "RTV"}, - {"SIA", "SI2", "NAN"}, - {"7BN", "7BO"}, - {"16G", "0AT"}, - {"NAG", "HSR"}, - {"1NA", "MAG"}, - {"NGL", "ASG"}, - {"5G0", "OGN"}, - {"TYL", "NNS"}, - {"ACY", "CM", "CBM"}, - {"CKC", "LYM"}, - {"OTB", "BOC"}, - {"BUG", "TBG", "HV5"}, - {"ISB", "ALQ"}, - {"FPG", "F3P"}, - {"UIC", "GRL"}, - {"CLE", "NLW"}, - {"LEP", "0FA"}, - {"YLV", "YM1"}, - {"YKA", "YKD"}, - {"YKY", "YL7"}, - {"YMD", "YMG"}, - {"YMS", "YMV"}, - {"Y8Y", "Y91"}, - {"Y51", "Y71"}, - {"Y7G", "Y4P"}, - {"YLD", "YLJ"}, - {"YKS", "YKV"}, - {"OLE", "1LU"}, - {"XAO", "GCL"}, - {"HMP", "HMI"}, - {"PLH", "HAP"}, - {"PLU", "PLE"}, - {"BAT", "DSX"}, - {"CCK", "ATW"}, - {"IPA", "IOH"}, - {"ISP", "MIP"}, - {"VME", "0AA"}, - {"CPV", "VAS"}, - {"961", "395"}, - {"HIE", "E0G"}, - {"MQ7", "7MQ"}, - {"REA", "3KV"}, - {"RAW", "ECH"}, - {"45H", "45D"}, - {"DRB", "LRB"}, - {"RFB", "RFA"}, - {"5PY", "T36"}, - {"LCH", "LCC"}, - {"DRT", "0DT"}, - {"HDP", "XTR"}, - {"T0N", "T0Q"}, - {"NYM", "T37"}, - {"TMP", "DT", "T"}, - {"THP", "PTP"}, - {"PST", "TS"}, - {"5MU", "RT"}, - {"U18", "F89"}, - {"BJ5", "0UE"}, - {"4JU", "2MH"}, - {"MCB", "ACE", "ACU"}, - {"YI2", "5YI"}, - {"CL1", "CL2"}, - {"CBG", "PNL"}, - {"NBU", "BUT", "SBU"}, - {"NP6", "BA4"}, - {"YMY", "YN1"}, - {"YMM", "YMJ"}, - {"PEI", "LEA"}, - {"CRC", "DKA"}, - {"LAU", "DAO"}, - {"PLM", "FAT"}, - {"3PH", "2SP"}, - {"QEH", "LP3"}, - {"C8E", "OTE"}, - {"OLA", "OLI"}, - {"HQ", "HQO"}, - {"13H", "243"}, - {"LYW", "EJM"}, - {"1ZD", "2NC"}, - {"0AM", "0SP"}, - {"2PI", "RON", "NVA", "BTA"}, - {"EOX", "EOH", "OHE"}, - {"P3G", "6JZ"}, - {"XL1", "SCC"}, - {"ITU", "SEU"}, - {"1NI", "LP2", "LP1"}, - {"ABA", "AB7"}, - {"CHC", "IU6"}, - {"DCI", "MBA"}, - {"0EZ", "PI6"}, - {"INY", "CRP"}, - {"T0M", "EMT"}, - {"NET", "E4N"}, - {"F22", "HXA"}, - {"GXJ", "I0E"}, - {"PYJ", "N2B"}, - {"NC", "NME"}, - {"MLY", "TRG"}, - {"R5A", "R5B"}, - {"3MU", "UR3"}, - {"VSB", "VSE"}, - {"PTC", "AY0"}, - {"M4C", "4OC"}, - {"SAR", "MGY"}, - {"YNM", "N9K"}, - {"A34", "6MC", "6MA", "6MT"}, - {"A35", "A40"}, - {"6OO", "OKQ"}, - {"A2M", "0AV", "A39"}, - {"MMA", "MAM"}, - {"MGA", "MBG"}, - {"G32", "6OG"}, - {"1CR", "0CR"}, - {"3DQ", "9ZT"}, - {"ROL", "4RR", "4SR"}, - {"1IS", "1IR"}, - {"GB", "PPM"}, - {"577", "IIM"}, - {"CYM", "SMC"}, - {"K7J", "0ZO"}, - {"PIA", "AYG"}, - {"CRW", "MDO"}, - {"YKP", "YKM"}, - {"WLD", "WH7"}, - {"PGO", "PGQ"}, - {"HBL", "HBI"}, - {"BH4", "THB", "H4B"}, - {"98", "986"}, - {"PYL", "PYH"}, - {"JRC", "JQL"}, - {"KOL", "MER"}, - {"1GL", "BRI"}, - {"6CT", "T32"}, - {"MEP", "T23"}, - {"AGL", "RV7"}, - {"G6D", "GLW"}, - {"ARE", "5SA"}, - {"DDB", "MDA"}, - {"53P", "5P8", "QB4"}, - {"STO", "STU"}, - {"INH", "8MI"}, - {"DLA", "LAC"}, - {"AMV", "MMR"}, - {"DHO", "DXC"}, - {"HP3", "PGR"}, - {"HPB", "PR0"}, - {"TRB", "TB9"}, - {"RAA", "RAM"}, - {"MFU", "MFA"}, - {"FUL", "AFL"}, - {"SAA", "APG"}, - {"OET", "ETH"}, - {"HGC", "MMC"}, - {"POC", "PC"}, - {"MOT", "COE"}, - {"SOM", "MPS"}, - {"TTH", "GER"}, - {"TBM", "TMB"}, - {"PDL", "PP3"}, - {"PLA", "AMA"}, - {"THQ", "TZP"}, - {"RIC", "RBZ"}, - {"MDI", "N0U"}, - {"MJQ", "6LX"}, - {"RNY", "AQZ"}, - {"267", "263"}, - {"NEV", "NVP", "NIV"}, - {"PYD", "YF1"}, - {"G33", "8MG"}, - {"0SN", "88N"}, - {"7CP", "MB0"}, - {"HIC", "MH1", "NEM"}, - {"HDZ", "TFH"}, - {"QTR", "OXO", "HOH", "DIS", "O", "OX", "MTO"}, - {"FEO", "F2O"}, - {"O2", "OXY"}, - {"2MO", "MM4"}, - {"PI", "IPS"}, - {"S", "H2S"}, - {"BRO", "BR"}, - {"IDS", "2SI"}, - {"BHD", "DOH"}, - {"UEV", "I7P"}, - {"CLO", "CL"}, - {"FLO", "F"}, - {"MH6", "SRI"}, - {"672", "Q72"}, - {"YJC", "424"}, - {"1MA", "MAD"}, - {"IDO", "IOD"}, - {"NH4", "NGN"}, - {"NMO", "NO"}, - {"SUL", "SO4"}, - {"HYD", "OH"}, - {"B51", "WCC"}, - {"ZN", "ZN2"}, - {"FIB", "IBF"}, - {"PGS", "SPG"}, - {"ANE", "ADE"}, - {"PCQ", "NEW"}, - {"EGG", "KDH"}, - {"G1Z", "G1T"}, - {"B7D", "TRU"}, - {"P5P", "PR5"}, - {"9HE", "KS1"}, - {"DHY", "HAA"}, - {"TY3", "DAH"}, - {"LNR", "LT4"}, - {"NAH", "NAD"}, - {"MTY", "EHP"}, - {"PIX", "TF6"}, - {"CSY", "GYS"}, - {"FA", "FOL"}, - {"TYS", "STY"}, - {"YAP", "69X"}, - {"CBP", "345"}, - {"GHP", "DGH", "NTY"}, - {"CR2", "CQR"}, - {"WAK", "WB8"}, - {"KSB", "QHL"}, - {"BPC", "BP", "BAP"}, - {"6AB", "BE2"}, - {"L0H", "L0F"}, - {"BEZ", "BOX"}, - {"FSL", "F9V"}, - {"PPY", "1PY"}, - {"P6S", "BGG"}, - {"CBZ", "BZO"}, - {"PMS", "IOX"}, - {"PHM", "PCS"}, - {"LLA", "LOF", "HFA"}, - {"TPH", "HPH"}, - {"PUK", "FRF"}, - {"0AC", "FOG"}, - {"638", "XV6"}, - {"BIC", "MOL"}, - {"D8W", "3DB"}, - {"PGY", "PG9"}, - {"119", "P4P"}, - {"86Q", "DRG"}, - {"89E", "LIG"}, - {"GPR", "CYP"}, - {"URY", "K0I"}, - {"TRP", "LTR"}, - {"V7F", "V70"}, - {"QNC", "QND"}, - {"0TN", "RKP"}, - {"QX", "QUI"}, - {"AC4", "AMZ"}, - {"D5M", "DA"}, - {"A", "AMP"}, - {"0DG", "DFG"}, - {"LG", "0G"}, - {"DCG", "DGP", "DG"}, - {"DI", "OIP"}, - {"5GP", "G25", "G", "CPG"}, - {"IMP", "I"}, - {"GTO", "GCP"}, - {"GNP", "GTN"}, - ], + synonyms, ) monkeypatch.setattr( "plinder.data.utils.annotations.ligand_utils.CCD_SYNONYMS_DICT", - { - "B1F": "B1F", - "B2F": "B1F", - "OY5": "OY5", - "OY8": "OY5", - "4LA": "N1B", - "N1B": "N1B", - "C2H": "C2H", - "ETD": "C2H", - "CBX": "CBX", - "FMT": "CBX", - "NFB": "NFB", - "NFO": "NFB", - "B4M": "B4M", - "MBR": "B4M", - "PGC": "PGC", - "PGH": "PGC", - "BRM": "BRM", - "BXA": "BRM", - "2PL": "PGA", - "PGA": "PGA", - "CRY": "CRY", - "GOL": "CRY", - "VKN": "VKN", - "YLL": "VKN", - "0P0": "GTT", - "GTT": "GTT", - "VDW": "GTT", - "2OG": "AKG", - "AKG": "AKG", - "GGL": "GGL", - "GLU": "GGL", - "DGL": "DGL", - "FGA": "DGL", - "ACA": "ACA", - "AHA": "ACA", - "GCG": "GCG", - "TS3": "GCG", - "HPG": "HPG", - "PDO": "HPG", - "148": "BTB", - "BTB": "BTB", - "EDO": "EDO", - "EGL": "EDO", - "PGE": "PGE", - "PIG": "PGE", - "P2K": "P2K", - "P6G": "P2K", - "DHL": "DHL", - "SEA": "DHL", - "BME": "BME", - "SEO": "BME", - "CS0": "CS0", - "OCY": "CS0", - "AA4": "AA4", - "DHN": "AA4", - "ABK": "ABK", - "FKI": "ABK", - "ASP": "ASP", - "IAS": "ASP", - "ASQ": "ASQ", - "PAS": "ASQ", - "PHD": "ASQ", - "SEG": "SEG", - "SER": "SEG", - "BTC": "BTC", - "CYS": "BTC", - "FCY": "BTC", - "CAY": "CAY", - "CCS": "CAY", - "CEA": "CEA", - "CSO": "CEA", - "CSE": "CSE", - "SEC": "CSE", - "ICI": "ICI", - "ICT": "ICI", - "GLR": "GLR", - "KGR": "GLR", - "GAL": "GAL", - "GLB": "GAL", - "G4S": "G4S", - "GSA": "G4S", - "TWG": "TWG", - "Z4Y": "TWG", - "GS4": "GS4", - "GSD": "GS4", - "SGC": "GS4", - "SGN": "SGN", - "YJM": "SGN", - "AGC": "AGC", - "GLC": "AGC", - "ADG": "ADG", - "TOA": "ADG", - "GU4": "GU4", - "NT2": "GU4", - "GP1": "GP1", - "L1L": "GP1", - "BFP": "BFP", - "FBP": "BFP", - "I8Z": "I8Z", - "I9X": "I8Z", - "BDR": "BDR", - "HSU": "BDR", - "R1P": "R1P", - "RDP": "R1P", - "H5P": "H5P", - "HNP": "H5P", - "DAS": "DAS", - "DSP": "DAS", - "DMR": "DMR", - "MLT": "DMR", - "3PG": "MP3", - "MP3": "MP3", - "2PG": "PAG", - "PAG": "PAG", - "0AL": "GPH", - "GPH": "GPH", - "GPO": "GPH", - "R51": "R51", - "R52": "R51", - "IDG": "IDG", - "PA4": "IDG", - "KPI": "KPI", - "MCL": "KPI", - "EUG": "EUG", - "H7Y": "EUG", - "2H3": "CBU", - "CBU": "CBU", - "INS": "CBU", - "I6P": "I6P", - "IHP": "I6P", - "KGN": "I6P", - "GLL": "GLL", - "GUR": "GLL", - "0AU": "IU", - "IU": "IU", - "DGC": "DGC", - "GCD": "DGC", - "ACI": "ACI", - "CMN": "ACI", - "CYL": "ACI", - "ACZ": "ACZ", - "TZA": "ACZ", - "0C": "LC", - "LC": "LC", - "C": "C25", - "C25": "C25", - "C5P": "C25", - "0U": "LHU", - "LHU": "LHU", - "2AU": "U2N", - "U2N": "U2N", - "U": "U25", - "U25": "U25", - "U5P": "U25", - "T31": "T31", - "U37": "T31", - "4SU": "S4U", - "S4U": "S4U", - "HHP": "HHP", - "PH2": "HHP", - "5HP": "PCA", - "PCA": "PCA", - "PCC": "PCA", - "ALC": "ALC", - "HAC": "ALC", - "CHG": "CHG", - "CUC": "CHG", - "DHU": "DHU", - "H2U": "DHU", - "DIO": "DIO", - "DOX": "DIO", - "DXD": "DXD", - "DXN": "DXD", - "D1P": "D1P", - "ORP": "D1P", - "C32": "C32", - "CBR": "C32", - "C38": "C38", - "I5C": "C38", - "5IT": "5IT", - "5IU": "5IT", - "DC": "DCM", - "DCM": "DCM", - "C7R": "C7R", - "C7S": "C7R", - "DU": "UMP", - "UMP": "UMP", - "0UH": "IGU", - "IGU": "IGU", - "AAB": "AAB", - "B1P": "AAB", - "MNM": "MNM", - "NOZ": "MNM", - "DNJ": "DNJ", - "NOJ": "DNJ", - "BAR": "BAR", - "TSA": "BAR", - "TSO": "BAR", - "0AZ": "UYA", - "UYA": "UYA", - "0DC": "DFC", - "DFC": "DFC", - "HSZ": "HSZ", - "XYP": "HSZ", - "BXP": "BXP", - "XYB": "BXP", - "DDM": "DDM", - "DMJ": "DDM", - "FLH": "FLH", - "FOR": "FLH", - "MIE": "MIE", - "PVL": "MIE", - "AAE": "AAE", - "LIN": "AAE", - "3NK": "LL8", - "LL8": "LL8", - "CHH": "CHH", - "NWB": "CHH", - "F3V": "F3V", - "GCM": "F3V", - "GLM": "F3V", - "ACM": "ACM", - "CNM": "ACM", - "1ZT": "SC2", - "SC2": "SC2", - "RTV": "RTV", - "YYR": "RTV", - "NAN": "NAN", - "SI2": "NAN", - "SIA": "NAN", - "7BN": "7BN", - "7BO": "7BN", - "0AT": "0AT", - "16G": "0AT", - "HSR": "HSR", - "NAG": "HSR", - "1NA": "MAG", - "MAG": "MAG", - "ASG": "ASG", - "NGL": "ASG", - "5G0": "OGN", - "OGN": "OGN", - "NNS": "NNS", - "TYL": "NNS", - "ACY": "ACY", - "CBM": "ACY", - "CM": "ACY", - "CKC": "CKC", - "LYM": "CKC", - "BOC": "BOC", - "OTB": "BOC", - "BUG": "BUG", - "HV5": "BUG", - "TBG": "BUG", - "ALQ": "ALQ", - "ISB": "ALQ", - "F3P": "F3P", - "FPG": "F3P", - "GRL": "GRL", - "UIC": "GRL", - "CLE": "CLE", - "NLW": "CLE", - "0FA": "LEP", - "LEP": "LEP", - "YLV": "YLV", - "YM1": "YLV", - "YKA": "YKA", - "YKD": "YKA", - "YKY": "YKY", - "YL7": "YKY", - "YMD": "YMD", - "YMG": "YMD", - "YMS": "YMS", - "YMV": "YMS", - "Y8Y": "Y8Y", - "Y91": "Y8Y", - "Y51": "Y51", - "Y71": "Y51", - "Y4P": "Y4P", - "Y7G": "Y4P", - "YLD": "YLD", - "YLJ": "YLD", - "YKS": "YKS", - "YKV": "YKS", - "1LU": "OLE", - "OLE": "OLE", - "GCL": "GCL", - "XAO": "GCL", - "HMI": "HMI", - "HMP": "HMI", - "HAP": "HAP", - "PLH": "HAP", - "PLE": "PLE", - "PLU": "PLE", - "BAT": "BAT", - "DSX": "BAT", - "ATW": "ATW", - "CCK": "ATW", - "IOH": "IOH", - "IPA": "IOH", - "ISP": "ISP", - "MIP": "ISP", - "0AA": "VME", - "VME": "VME", - "CPV": "CPV", - "VAS": "CPV", - "395": "395", - "961": "395", - "E0G": "E0G", - "HIE": "E0G", - "7MQ": "MQ7", - "MQ7": "MQ7", - "3KV": "REA", - "REA": "REA", - "ECH": "ECH", - "RAW": "ECH", - "45D": "45D", - "45H": "45D", - "DRB": "DRB", - "LRB": "DRB", - "RFA": "RFA", - "RFB": "RFA", - "5PY": "T36", - "T36": "T36", - "LCC": "LCC", - "LCH": "LCC", - "0DT": "DRT", - "DRT": "DRT", - "HDP": "HDP", - "XTR": "HDP", - "T0N": "T0N", - "T0Q": "T0N", - "NYM": "NYM", - "T37": "NYM", - "DT": "TMP", - "T": "TMP", - "TMP": "TMP", - "PTP": "PTP", - "THP": "PTP", - "PST": "PST", - "TS": "PST", - "5MU": "RT", - "RT": "RT", - "F89": "F89", - "U18": "F89", - "0UE": "BJ5", - "BJ5": "BJ5", - "2MH": "2MH", - "4JU": "2MH", - "ACE": "ACE", - "ACU": "ACE", - "MCB": "ACE", - "5YI": "YI2", - "YI2": "YI2", - "CL1": "CL1", - "CL2": "CL1", - "CBG": "CBG", - "PNL": "CBG", - "BUT": "BUT", - "NBU": "BUT", - "SBU": "BUT", - "BA4": "BA4", - "NP6": "BA4", - "YMY": "YMY", - "YN1": "YMY", - "YMJ": "YMJ", - "YMM": "YMJ", - "LEA": "LEA", - "PEI": "LEA", - "CRC": "CRC", - "DKA": "CRC", - "DAO": "DAO", - "LAU": "DAO", - "FAT": "FAT", - "PLM": "FAT", - "2SP": "2SP", - "3PH": "2SP", - "LP3": "LP3", - "QEH": "LP3", - "C8E": "C8E", - "OTE": "C8E", - "OLA": "OLA", - "OLI": "OLA", - "HQ": "HQO", - "HQO": "HQO", - "13H": "13H", - "243": "13H", - "EJM": "EJM", - "LYW": "EJM", - "1ZD": "1ZD", - "2NC": "1ZD", - "0AM": "0AM", - "0SP": "0AM", - "2PI": "BTA", - "BTA": "BTA", - "NVA": "BTA", - "RON": "BTA", - "EOH": "EOH", - "EOX": "EOH", - "OHE": "EOH", - "6JZ": "P3G", - "P3G": "P3G", - "SCC": "SCC", - "XL1": "SCC", - "ITU": "ITU", - "SEU": "ITU", - "1NI": "LP1", - "LP1": "LP1", - "LP2": "LP1", - "AB7": "AB7", - "ABA": "AB7", - "CHC": "CHC", - "IU6": "CHC", - "DCI": "DCI", - "MBA": "DCI", - "0EZ": "PI6", - "PI6": "PI6", - "CRP": "CRP", - "INY": "CRP", - "EMT": "EMT", - "T0M": "EMT", - "E4N": "E4N", - "NET": "E4N", - "F22": "F22", - "HXA": "F22", - "GXJ": "GXJ", - "I0E": "GXJ", - "N2B": "N2B", - "PYJ": "N2B", - "NC": "NME", - "NME": "NME", - "MLY": "MLY", - "TRG": "MLY", - "R5A": "R5A", - "R5B": "R5A", - "3MU": "UR3", - "UR3": "UR3", - "VSB": "VSB", - "VSE": "VSB", - "AY0": "AY0", - "PTC": "AY0", - "4OC": "M4C", - "M4C": "M4C", - "MGY": "MGY", - "SAR": "MGY", - "N9K": "N9K", - "YNM": "N9K", - "6MA": "A34", - "6MC": "A34", - "6MT": "A34", - "A34": "A34", - "A35": "A35", - "A40": "A35", - "6OO": "OKQ", - "OKQ": "OKQ", - "0AV": "A2M", - "A2M": "A2M", - "A39": "A2M", - "MAM": "MAM", - "MMA": "MAM", - "MBG": "MBG", - "MGA": "MBG", - "6OG": "G32", - "G32": "G32", - "0CR": "0CR", - "1CR": "0CR", - "3DQ": "3DQ", - "9ZT": "3DQ", - "4RR": "ROL", - "4SR": "ROL", - "ROL": "ROL", - "1IR": "1IR", - "1IS": "1IR", - "GB": "PPM", - "PPM": "PPM", - "577": "IIM", - "IIM": "IIM", - "CYM": "CYM", - "SMC": "CYM", - "0ZO": "K7J", - "K7J": "K7J", - "AYG": "AYG", - "PIA": "AYG", - "CRW": "CRW", - "MDO": "CRW", - "YKM": "YKM", - "YKP": "YKM", - "WH7": "WH7", - "WLD": "WH7", - "PGO": "PGO", - "PGQ": "PGO", - "HBI": "HBI", - "HBL": "HBI", - "BH4": "BH4", - "H4B": "BH4", - "THB": "BH4", - "98": "986", - "986": "986", - "PYH": "PYH", - "PYL": "PYH", - "JQL": "JQL", - "JRC": "JQL", - "KOL": "KOL", - "MER": "KOL", - "1GL": "BRI", - "BRI": "BRI", - "6CT": "T32", - "T32": "T32", - "MEP": "MEP", - "T23": "MEP", - "AGL": "AGL", - "RV7": "AGL", - "G6D": "G6D", - "GLW": "G6D", - "5SA": "ARE", - "ARE": "ARE", - "DDB": "DDB", - "MDA": "DDB", - "53P": "QB4", - "5P8": "QB4", - "QB4": "QB4", - "STO": "STO", - "STU": "STO", - "8MI": "INH", - "INH": "INH", - "DLA": "DLA", - "LAC": "DLA", - "AMV": "AMV", - "MMR": "AMV", - "DHO": "DHO", - "DXC": "DHO", - "HP3": "HP3", - "PGR": "HP3", - "HPB": "HPB", - "PR0": "HPB", - "TB9": "TB9", - "TRB": "TB9", - "RAA": "RAA", - "RAM": "RAA", - "MFA": "MFA", - "MFU": "MFA", - "AFL": "AFL", - "FUL": "AFL", - "APG": "APG", - "SAA": "APG", - "ETH": "ETH", - "OET": "ETH", - "HGC": "HGC", - "MMC": "HGC", - "PC": "POC", - "POC": "POC", - "COE": "COE", - "MOT": "COE", - "MPS": "MPS", - "SOM": "MPS", - "GER": "GER", - "TTH": "GER", - "TBM": "TBM", - "TMB": "TBM", - "PDL": "PDL", - "PP3": "PDL", - "AMA": "AMA", - "PLA": "AMA", - "THQ": "THQ", - "TZP": "THQ", - "RBZ": "RBZ", - "RIC": "RBZ", - "MDI": "MDI", - "N0U": "MDI", - "6LX": "MJQ", - "MJQ": "MJQ", - "AQZ": "AQZ", - "RNY": "AQZ", - "263": "263", - "267": "263", - "NEV": "NEV", - "NIV": "NEV", - "NVP": "NEV", - "PYD": "PYD", - "YF1": "PYD", - "8MG": "G33", - "G33": "G33", - "0SN": "0SN", - "88N": "0SN", - "7CP": "MB0", - "MB0": "MB0", - "HIC": "HIC", - "MH1": "HIC", - "NEM": "HIC", - "HDZ": "HDZ", - "TFH": "HDZ", - "DIS": "DIS", - "HOH": "DIS", - "MTO": "DIS", - "O": "DIS", - "OX": "DIS", - "OXO": "DIS", - "QTR": "DIS", - "F2O": "F2O", - "FEO": "F2O", - "O2": "OXY", - "OXY": "OXY", - "2MO": "MM4", - "MM4": "MM4", - "IPS": "IPS", - "PI": "IPS", - "H2S": "H2S", - "S": "H2S", - "BR": "BRO", - "BRO": "BRO", - "2SI": "IDS", - "IDS": "IDS", - "BHD": "BHD", - "DOH": "BHD", - "I7P": "I7P", - "UEV": "I7P", - "CL": "CLO", - "CLO": "CLO", - "F": "FLO", - "FLO": "FLO", - "MH6": "MH6", - "SRI": "MH6", - "672": "Q72", - "Q72": "Q72", - "424": "YJC", - "YJC": "YJC", - "1MA": "MAD", - "MAD": "MAD", - "IDO": "IDO", - "IOD": "IDO", - "NGN": "NGN", - "NH4": "NGN", - "NMO": "NMO", - "NO": "NMO", - "SO4": "SO4", - "SUL": "SO4", - "HYD": "HYD", - "OH": "HYD", - "B51": "B51", - "WCC": "B51", - "ZN": "ZN2", - "ZN2": "ZN2", - "FIB": "FIB", - "IBF": "FIB", - "PGS": "PGS", - "SPG": "PGS", - "ADE": "ADE", - "ANE": "ADE", - "NEW": "NEW", - "PCQ": "NEW", - "EGG": "EGG", - "KDH": "EGG", - "G1T": "G1T", - "G1Z": "G1T", - "B7D": "B7D", - "TRU": "B7D", - "P5P": "P5P", - "PR5": "P5P", - "9HE": "KS1", - "KS1": "KS1", - "DHY": "DHY", - "HAA": "DHY", - "DAH": "DAH", - "TY3": "DAH", - "LNR": "LNR", - "LT4": "LNR", - "NAD": "NAD", - "NAH": "NAD", - "EHP": "EHP", - "MTY": "EHP", - "PIX": "PIX", - "TF6": "PIX", - "CSY": "CSY", - "GYS": "CSY", - "FA": "FOL", - "FOL": "FOL", - "STY": "STY", - "TYS": "STY", - "69X": "YAP", - "YAP": "YAP", - "345": "CBP", - "CBP": "CBP", - "DGH": "DGH", - "GHP": "DGH", - "NTY": "DGH", - "CQR": "CQR", - "CR2": "CQR", - "WAK": "WAK", - "WB8": "WAK", - "KSB": "KSB", - "QHL": "KSB", - "BAP": "BAP", - "BP": "BAP", - "BPC": "BAP", - "6AB": "BE2", - "BE2": "BE2", - "L0F": "L0F", - "L0H": "L0F", - "BEZ": "BEZ", - "BOX": "BEZ", - "F9V": "F9V", - "FSL": "F9V", - "1PY": "PPY", - "PPY": "PPY", - "BGG": "BGG", - "P6S": "BGG", - "BZO": "BZO", - "CBZ": "BZO", - "IOX": "IOX", - "PMS": "IOX", - "PCS": "PCS", - "PHM": "PCS", - "HFA": "HFA", - "LLA": "HFA", - "LOF": "HFA", - "HPH": "HPH", - "TPH": "HPH", - "FRF": "FRF", - "PUK": "FRF", - "0AC": "FOG", - "FOG": "FOG", - "638": "XV6", - "XV6": "XV6", - "BIC": "BIC", - "MOL": "BIC", - "3DB": "D8W", - "D8W": "D8W", - "PG9": "PG9", - "PGY": "PG9", - "119": "P4P", - "P4P": "P4P", - "86Q": "DRG", - "DRG": "DRG", - "89E": "LIG", - "LIG": "LIG", - "CYP": "CYP", - "GPR": "CYP", - "K0I": "K0I", - "URY": "K0I", - "LTR": "LTR", - "TRP": "LTR", - "V70": "V70", - "V7F": "V70", - "QNC": "QNC", - "QND": "QNC", - "0TN": "RKP", - "RKP": "RKP", - "QUI": "QUI", - "QX": "QUI", - "AC4": "AC4", - "AMZ": "AC4", - "D5M": "D5M", - "DA": "D5M", - "A": "AMP", - "AMP": "AMP", - "0DG": "DFG", - "DFG": "DFG", - "0G": "LG", - "LG": "LG", - "DCG": "DCG", - "DG": "DCG", - "DGP": "DCG", - "DI": "OIP", - "OIP": "OIP", - "5GP": "CPG", - "CPG": "CPG", - "G": "CPG", - "G25": "CPG", - "I": "IMP", - "IMP": "IMP", - "GCP": "GCP", - "GTO": "GCP", - "GNP": "GNP", - "GTN": "GNP", - }, + {code: sort_ccd_codes(list(s))[0] for s in synonyms for code in s}, ) monkeypatch.setattr( "plinder.data.utils.annotations.ligand_utils.COFACTORS", - { - "JM2", - "PCD", - "CAA", - "NCA", - "HEM", - "0XU", - "RGE", - "NAX", - "LPB", - "AMX", - "TXP", - "SCO", - "MQ7", - "FNS", - "MQ9", - "FMN", - "PLR", - "CHL", - "WSD", - "TD7", - "TPQ", - "SDX", - "GVX", - "TS5", - "EB4", - "ENA", - "NDE", - "1CZ", - "2MD", - "CYP", - "1JO", - "PP9", - "GS8", - "TDM", - "C2F", - "NPL", - "UP3", - "8EL", - "AMP", - "4LU", - "1DG", - "DCQ", - "2CP", - "GBP", - "NAQ", - "HDE", - "62X", - "NDP", - "CCH", - "TD6", - "SCD", - "TXD", - "UU3", - "M6T", - "3HC", - "SFD", - "NHM", - "66S", - "TMP", - "ODP", - "3CP", - "CLA", - "CL7", - "1TY", - "NBD", - "C", - "COM", - "T6F", - "MSS", - "1CV", - "MCN", - "ASC", - "SA8", - "WCA", - "S1T", - "GF5", - "IRF", - "CPG", - "MCA", - "36A", - "ISW", - "GIP", - "TYQ", - "PMP", - "CL2", - "FCG", - "UTP", - "1R4", - "NAP", - "HDD", - "FDE", - "GTX", - "CDP", - "CA8", - "1U0", - "76K", - "GGC", - "AGQ", - "XP9", - "FON", - "ZEM", - "1YJ", - "PQN", - "76J", - "IBG", - "UEG", - "5GP", - "1VU", - "3H9", - "LPM", - "BCA", - "VWW", - "FAS", - "DPM", - "3CD", - "NA0", - "TTP", - "6J4", - "DT", - "48T", - "GTS", - "4LS", - "TDT", - "HMG", - "THG", - "TDL", - "6NR", - "FSH", - "G27", - "TGG", - "THV", - "BYC", - "2TP", - "FA8", - "EN0", - "HXC", - "2NE", - "T1G", - "DU", - "7AP", - "THM", - "TZD", - "N1T", - "PAU", - "ADP", - "DLZ", - "A3D", - "COB", - "ECH", - "TYY", - "MTV", - "7HE", - "29P", - "HAS", - "G", - "3AA", - "UMP", - "BTN", - "H4B", - "YNC", - "CA5", - "C5P", - "0ET", - "CA3", - "C25", - "TP8", - "FOZ", - "CNC", - "TC6", - "DDH", - "4CA", - "MNH", - "U", - "76L", - "G25", - "JM7", - "FDA", - "A", - "07D", - "P2Q", - "NHW", - "COT", - "4YP", - "DTB", - "GSN", - "COO", - "ZNH", - "BPH", - "NPW", - "COH", - "GDS", - "L9X", - "DG1", - "PAD", - "MNR", - "GDN", - "SX0", - None, - "NDC", - "BCL", - "COW", - "TXZ", - "8EF", - "WWF", - "MGD", - "PZP", - "GRA", - "HTL", - "FRE", - "0HH", - "FAA", - "TP7", - "AT5", - "BYG", - "SRM", - "MDE", - "EAD", - "TPU", - "4CO", - "P3Q", - "TRQ", - "GMP", - "M43", - "LEE", - "CTP", - "PXL", - "ABY", - "SAH", - "HIF", - "GTY", - "TT8", - "SMM", - "COF", - "ZBF", - "FAM", - "T", - "COA", - "8ID", - "GSF", - "76M", - "DN4", - "FAD", - "5AU", - "0WD", - "COZ", - "CRW", - "76H", - "SND", - "FNR", - "UDP", - "BHS", - "6V0", - "CYC", - "ATP", - "BYT", - "EPY", - "THF", - "GSH", - "MQE", - "COY", - "HAX", - "1JP", - "37H", - "NBP", - "ZID", - "MFN", - "SOP", - "TPP", - "PDP", - "PQQ", - "GPR", - "GTP", - "CA6", - "DHE", - "SHT", - "F42", - "0Y1", - "MTQ", - "H2B", - "6FA", - "6HE", - "THB", - "CP3", - "SFG", - "CAJ", - "DCC", - "TD9", - "8PA", - "NDO", - "THY", - "N3T", - "MH0", - "FMI", - "AP0", - "GBI", - "UQ1", - "H4M", - "LZ6", - "FCX", - "NAJ", - "MDO", - "FAE", - "S0N", - "HBI", - "SAD", - "TDK", - "TDW", - "18W", - "BIO", - "UQ2", - "1C4", - "GPS", - "FED", - "NHQ", - "TQQ", - "XP8", - "2TY", - "G9R", - "ACO", - "TDP", - "UAH", - "U5P", - "ESG", - "FAO", - "7MQ", - "CND", - "D7K", - "8FL", - "CO6", - "PUB", - "HCC", - "SAE", - "AHE", - "4IK", - "Y7Y", - "488", - "TAP", - "RAW", - "DCA", - "BOB", - "NAI", - "TXE", - "HEC", - "BCR", - "MYA", - "HBL", - "P1H", - "01A", - "UQ6", - "ATA", - "NHD", - "B12", - "FAB", - "1HA", - "MCD", - "TYD", - "SAM", - "8JD", - "PLQ", - "GTD", - "UP2", - "0UM", - "NOP", - "GBX", - "COD", - "THD", - "NAH", - "NAE", - "CMC", - "4AB", - "SCA", - "8EO", - "ZOZ", - "BH4", - "OXK", - "MLC", - "LPA", - "ICY", - "GSM", - "HEA", - "1CP", - "1XE", - "GNB", - "JM5", - "XAX", - "P5F", - "H4Z", - "EEM", - "GDP", - "PLP", - "FFO", - "SH0", - "PNY", - "5GY", - "MQ8", - "EQ3", - "CO8", - "HSC", - "BSJ", - "MTE", - "CIC", - "SE8", - "PEB", - "TPZ", - "GTB", - "0AF", - "0Y2", - "R1T", - "MPL", - "01K", - "U25", - "CL0", - "HQE", - "RBF", - "FYN", - "CMX", - "THW", - "HAG", - "MEF", - "CL1", - "PXP", - "TAD", - "T5X", - "N01", - "1TP", - "TD8", - "MMP", - "K15", - "NAD", - "RFL", - "BTI", - "BCO", - "GSO", - "UQ5", - "GSB", - "0HG", - "3GC", - "NMX", - "THH", - "HEB", - "PNS", - "TOQ", - "F43", - "8Q1", - "8Z2", - "CAO", - "TPW", - "BCB", - "0Y0", - "LNC", - }, + set(data["cofactors"]), ) monkeypatch.setattr( "plinder.data.utils.annotations.ligand_utils.ARTIFACTS", - { - "OTE", - "BNG", - "GYF", - "MES", - "HEX", - "PX2", - "2OP", - "UMQ", - "1PS", - "SIN", - "VX", - "C8E", - "ETF", - "GOL", - "CAC", - "O4B", - "MBO", - "9YU", - "PC8", - "OGA", - "PVO", - "CN6", - "PGR", - "DDR", - "AGA", - "33O", - "B3H", - "MPD", - "DTU", - "P03", - "CXS", - "QLB", - "KDO", - "3HR", - "DIO", - "THE", - "RG1", - "F09", - "HTG", - "SP5", - "BOX", - "CN3", - "L1P", - "DOX", - "MPO", - "TAM", - "1PG", - "543", - "7PE", - "FW5", - "PE5", - "TAR", - "LMT", - "DHJ", - "PX4", - "FJO", - "P25", - "P33", - "HT3", - "Y69", - "TRD", - "DMF", - "DTT", - "P4G", - "MRD", - "PGO", - "144", - "PGE", - "TCN", - "MYR", - "MAC", - "LMU", - "L3P", - "P22", - "TCE", - "BET", - "HTO", - "ETX", - "BAM", - "DTD", - "DAO", - "TRS", - "CE1", - "LUT", - "TOE", - "PEG", - "HP3", - "1PE", - "7PH", - "TLA", - "PE4", - "DKA", - "P2K", - "PA8", - "1EM", - "7I7", - "P6G", - "IPH", - "BE7", - "QGT", - "L4P", - "9JE", - "DMR", - "BDN", - "TMA", - "I6P", - "DD9", - "MC3", - "XPE", - "OP2", - "SOG", - "PG0", - "E4N", - "PD7", - "DET", - "NBN", - "PE7", - "CIT", - "HZA", - "N8E", - "BEN", - "32M", - "LI1", - "DR6", - "D12", - "P4C", - "LIN", - "BU1", - "C10", - "D22", - "CRC", - "2NV", - "CHT", - "CXE", - "XP4", - "PE8", - "DDQ", - "15P", - "L2P", - "PTD", - "148", - "EAP", - "12P", - "NHE", - "TBU", - "PIG", - "MGY", - "HSH", - "IHS", - "LAU", - "HAI", - "13P", - "PG5", - "DHB", - "FTT", - "3V3", - "SAR", - "ICI", - "3PG", - "PUT", - "LAC", - "SGM", - "NET", - "D1D", - "PG6", - "7PG", - "2JC", - "2DP", - "PQE", - "LMR", - "CPS", - "IOX", - "HSG", - "BXC", - "EPE", - "02U", - "MB3", - "L2C", - "DTV", - "BOG", - "NEX", - "PE3", - "PHQ", - "PE6", - "CE9", - "C14", - "CD4", - "SRT", - "GLV", - "BHG", - "I3C", - "DLA", - "ICT", - "TAU", - "RWB", - "LDA", - "PGF", - "7E8", - "HCA", - "QJE", - "7E9", - "BTB", - "SPZ", - "HED", - "PGQ", - "P1O", - "TEA", - "IMD", - "MP3", - "JDJ", - "HTH", - "V1J", - "6JZ", - "AUC", - "DEP", - "M2M", - "PG8", - "MBN", - "CAQ", - "B4T", - "HAE", - "P15", - "UND", - "9FO", - "DMI", - "XPA", - "PEP", - "TFA", - "HEZ", - "MLA", - "DRE", - "PEX", - "AKR", - "XAT", - "PLC", - "SPD", - "MLT", - "F4R", - "SPM", - "BGL", - "AAE", - "AE3", - "P3G", - "SPJ", - "CRY", - "PPI", - "PEU", - "MAE", - "PHB", - "DPG", - "B4X", - "OCT", - "ETE", - "BNZ", - "IHP", - "PMS", - "B3P", - "PQ9", - "3SY", - "AE4", - "CAD", - "2PE", - "OES", - "GVT", - "K12", - "PG4", - "EEE", - "SQU", - "D10", - "BCN", - "7N5", - "90A", - "ME2", - "KGN", - "16P", - "MLI", - "6PE", - "P4K", - "BEZ", - "PL9", - "HP6", - }, + set(data["artifacts"]), ) monkeypatch.setattr( "plinder.data.utils.annotations.ligand_utils.KINASE_INHIBITORS", - { - "4DF", - "2NR", - "36R", - "XJ0", - "S4Q", - "8BQ", - "79Y", - "ZOI", - "EBD", - "1JI", - "7AE", - "07Z", - "PZ4", - "0WM", - "JRQ", - "YD7", - "RMF", - "MZJ", - "LM4", - "XZN", - "3EY", - "GW7", - "469", - "2KD", - "H52", - "Z67", - "C5Z", - "P30", - "29Z", - "Y5D", - "EK9", - "YIR", - "MT3", - "1UK", - "74K", - "A9R", - "N4D", - "OJ5", - "78W", - "SBC", - "6UY", - "AWK", - "8GR", - "I2O", - "AAX", - "SU2", - "9XA", - "1EH", - "HK0", - "Q17", - "30K", - "I0A", - "6HH", - "E5J", - "T2O", - "FW3", - "8E1", - "5X4", - "EUX", - "MMH", - "L10", - "47X", - "SIQ", - "YEE", - "UNJ", - "ZRK", - "AMP", - "46C", - "R5D", - "86K", - "HCW", - "Q1Y", - "YIX", - "7GV", - "BI1", - "C6F", - "7DZ", - "8BS", - "6NP", - "C2V", - "4JZ", - "AFE", - "Q9B", - "4MK", - "NN5", - "0HD", - "X85", - "SCW", - "A3K", - "L09", - "2QT", - "FS8", - "1UJ", - "SS6", - "X6G", - "0VG", - "B7V", - "XL5", - "QX1", - "8FX", - "7VT", - "C85", - "63N", - "AVZ", - "IFC", - "4UT", - "6PF", - "DXM", - "7ZC", - "5BN", - "ZY6", - "R4V", - "AP2", - "UIW", - "54Z", - "F8I", - "OQM", - "C52", - "4VD", - "DBQ", - "1D1", - "TV4", - "NU6", - "EA7", - "X6B", - "KZJ", - "3UI", - "R73", - "6NC", - "0B0", - "SQM", - "VEH", - "X69", - "JGG", - "AFM", - "4RM", - "0JJ", - "6KC", - "1YZ", - "5JE", - "OOU", - "R1W", - "3QS", - "A8H", - "DO0", - "8UV", - "WI2", - "NBW", - "X40", - "CK9", - "J8S", - "2HW", - "85A", - "QUP", - "MHR", - "4CV", - "EZJ", - "P01", - "363", - "TID", - "CUR", - "EHB", - "S92", - "OQJ", - "Y8L", - "GUB", - "090", - "4Z8", - "28D", - "5W6", - "8GU", - "WB8", - "NQ2", - "J9D", - "I3K", - "1JC", - "QH1", - "EX9", - "13V", - "514", - "UT5", - "YQ2", - "4FT", - "P02", - "FB8", - "07J", - "JSN", - "SM6", - "X3V", - "FOI", - "6H3", - "60K", - "T3C", - "4ZB", - "J3H", - "T1T", - "HZ6", - "GCC", - "MTW", - "B4U", - "7HK", - "3BM", - "16X", - "50H", - "Z3A", - "LB4", - "74L", - "9IS", - "XPY", - "C87", - "ACK", - "5Y6", - "3RW", - "IXQ", - "1IJ", - "LIA", - "VFC", - "0K0", - "19A", - "5JG", - "HVH", - "H5R", - "QXW", - "E91", - "37Q", - "Y3L", - "YIS", - "YOR", - "JOZ", - "JSW", - "EVK", - "3GF", - "253", - "DLN", - "QP7", - "CX4", - "B4J", - "1CK", - "EDJ", - "P47", - "857", - "KA7", - "R6R", - "0F4", - "EMW", - "CKG", - "TJF", - "RO6", - "23D", - "319", - "FGE", - "TBK", - "NU5", - "547", - "70I", - "U0T", - "ASH", - "H8H", - "J3N", - "J6F", - "38M", - "L90", - "CGI", - "C75", - "6RF", - "8OV", - "2QV", - "19K", - "4W5", - "Z68", - "HUH", - "SVK", - "6QZ", - "4VQ", - "7TH", - "GYL", - "31Y", - "BR2", - "3Z2", - "NRA", - "ON6", - "K88", - "AXU", - "PIT", - "OWQ", - "D15", - "NJD", - "F4A", - "C4E", - "04Z", - "ZOQ", - "KSH", - "OY2", - "E0X", - "K0E", - "5GX", - "MWF", - "LZC", - "770", - "BNB", - "24Z", - "7AV", - "QI6", - "P49", - "4Q2", - "PY1", - "AGI", - "DJX", - "X6K", - "LOQ", - "YY7", - "MKP", - "IEA", - "Q2H", - "AGY", - "1LE", - "G6K", - "QQ2", - "BD2", - "I17", - "OOM", - "ACP", - "R74", - "NBK", - "N14", - "EXX", - "54G", - "A6Z", - "TXV", - "X01", - "5ZH", - "FLZ", - "3E4", - "IDZ", - "P31", - "8I1", - "14K", - "6Z2", - "E2O", - "QG5", - "GEN", - "SVQ", - "DW1", - "Z30", - "LIE", - "N9R", - "2OQ", - "2WJ", - "3WN", - "X7G", - "VZG", - "54J", - "4E3", - "KR8", - "QZ8", - "2M2", - "FPW", - "0CK", - "SM7", - "DF1", - "99Z", - "HVK", - "HK6", - "PDR", - "4T6", - "CD2", - "CG4", - "21Z", - "6BF", - "R7D", - "NL2", - "FZJ", - "JZH", - "3G5", - "SMH", - "LY4", - "T2A", - "RSW", - "V3S", - "92C", - "R4Y", - "N53", - "VGK", - "3ND", - "14S", - "9A6", - "NQB", - "0GW", - "UB6", - "N0V", - "26L", - "5TF", - "1RJ", - "027", - "0MY", - "HVQ", - "M0R", - "X86", - "KLP", - "1K2", - "ZRR", - "XGK", - "BA1", - "X19", - "5Q4", - "UOE", - "7GT", - "7GJ", - "06N", - "VJK", - "IQ6", - "A65", - "SWD", - "29L", - "8LN", - "K0B", - "CK7", - "N17", - "30E", - "7KF", - "AAZ", - "9D8", - "LWH", - "FQM", - "LU2", - "EQT", - "NIL", - "EJP", - "M97", - "4ST", - "C2J", - "DFZ", - "I6C", - "5XV", - "FH0", - "9HR", - "HET", - "0VN", - "X21", - "5SZ", - "DZC", - "YY4", - "RKO", - "FBY", - "446", - "RYU", - "0OP", - "ATU", - "2SC", - "10Z", - "5DN", - "3HK", - "IPK", - "622", - "8IQ", - "WFE", - "ZSB", - "L9M", - "F4G", - "MMG", - "G8E", - "MP6", - "ZRT", - "7G9", - "NAR", - "RXZ", - "877", - "3QH", - "P16", - "IM9", - "XW3", - "KDI", - "V55", - "H7C", - "RVH", - "362", - "5VC", - "UZD", - "K6Y", - "19R", - "OZ8", - "5U4", - "3YO", - "BRQ", - "77V", - "5YZ", - "D0A", - "KWD", - "SQ4", - "IE8", - "FSS", - "VZ2", - "BXJ", - "3P0", - "BWP", - "RO9", - "MJG", - "A6E", - "5OE", - "13K", - "R9B", - "GYQ", - "FER", - "JTQ", - "KC0", - "XZ9", - "WZZ", - "SFY", - "3DL", - "YXJ", - "F29", - "TOV", - "0SX", - "Y4O", - "A27", - "DZO", - "IM6", - "CKJ", - "O3E", - "9Y5", - "7QQ", - "L0M", - "7GB", - "RHZ", - "3NC", - "912", - "6V4", - "5IE", - "7M0", - "P37", - "DT2", - "ZRL", - "HYW", - "6DC", - "580", - "0BG", - "8FI", - "04G", - "E28", - "KRQ", - "4B0", - "FDW", - "POX", - "P5J", - "VGH", - "7X5", - "2C3", - "8DS", - "W39", - "GUQ", - "35F", - "ZZM", - "A5Z", - "HC4", - "36N", - "UC8", - "796", - "F8H", - "CKN", - "4T5", - "NR9", - "481", - "AD5", - "22T", - "GD9", - "8OK", - "HKK", - "3DK", - "B0K", - "R6H", - "JLC", - "4S3", - "596", - "UH3", - "38O", - "2R4", - "80U", - "8OT", - "M1J", - "6ID", - "0XG", - "KJD", - "M4G", - "0SO", - "URF", - "JKW", - "UU6", - "LDN", - "SO9", - "HVE", - "QWQ", - "T3U", - "222", - "P5V", - "JVD", - "LTY", - "L12", - "TVT", - "1TT", - "L4Y", - "VP7", - "31W", - "8OW", - "QZ2", - "ZOV", - "61Y", - "628", - "W2R", - "59U", - "614", - "65C", - "1HK", - "8X2", - "E3Z", - "QB8", - "SCE", - "0C5", - "LOK", - "0XH", - "8CC", - "L0Q", - "ITQ", - "TZX", - "4SB", - "390", - "J2V", - "QF8", - "K4W", - "C98", - "C96", - "ZD6", - "8GS", - "9XK", - "R6V", - "UJ3", - "H4K", - "35Z", - "86E", - "CJ5", - "1WY", - "VIN", - "IXH", - "G5D", - "6CY", - "4RJ", - "L91", - "30T", - "5Y8", - "3YV", - "C7Y", - "1R9", - "7EY", - "A7K", - "5XH", - "UCW", - "0TZ", - "FU6", - "7KD", - "215", - "SWN", - "6YD", - "WXV", - "LI8", - "37J", - "AK7", - "2BZ", - "RYA", - "WFY", - "0SW", - "RXE", - "YAM", - "9CT", - "3XL", - "4O7", - "9VS", - "GEZ", - "OOQ", - "M92", - "CCK", - "VEW", - "6UK", - "L7C", - "XZS", - "MH7", - "QS7", - "YPH", - "B5E", - "QFK", - "6P8", - "QDW", - "DTD", - "5BS", - "60O", - "679", - "UNW", - "P36", - "6JV", - "WYE", - "38P", - "ULY", - "J2M", - "CK1", - "3PS", - "9AJ", - "96Y", - "JMZ", - "0FK", - "W7W", - "02Z", - "VSB", - "CK3", - "O43", - "EBI", - "9JI", - "G4E", - "0Q2", - "BI9", - "G0K", - "5UY", - "8ET", - "WY3", - "V5U", - "M33", - "9FS", - "34I", - "3Q6", - "P5W", - "M19", - "S5E", - "7CS", - "4UQ", - "N5Q", - "706", - "TC0", - "KEP", - "QIG", - "HYK", - "KHH", - "JFS", - "V6E", - "66X", - "KJR", - "5E2", - "ME3", - "EVQ", - "0VF", - "7XU", - "25J", - "MMY", - "L1K", - "QMN", - "K11", - "S9H", - "N58", - "JNZ", - "QBB", - "5W9", - "66L", - "HJF", - "932", - "BVI", - "3RZ", - "1J5", - "467", - "4FJ", - "3JZ", - "0SQ", - "0C9", - "N99", - "71M", - "XU0", - "0Y4", - "B0R", - "OOS", - "B6N", - "O44", - "W4D", - "S4W", - "BXI", - "464", - "XAZ", - "BEN", - "L3G", - "6T2", - "US0", - "6GE", - "5DF", - "IRE", - "BFF", - "GHT", - "0FS", - "24N", - "EYI", - "14I", - "L64", - "430", - "30G", - "X14", - "718", - "90W", - "WZU", - "LWX", - "0C8", - "FCS", - "38Z", - "FZ9", - "P7B", - "ZS2", - "M3A", - "91E", - "KEY", - "W38", - "O23", - "DFY", - "JH8", - "6H4", - "GJG", - "A07", - "J8A", - "RNF", - "LI7", - "AW5", - "MQY", - "C72", - "L9N", - "IR2", - "2HB", - "KVC", - "NHU", - "FTU", - "L3Z", - "35W", - "FLJ", - "X2L", - "SYY", - "0S0", - "OQS", - "KE7", - "64M", - "X3S", - "UF8", - "3U1", - "FML", - "AQ4", - "QO7", - "HVB", - "O7I", - "C74", - "1HX", - "CUE", - "904", - "FZ8", - "AWF", - "751", - "IQU", - "P66", - "IQR", - "KSS", - "A5B", - "DVJ", - "5BM", - "1XZ", - "5ID", - "1V5", - "3Q2", - "B6J", - "R93", - "M9T", - "SWB", - "35X", - "3B3", - "YXD", - "I4M", - "NXI", - "R0X", - "F67", - "0SC", - "JRJ", - "N13", - "4VE", - "SQG", - "B1E", - "38W", - "AT8", - "C53", - "PVB", - "SQ7", - "CPB", - "AAV", - "HKN", - "8MZ", - "Q18", - "SQY", - "YO4", - "FE7", - "0V0", - "88Z", - "3C8", - "OZN", - "EZV", - "AZ7", - "E6Q", - "R85", - "ZZP", - "R28", - "5Y2", - "R1L", - "979", - "3YX", - "D6Q", - "QFO", - "KIH", - "8ZT", - "79T", - "BHO", - "LVU", - "FH3", - "VSA", - "7GX", - "5OQ", - "G93", - "Q7H", - "YK2", - "855", - "R1S", - "8MW", - "3DW", - "TJZ", - "112", - "8XN", - "DT1", - "QU6", - "437", - "X66", - "RP9", - "DFW", - "3VE", - "X8J", - "LZE", - "BZ9", - "7H4", - "9T6", - "SQK", - "N4F", - "1NP", - "77A", - "EZN", - "ESN", - "FP3", - "9KO", - "0OM", - "XHM", - "EQZ", - "627", - "SZW", - "74J", - "5CV", - "VY0", - "2GI", - "B5S", - "6XL", - "EAZ", - "E6T", - "T4X", - "R7O", - "Q8T", - "AM5", - "6SF", - "FPH", - "ZOP", - "609", - "ZGD", - "7IH", - "FAZ", - "T92", - "E46", - "JND", - "6DA", - "7HF", - "1UL", - "7Z0", - "3AM", - "LW3", - "RPW", - "4V9", - "A9W", - "6BB", - "R48", - "AS6", - "NVX", - "7GL", - "R70", - "H6W", - "M0Y", - "3Q4", - "0FR", - "SNJ", - "44X", - "094", - "WEJ", - "F7I", - "E2F", - "SRJ", - "MS9", - "29A", - "2X6", - "2PU", - "G6T", - "KEV", - "KQ7", - "A4B", - "S26", - "AK8", - "AU8", - "MW8", - "T20", - "3Q3", - "LHJ", - "NKJ", - "RUW", - "FC8", - "G4H", - "3EW", - "6FB", - "2RL", - "SQV", - "NW1", - "8XB", - "D5Q", - "VNS", - "QFV", - "IG3", - "6CD", - "WP1", - "P1E", - "BW1", - "OOV", - "0FN", - "26Z", - "ZXH", - "7X7", - "PUP", - "71G", - "VJZ", - "K4A", - "NK0", - "OV5", - "J0E", - "A58", - "3RC", - "75H", - "0TP", - "CK6", - "SVH", - "YT0", - "X88", - "RUI", - "03K", - "DYQ", - "55S", - "GXA", - "460", - "AWJ", - "NTQ", - "8N2", - "KHR", - "OT5", - "CG5", - "KJ8", - "L0C", - "H2K", - "VLV", - "IRD", - "6T5", - "3QX", - "SMY", - "1BQ", - "4S2", - "QMY", - "IC8", - "9IK", - "M0F", - "YRZ", - "67U", - "NM7", - "XIN", - "0FY", - "C9O", - "0RF", - "S4E", - "9I5", - "6ZK", - "6HL", - "KAV", - "EVR", - "LAJ", - "4W1", - "LCW", - "0JE", - "99J", - "4K7", - "41B", - "DF3", - "2A2", - "IQ7", - "G4Y", - "T7Z", - "NNN", - "8E8", - "8M1", - "59N", - "8QK", - "D6I", - "Y5G", - "3R0", - "3A3", - "M1O", - "F8B", - "BQR", - "LY2", - "07R", - "2W6", - "3X7", - "6YE", - "66K", - "JSB", - "LOE", - "YK1", - "0WN", - "0PF", - "3SC", - "8OR", - "F8M", - "H3E", - "5XG", - "504", - "QKG", - "304", - "U0K", - "4IH", - "AX7", - "LCI", - "Z62", - "B96", - "SYP", - "L20", - "KES", - "373", - "L2V", - "P79", - "EVC", - "91K", - "734", - "86H", - "LI3", - "E1B", - "KF4", - "XIT", - "X06", - "1QO", - "20K", - "9FV", - "17V", - "K9Y", - "LGX", - "1J6", - "01I", - "4OK", - "G4N", - "KLM", - "3C3", - "XBJ", - "G8N", - "ZZN", - "45R", - "746", - "RXT", - "18E", - "T95", - "LU8", - "6UM", - "07C", - "9K5", - "B5G", - "84R", - "HRA", - "OOY", - "C4F", - "06Z", - "0SS", - "FLY", - "KIN", - "J4M", - "ICQ", - "WKC", - "WQ6", - "RJI", - "KSF", - "UF4", - "G92", - "0X6", - "LWJ", - "X03", - "8PV", - "A4U", - "UWZ", - "E52", - "OG5", - "MB9", - "CT7", - "XXK", - "1E8", - "H5I", - "T3M", - "GR9", - "F3W", - "DL1", - "1BU", - "YM8", - "PQ5", - "2I8", - "919", - "0FO", - "RJZ", - "H99", - "0LI", - "X64", - "6V5", - "4S1", - "DTQ", - "HDU", - "R3L", - "9O5", - "TWH", - "XM1", - "LZN", - "953", - "AK1", - "98D", - "1C7", - "9Y8", - "JMM", - "7KV", - "90K", - "CJT", - "3Q1", - "P0F", - "KUY", - "0F5", - "OQ8", - "VX6", - "1LC", - "L0F", - "EMO", - "SU6", - "FJI", - "NKZ", - "2D2", - "HHB", - "324", - "1O5", - "K0N", - "EZQ", - "ZUQ", - "QJI", - "729", - "5H2", - "RMX", - "LB5", - "Z86", - "351", - "3T3", - "5Z5", - "889", - "8ZW", - "X73", - "H7U", - "3NU", - "L0G", - "OG8", - "6BJ", - "R24", - "FI4", - "A", - "0G1", - "E63", - "8BP", - "J0B", - "31L", - "FRV", - "N8O", - "VX3", - "Y3I", - "STV", - "JX4", - "VEK", - "534", - "X9F", - "2K5", - "G0N", - "G2G", - "VXY", - "5W2", - "I5S", - "79C", - "F92", - "X07", - "4DO", - "AFV", - "QYE", - "YOS", - "1IX", - "ED8", - "FP4", - "NVV", - "839", - "0UU", - "8DW", - "WAL", - "9LL", - "H8K", - "ZYS", - "RTX", - "77C", - "MUJ", - "8LY", - "SVM", - "FEW", - "DVO", - "R0O", - "GWH", - "4WG", - "FAR", - "BV9", - "R25", - "RBQ", - "40L", - "8GQ", - "C5I", - "7U5", - "M61", - "DJ8", - "W9D", - "8V4", - "8PR", - "QFB", - "1UO", - "3U9", - "3K3", - "M56", - "T0L", - "GK1", - "7KC", - "BH9", - "8N5", - "ST8", - "U55", - "ATP", - "4T9", - "BR9", - "R7S", - "NKB", - "FTZ", - "748", - "YQY", - "8DV", - "3Z4", - "MR9", - "ODJ", - "OFZ", - "JWY", - "85V", - "0XZ", - "ZZK", - "WTP", - "6A6", - "G7K", - "1BM", - "4RV", - "3S1", - "20Z", - "032", - "584", - "ZZO", - "LCB", - "5JZ", - "U4W", - "Z6V", - "W3N", - "0C3", - "Q6W", - "OS1", - "HK9", - "AP9", - "NF5", - "PD1", - "8QB", - "F8P", - "5N4", - "3R1", - "8UB", - "HMW", - "X9I", - "Q9G", - "4DK", - "Y49", - "OZU", - "0O7", - "N61", - "IDV", - "6HJ", - "GQL", - "I9W", - "KZQ", - "DXK", - "738", - "QR7", - "NS9", - "VGM", - "N9G", - "9ZP", - "Z48", - "9FC", - "ZB9", - "4QX", - "NRR", - "O8T", - "1B4", - "24R", - "XEZ", - "5SF", - "3Z5", - "KIM", - "QDZ", - "79R", - "Z92", - "PXN", - "LZB", - "U8P", - "5JR", - "7YG", - "HGW", - "0WC", - "Z46", - "5WF", - "6G2", - "N7C", - "7KW", - "60B", - "L7O", - "QWW", - "0MX", - "L7W", - "5I9", - "M59", - "CAQ", - "J67", - "6SL", - "GKB", - "5QS", - "TW2", - "242", - "634", - "MRA", - "9NQ", - "P48", - "7CE", - "9WG", - "T6Q", - "8OH", - "RSI", - "406", - "YM3", - "TFA", - "UNL", - "ZQV", - "W4A", - "8BM", - "74Q", - "9OO", - "RMM", - "IIW", - "O6X", - "3WH", - "CQ3", - "D37", - "J07", - "66T", - "X67", - "1SB", - "4DT", - "BI5", - "9YY", - "YA7", - "80C", - "ZWE", - "5HK", - "A3E", - "KBM", - "R09", - "AQG", - "8DY", - "N15", - "86G", - "O21", - "YR7", - "UM4", - "E4S", - "5P6", - "07S", - "LZ1", - "TQA", - "DZ6", - "SIX", - "76Z", - "74N", - "ODO", - "HEW", - "B4B", - "HDY", - "VL1", - "ZL1", - "I5R", - "L7R", - "1BK", - "L0N", - "3TI", - "L51", - "RW6", - "QQC", - "T75", - "5NW", - "7AU", - "TJW", - "69Z", - "KK8", - "EJS", - "AU2", - "4OR", - "0SJ", - "2O6", - "2VT", - "G7W", - "2IJ", - "EDB", - "6QH", - "9QK", - "057", - "S69", - "A0X", - "FXB", - "517", - "358", - "A42", - "1C8", - "AX0", - "OEB", - "DXH", - "61E", - "D0S", - "862", - "52P", - "87B", - "7MJ", - "ANP", - "0WB", - "5PB", - "RC8", - "L1E", - "4OQ", - "BIM", - "VRV", - "42Q", - "0ST", - "495", - "AQ8", - "DUK", - "S3N", - "RFG", - "NZ5", - "EK3", - "N97", - "FG9", - "4CK", - "ZZG", - "4RU", - "F1S", - "3FV", - "EJY", - "0KD", - "2YK", - "F82", - "N0U", - "287", - "SL0", - "FEF", - "Z0O", - "AQE", - "5XJ", - "OVC", - "A96", - "HK4", - "2VX", - "10N", - "8ZQ", - "KE8", - "7IK", - "7TZ", - "LQQ", - "H3R", - "E8V", - "8ZH", - "6QY", - "0YJ", - "JK1", - "QIV", - "X36", - "76C", - "GDH", - "U82", - "Z6P", - "F10", - "RPS", - "82B", - "1EL", - "NB3", - "XSE", - "KEX", - "W3R", - "A5H", - "A6W", - "DFS", - "1N1", - "QDE", - "IHH", - "AGS", - "M2B", - "X9B", - "L1Z", - "S4T", - "7HD", - "CQ8", - "X44", - "1CD", - "5S8", - "LBE", - "H88", - "ADZ", - "CDK", - "6F2", - "AV9", - "5QQ", - "G9B", - "AFK", - "GJD", - "N41", - "65L", - "PYZ", - "OG2", - "36Q", - "B9C", - "R6S", - "EUN", - "LVF", - "0C6", - "HH5", - "18K", - "LZ2", - "9YV", - "4P4", - "74H", - "YQB", - "KH8", - "5H5", - "SGV", - "ZIP", - "A82", - "Q6K", - "809", - "GXK", - "L1X", - "BYZ", - "AJR", - "V4Z", - "IC2", - "X9H", - "E57", - "4J7", - "Q7Z", - "IB5", - "EK4", - "LKG", - "G4V", - "AFU", - "G02", - "CXS", - "50Z", - "5MT", - "FI3", - "CT8", - "EKU", - "WBT", - "QFQ", - "V0G", - "IZA", - "RUY", - "WJV", - "891", - "1N6", - "0CI", - "9ES", - "NXP", - "5Q3", - "HV2", - "N7B", - "0RX", - "3DV", - "F0E", - "HFS", - "50F", - "QQ1", - "63M", - "OFW", - "0JK", - "6GY", - "39Z", - "QIH", - "647", - "CJM", - "WGK", - "3FX", - "2HK", - "97B", - "ZYR", - "XYW", - "279", - "NHJ", - "U32", - "SB4", - "0O8", - "QAR", - "SU1", - "JZO", - "AUG", - "D94", - "41A", - "H8Z", - "6V3", - "1AO", - "3D3", - "WPH", - "C1V", - "QMV", - "0K1", - "1RA", - "EDH", - "JHW", - "NVB", - "3WR", - "CVY", - "CIG", - "8FY", - "H7K", - "I47", - "R6P", - "5X1", - "N78", - "SN4", - "S91", - "6UF", - "6K4", - "WNK", - "29Y", - "OL2", - "S9A", - "EXF", - "0OO", - "ZFS", - "QRR", - "5Y7", - "65R", - "7GI", - "6AE", - "4LO", - "JK3", - "D4Z", - "HOW", - "50D", - "WQK", - "OJL", - "052", - "BI3", - "T0X", - "L6A", - "RU9", - "76A", - "0KF", - "63E", - "16W", - "D42", - "0OK", - "F4N", - "LC0", - "47W", - "CK8", - "900", - "EK2", - "ZZL", - "G8B", - "KI7", - "10K", - "SKI", - "C0N", - "4HZ", - "2TT", - "G1W", - "HHW", - "TZ1", - "2WK", - "EGJ", - "VO7", - "4Y0", - "VSF", - "72B", - "7G7", - "MIH", - "R61", - "45B", - "VSY", - "LHL", - "A98", - "WTJ", - "G0E", - "OWN", - "13L", - "ODH", - "2WE", - "306", - "W47", - "SW5", - "RI8", - "EQW", - "A1K", - "CQU", - "6S1", - "4QE", - "K9T", - "QYK", - "C07", - "ZO6", - "F88", - "YRA", - "A28", - "OD1", - "9YQ", - "KSR", - "6CB", - "N5U", - "FGF", - "4WD", - "3E8", - "63A", - "MS7", - "IEO", - "HBM", - "DFN", - "X8D", - "AY4", - "9YE", - "B8L", - "KZL", - "3Z6", - "S22", - "19P", - "X20", - "KGZ", - "VFS", - "B4W", - "4VF", - "46K", - "8X7", - "LN4", - "15T", - "XV0", - "7X8", - "048", - "GW8", - "WG1", - "HOK", - "3O0", - "TIY", - "YTX", - "LIB", - "BI4", - "AK5", - "SJL", - "3C9", - "CWT", - "CCX", - "MH4", - "KHE", - "MK2", - "03Z", - "8IL", - "934", - "OD4", - "TBN", - "79O", - "YM7", - "LZM", - "633", - "8EN", - "3T8", - "O8Q", - "KHC", - "0F9", - "01P", - "S8W", - "VEN", - "WGF", - "3O4", - "R0N", - "A4N", - "50Y", - "TK5", - "KQK", - "N3F", - "EKH", - "XFE", - "92P", - "FHX", - "1Y6", - "XK9", - "HB9", - "NJV", - "YFV", - "9IV", - "2NQ", - "V81", - "FMK", - "X96", - "MWL", - "KF1", - "9HB", - "3HN", - "SC9", - "SAV", - "0JH", - "SCJ", - "JL2", - "LS4", - "T8L", - "9Z2", - "04L", - "6P6", - "T3E", - "QD2", - "LO8", - "349", - "R78", - "DUI", - "RQ9", - "422", - "SLY", - "LNH", - "07U", - "SQP", - "F87", - "G4W", - "KZM", - "F6J", - "Q8B", - "DKG", - "80E", - "FZ5", - "N1A", - "LZ4", - "Z20", - "ML8", - "3RA", - "G97", - "J30", - "SW7", - "TO7", - "3OV", - "73Q", - "3OK", - "BXM", - "Y7W", - "537", - "QM2", - "DRG", - "L8I", - "A5Q", - "F18", - "X0A", - "22Z", - "6Q1", - "F46", - "QL7", - "34W", - "6A7", - "3DX", - "79D", - "4K4", - "6VK", - "88O", - "AUH", - "W8U", - "A3F", - "F4C", - "RVQ", - "UGX", - "LPZ", - "4KT", - "4MH", - "AYS", - "3YT", - "ESJ", - "3RT", - "Q8K", - "ZLE", - "EG7", - "HKQ", - "1M3", - "SD5", - "1PP", - "HKI", - "M5W", - "SWK", - "21O", - "207", - "A9E", - "U6S", - "XY3", - "AAK", - "JRE", - "SNB", - "19Q", - "8GV", - "6NB", - "519", - "0U0", - "91X", - "2C4", - "WQ2", - "3DC", - "9WU", - "54F", - "IQY", - "R2S", - "1G0", - "BGE", - "KZI", - "AIZ", - "70T", - "PP2", - "BD4", - "LZ9", - "IRG", - "ABQ", - "2WC", - "FS9", - "9Z4", - "39P", - "38G", - "ERZ", - "G6J", - "KWP", - "1DT", - "0WH", - "C5W", - "OL8", - "YCF", - "1HW", - "UES", - "5E5", - "FH5", - "UEX", - "F3Z", - "Y3O", - "N7K", - "D05", - "3V0", - "03P", - "S4Z", - "0NT", - "5WE", - "LXX", - "KRL", - "QRD", - "LZ3", - "6PV", - "SB2", - "1N3", - "BI2", - "SV5", - "UPX", - "N6Z", - "DF2", - "4DL", - "38R", - "62E", - "C9Z", - "3UR", - "3ZC", - "HQB", - "LI4", - "9WS", - "55E", - "CJQ", - "V04", - "9OF", - "FJ0", - "4KA", - "86L", - "8KF", - "ZXP", - "09H", - "WEG", - "8TN", - "J4B", - "LJF", - "73T", - "QXZ", - "SCQ", - "0JL", - "A6H", - "ZYQ", - "6U1", - "1LT", - "BYL", - "LYG", - "5B4", - "CK5", - "P06", - "7CU", - "3FF", - "HMD", - "SVJ", - "J27", - "JWN", - "OFG", - "CG9", - "507", - "PBU", - "M4P", - "YY9", - "RGY", - "SU7", - "JK2", - "58C", - "G62", - "7TW", - "0XF", - "42P", - "N92", - "400", - "A9B", - "F8S", - "G5X", - "8DK", - "VRU", - "XIP", - "G6I", - "3FN", - "42I", - "34L", - "8R7", - "ZO8", - "J60", - "XI2", - "0WR", - "S4K", - "99K", - "JZY", - "H96", - "OFT", - "W2P", - "RV6", - "WJ9", - "NBS", - "IH7", - "EU4", - "0SY", - "JZW", - "YFY", - "C5N", - "589", - "C1I", - "7XH", - "21I", - "C73", - "2HV", - "H3N", - "68R", - "KWT", - "XWA", - "0J9", - "044", - "66A", - "LVD", - "VZJ", - "32W", - "1P5", - "VVT", - "CKO", - "IIM", - "SMV", - "TQ1", - "W19", - "FCP", - "3NG", - "OKZ", - "50W", - "FQD", - "DWT", - "466", - "55U", - "S0L", - "ABJ", - "LH0", - "9XO", - "G6A", - "4L6", - "G54", - "O4B", - "P9K", - "D4Q", - "84P", - "N42", - "LCD", - "H0K", - "5W3", - "5Y4", - "50E", - "LKQ", - "5KW", - "0NF", - "ANK", - "5SC", - "SVE", - "KF6", - "GS3", - "XA0", - "0BQ", - "JBI", - "A7N", - "YY3", - "4QG", - "O92", - "H3Q", - "83P", - "RW4", - "O2K", - "R2E", - "P7C", - "8LU", - "UNE", - "KWY", - "HGK", - "34U", - "SM9", - "IWU", - "K82", - "RW3", - "X11", - "IE0", - "63K", - "SSY", - "63I", - "75E", - "E62", - "KCI", - "X9G", - "6T3", - "F62", - "292", - "NYX", - "FVC", - "27D", - "4H5", - "8QZ", - "4EF", - "A06", - "PDX", - "WCX", - "337", - "50J", - "LBB", - "WXQ", - "VM1", - "925", - "HB4", - "9I8", - "O4U", - "AY7", - "RKW", - "7AA", - "LIF", - "1IM", - "JYZ", - "45Q", - "6Z5", - "JWE", - "A53", - "5O4", - "PWU", - "SNV", - "SQ8", - "WF7", - "U0C", - "2TA", - "G5T", - "MDI", - "09J", - "ET8", - "8DJ", - "LI2", - "7LV", - "KSM", - "AK2", - "49J", - "KY9", - "F0H", - "5TL", - "91L", - "86C", - "TCE", - "RQS", - "K3R", - "3WA", - "OQ2", - "R4S", - "CQE", - "RR9", - "X8E", - "X3W", - "1JX", - "XK3", - "EKT", - "A7H", - "NPZ", - "EFP", - "6U7", - "9YS", - "8FU", - "X46", - "8QH", - "6TE", - "G5C", - "ADP", - "AM7", - "IGV", - "9N8", - "4HW", - "3IU", - "B4K", - "XTT", - "3I7", - "5B1", - "0T2", - "1P6", - "PZW", - "8R4", - "PZO", - "XL8", - "J88", - "I6P", - "VSH", - "6TP", - "NZ4", - "7O3", - "8N8", - "AJK", - "N1Q", - "5W8", - "5U3", - "KXY", - "PJC", - "P4N", - "BYU", - "50O", - "PG0", - "5O7", - "OKO", - "ESK", - "FMY", - "N96", - "1K3", - "05B", - "P38", - "107", - "6XT", - "12C", - "JZJ", - "DJW", - "5E6", - "RTJ", - "C92", - "DT4", - "BA0", - "NM8", - "PMU", - "X9P", - "31X", - "RSU", - "VS0", - "1BR", - "7L0", - "A9T", - "093", - "P7N", - "N3X", - "IV7", - "AUE", - "981", - "FYV", - "X3R", - "LTJ", - "TZ0", - "B8Z", - "K1H", - "HRM", - "84M", - "9TO", - "R6M", - "3LH", - "K8K", - "11K", - "92J", - "8NZ", - "J0P", - "65U", - "N1J", - "3SM", - "A4Q", - "VOY", - "EO5", - "NJ6", - "FMD", - "ZW3", - "5R1", - "24V", - "KK7", - "08Z", - "6OJ", - "P40", - "UGK", - "G4K", - "85S", - "PFY", - "BRY", - "C9R", - "XXF", - "IR1", - "HJ9", - "1SK", - "M5V", - "6ZF", - "1E0", - "V62", - "831", - "61U", - "LD5", - "ZRM", - "WXH", - "HBD", - "F9N", - "QX2", - "WZ8", - "EMU", - "8CG", - "54R", - "B6I", - "F48", - "NQ1", - "19E", - "HHQ", - "XTI", - "8D6", - "6S3", - "6SH", - "80H", - "1DR", - "9DB", - "F8Z", - "DG7", - "LO5", - "AWO", - "6SN", - "N5B", - "N6N", - "8ST", - "Q7Q", - "VK2", - "YDJ", - "LXG", - "Q7M", - "0WP", - "IE4", - "FKY", - "N9F", - "LGV", - "7GS", - "E2L", - "S19", - "6HF", - "9EM", - "W40", - "L87", - "1RO", - "RQU", - "H3K", - "RLC", - "3HQ", - "B97", - "L0P", - "P5O", - "OO7", - "49B", - "7GZ", - "P9J", - "H9K", - "GUK", - "D31", - "UUF", - "0JG", - "LN3", - "O0H", - "IXM", - "J2Y", - "0K6", - "DHC", - "CV4", - "3KZ", - "HUL", - "7X1", - "MFZ", - "7X6", - "AQT", - "N29", - "0XP", - "98A", - "1QG", - "WG8", - "34Y", - "7PY", - "1B5", - "46G", - "6UJ", - "KQE", - "4VC", - "GX3", - "X65", - "GS2", - "0G3", - "FMW", - "C0M", - "740", - "B5Z", - "CQW", - "A5W", - "90T", - "HO8", - "XUZ", - "GJ7", - "LB8", - "980", - "3EH", - "276", - "7GY", - "6SD", - "816", - "N9J", - "GDW", - "7KG", - "1OB", - "1RS", - "D1A", - "03Q", - "GOD", - "ATK", - "ER8", - "2VL", - "96M", - "KQZ", - "R7B", - "T1L", - "8QT", - "LZA", - "DT5", - "I1P", - "5O1", - "JZX", - "8OU", - "LSV", - "F1B", - "QGY", - "XKU", - "IDW", - "Z87", - "RK2", - "7IF", - "ZTV", - "1QN", - "CIY", - "OBY", - "AY3", - "4TW", - "FLS", - "KHD", - "54S", - "2K2", - "8ZK", - "5LK", - "994", - "HJK", - "18Z", - "Y8H", - "VVX", - "IJB", - "1GK", - "WPB", - "JHK", - "K81", - "6ZZ", - "6U2", - "0S9", - "D7D", - "2VU", - "WPX", - "DTJ", - "R6N", - "N82", - "1PU", - "R0T", - "A03", - "7IQ", - "FAV", - "O97", - "G41", - "W9X", - "EFQ", - "533", - "LCQ", - "31K", - "GDK", - "SLQ", - "3VD", - "6VM", - "1NX", - "X3Y", - "RNU", - "R5Y", - "BRK", - "QGR", - "0BY", - "KFD", - "VY1", - "5RC", - "530", - "QJZ", - "HSJ", - "B6Q", - "YEX", - "PFQ", - "SVD", - "57N", - "046", - "90Z", - "46A", - "R7P", - "JVE", - "3HJ", - "TSK", - "1J4", - "A5E", - "4T3", - "1KP", - "X7Y", - "B4Q", - "477", - "KKR", - "TSW", - "7XR", - "17G", - "X87", - "Z60", - "HKC", - "JVT", - "KA2", - "74O", - "KMP", - "19S", - "G98", - "FZO", - "F97", - "EYQ", - "I5G", - "SJV", - "0TB", - "XWW", - "1J3", - "AWX", - "OXW", - "ZS3", - "RQL", - "1BJ", - "6RG", - "8XK", - "M4I", - "L1W", - "0YO", - "N9L", - "4EL", - "GYW", - "6UE", - "B4V", - "T12", - "4CW", - "X3G", - "MT4", - "83H", - "JPZ", - "74F", - "QH9", - "AEQ", - "H7R", - "9JS", - "B6H", - "LW4", - "937", - "8MQ", - "LX9", - "79Q", - "9QT", - "0US", - "F4B", - "I85", - "QYW", - "0WA", - "199", - "3VC", - "KSC", - "4L7", - "6XP", - "799", - "KZP", - "MPZ", - "LUE", - "O9C", - "4RK", - "3QW", - "0F0", - "QT9", - "UIK", - "0OA", - "XVI", - "HVY", - "V5W", - "6CP", - "SR4", - "Z2M", - "QY2", - "FKT", - "0S8", - "6K2", - "K1B", - "6R0", - "N3O", - "6HK", - "AOW", - "4GF", - "JRT", - "82A", - "3JB", - "6YN", - "3SB", - "MFP", - "1AU", - "E0P", - "9ZB", - "456", - "IQO", - "VQE", - "OND", - "NX0", - "844", - "5N3", - "VBS", - "5WR", - "EK6", - "S03", - "62K", - "MFE", - "LQ5", - "OLO", - "4E2", - "YM5", - "DKI", - "L0D", - "A4T", - "CG7", - "WTI", - "JQW", - "X2M", - "UN4", - "1N9", - "RJ5", - "70W", - "91O", - "FCQ", - "EAQ", - "CK2", - "IHX", - "2TR", - "ELZ", - "CK4", - "1FN", - "8IW", - "0NR", - "7AJ", - "AHK", - "USF", - "MI5", - "KSE", - "039", - "7X3", - "8V7", - "5PW", - "LOT", - "4VZ", - "SOJ", - "GVP", - "37O", - "6N9", - "308", - "E2C", - "S4R", - "BPK", - "QTX", - "UJC", - "JVP", - "ZIG", - "V5J", - "2WF", - "QCT", - "QC0", - "JNF", - "PHU", - "QFE", - "EX4", - "8XE", - "X9S", - "55Y", - "TAK", - "ITI", - "VSE", - "AWR", - "H1N", - "F47", - "5QO", - "0SE", - "JGM", - "IRB", - "FKN", - "0VE", - "B5W", - "HGQ", - "YK7", - "B7W", - "U73", - "FE5", - "G4T", - "1PF", - "O17", - "CHU", - "0JF", - "X75", - "2V1", - "3UL", - "ZZQ", - "48B", - "U4N", - "2YE", - "LTI", - "NQ5", - "YB4", - "MVS", - "HY7", - "BWY", - "N8L", - "FU9", - "JYG", - "RXQ", - "O1K", - "TZY", - "0EI", - "AVK", - "04K", - "583", - "573", - "FKB", - "QBE", - "T77", - "4DN", - "RI9", - "KJ7", - "Q7K", - "M8Z", - "NKW", - "N4U", - "VTA", - "3K7", - "HDT", - "GJJ", - "FZC", - "4DQ", - "3FE", - "GIG", - "1VI", - "NB5", - "F4J", - "1M8", - "X5E", - "X3K", - "4TT", - "4QZ", - "V5T", - "HH8", - "3I6", - "106", - "I46", - "72L", - "YFS", - "2IE", - "F9J", - "35R", - "FWU", - "3Z1", - "MT8", - "7XO", - "UO5", - "5EZ", - "A25", - "PQA", - "9OL", - "Q8Q", - "VY4", - "992", - "6K5", - "971", - "B90", - "4VG", - "4AU", - "A9U", - "FPX", - "Z83", - "M5D", - "ULV", - "UE9", - "HK1", - "G7T", - "571", - "WT3", - "5L4", - "B7B", - "AM8", - "GUI", - "HCK", - "KEC", - "9DP", - "SMR", - "Z0W", - "8CD", - "AWN", - "G0U", - "XGQ", - "0OL", - "JN5", - "1PH", - "EK5", - "FZP", - "D1E", - "7A7", - "85X", - "IK1", - "XIZ", - "H7X", - "60E", - "AQ5", - "NTW", - "2NK", - "4TV", - "9YZ", - "U0N", - "G11", - "PQ8", - "UQX", - "A0T", - "B2D", - "DQX", - "H72", - "FZF", - "8RH", - "BFK", - "O10", - "EK0", - "T28", - "EWH", - "M57", - "OLP", - "E26", - "E2U", - "J87", - "QIA", - "YVQ", - "55F", - "AK3", - "8ON", - "MVG", - "EE4", - "6TT", - "X63", - "AFW", - "D6Z", - "J2I", - "40M", - "2JZ", - "DJK", - "8ZN", - "FMM", - "SJM", - "A7O", - "M77", - "UAU", - "RYW", - "37W", - "EUI", - "Q8J", - "R6K", - "9WX", - "45K", - "P3Y", - "A3W", - "1UH", - "1N8", - "0JA", - "SJJ", - "90N", - "99M", - "26D", - "6YL", - "VQP", - "X3N", - "VAR", - "FQG", - "42J", - "C95", - "S25", - "LS5", - "A5K", - "S59", - "FJY", - "54P", - "LUN", - "GAB", - "F7D", - "X37", - "I19", - "7G8", - "H83", - "8WH", - "P7A", - "WFD", - "RQ5", - "5B2", - "CMG", - "SV4", - "Z0B", - "QS0", - "Z3R", - "71N", - "JU8", - "RKZ", - "S93", - "O06", - "CVQ", - "4L5", - "RCM", - "2CH", - "Z85", - "SR8", - "T9N", - "3RF", - "6K0", - "L7A", - "RVU", - "QYH", - "4ZH", - "0RS", - "YUN", - "RK5", - "JWQ", - "SWM", - "JRW", - "0SU", - "03X", - "SJ0", - "DF6", - "5VS", - "575", - "I73", - "69C", - "LXS", - "3WO", - "H6K", - "IS4", - "3T9", - "2SB", - "HK7", - "6SO", - "NKT", - "QYB", - "TXQ", - "KSA", - "0SR", - "8TK", - "EVL", - "X59", - "OAW", - "S30", - "2WI", - "4YW", - "JWS", - "OFQ", - "FQJ", - "SZL", - "EAE", - "WAZ", - "DFQ", - "XJ1", - "4GD", - "A9K", - "JUW", - "XIJ", - "PM1", - "U0Q", - "BYP", - "O8Z", - "ALH", - "LS1", - "REB", - "0YH", - "8GY", - "D58", - "P2V", - "31J", - "Z31", - "RWE", - "VTD", - "KAO", - "25Z", - "8BH", - "0UN", - "3P6", - "L5G", - "SQZ", - "BWI", - "O2H", - "631", - "T3X", - "8O8", - "4ZQ", - "8X5", - "P39", - "JMB", - "N6K", - "B18", - "WIQ", - "SCF", - "09Z", - "B7S", - "LS7", - "FZR", - "NYI", - "DXV", - "AXI", - "SOV", - "U9P", - "3D8", - "JUP", - "UNM", - "GO7", - "OYB", - "2HX", - "E9Z", - "AGX", - "MYC", - "FPZ", - "56Z", - "3CI", - "HK8", - "5CN", - "X8I", - "16K", - "MK9", - "0SB", - "RHT", - "GS7", - "PP1", - "09K", - "664", - "60D", - "6LF", - "4VB", - "0J3", - "KXZ", - "J9G", - "MRI", - "4K0", - "8ZF", - "3D9", - "EM7", - "GC6", - "8KQ", - "9E1", - "3IF", - "E94", - "9IO", - "ZZF", - "N8U", - "ES4", - "G68", - "89E", - "L0I", - "15G", - "GVD", - "KEJ", - "NIO", - "08G", - "0W7", - "YDA", - "Y8C", - "5FI", - "XU1", - "Z19", - "WCJ", - "LCT", - "T74", - "DI1", - "7FM", - "L1H", - "386", - "76Y", - "8QW", - "HHN", - "T6E", - "1YG", - "5BP", - "B6E", - "9O2", - "S5M", - "SCZ", - "7KA", - "98M", - "7LY", - "VVQ", - "7X2", - "TOJ", - "STJ", - "8BV", - "J19", - "1F8", - "ZZY", - "XIX", - "2QK", - "OOD", - "ERK", - "LCJ", - "1C9", - "KVJ", - "O9L", - "MK3", - "LKB", - "N7Z", - "EZR", - "SUU", - "Z63", - "E86", - "AA0", - "FRZ", - "YY5", - "3D7", - "0H2", - "7FC", - "VWN", - "ZYW", - "S4N", - "3SG", - "SX8", - "KBI", - "EKK", - "4KK", - "ELW", - "06F", - "51W", - "3XM", - "WAK", - "5QI", - "BI8", - "9I2", - "1FV", - "7VH", - "5LS", - "G4Q", - "585", - "43A", - "OCJ", - "W5W", - "1OA", - "NG2", - "GD5", - "HPP", - "XHS", - "3RH", - "6MV", - "3I3", - "B4Y", - "KGL", - "E71", - "31V", - "3RE", - "71A", - "EK7", - "2VV", - "NHI", - "B91", - "7LK", - "I90", - "SU9", - "IHZ", - "2A8", - "984", - "IE6", - "EMH", - "J3Y", - "H80", - "XQQ", - "VFB", - "A17", - "8FR", - "ADN", - "KH5", - "K0X", - "W2T", - "X02", - "FDH", - "AU5", - "F6M", - "SVT", - "OHK", - "ZGY", - "1H4", - "330", - "YMX", - "RH8", - "T1Q", - "9E4", - "4PV", - "2K7", - "VX1", - "92M", - "00J", - "AQZ", - "Q1A", - "AOK", - "YSO", - "255", - "9J4", - "VX2", - "1KO", - "5WH", - "RKK", - "AK4", - "9X4", - "FL4", - "QQJ", - "PE5", - "DVD", - "2OL", - "AA2", - "RF4", - "X4B", - "8H0", - "LID", - "VJH", - "L1N", - "4YK", - "SM5", - "BJG", - "93J", - "6SC", - "MM8", - "DY4", - "N83", - "RWN", - "4EJ", - "EML", - "G0Q", - "HO5", - "2VW", - "626", - "GJA", - "A3H", - "6J9", - "Z8O", - "QYZ", - "BX1", - "793", - "2WG", - "XL7", - "887", - "AQW", - "CZ4", - "P08", - "43R", - "8MY", - "BMI", - "EZE", - "K06", - "G8H", - "0X5", - "29X", - "371", - "E2X", - "4HK", - "A8K", - "3Z3", - "X9J", - "C58", - "2KC", - "5T2", - "J99", - "99V", - "AKI", - "E0M", - "8GX", - "Q55", - "SQE", - "UOW", - "X9V", - "551", - "HAU", - "DWF", - "X6A", - "STI", - "RU5", - "PGJ", - "BAX", - "VYN", - "QAQ", - "HKJ", - "36O", - "H4N", - "553", - "33A", - "56H", - "4F6", - "QP1", - "3NE", - "ABO", - "ANW", - "XU2", - "C6O", - "7RO", - "PQC", - "0R4", - "893", - "9HP", - "9EJ", - "FRT", - "B9K", - "ZRU", - "19B", - "3JA", - "2I5", - "B6B", - "3NL", - "F8R", - "95U", - "QWS", - "LJE", - "V0K", - "4VJ", - "4ZR", - "SVG", - "A0Q", - "QZW", - "ROY", - "1WS", - "WGZ", - "1RU", - "5Y3", - "QOP", - "B8I", - "GO4", - "LM3", - "3RL", - "P17", - "0T8", - "HGF", - "XR1", - "0SD", - "C62", - "24K", - "Z14", - "YIQ", - "GJK", - "CC9", - "PDY", - "UP9", - "YNZ", - "RXN", - "OE8", - "BMU", - "LGF", - "0UV", - "RKN", - "JAK", - "6L4", - "OBW", - "3L0", - "KRE", - "42C", - "OVI", - "ESQ", - "B6Z", - "A6X", - "K47", - "9JO", - "MYF", - "JNK", - "UCN", - "R05", - "EQH", - "LWG", - "GG5", - "824", - "3OU", - "HPM", - "3O7", - "AG1", - "CQO", - "8PT", - "MBW", - "LG8", - "EZB", - "RJ2", - "MWU", - "EXZ", - "4YX", - "FXG", - "T3I", - "LZ8", - "I3H", - "REF", - "4V8", - "Q0B", - "NL4", - "G96", - "6TD", - "07Q", - "P41", - "2IX", - "4UB", - "BMW", - "AEE", - "STL", - "WVI", - "9BD", - "3UO", - "XHV", - "MBP", - "KA4", - "RQZ", - "RQE", - "U3E", - "2V9", - "17P", - "IBI", - "RTZ", - "H7O", - "Q58", - "LZD", - "8H1", - "DQ4", - "HNZ", - "90F", - "G9E", - "RQQ", - "D1D", - "K0Z", - "L1G", - "1AM", - "48K", - "5B3", - "DJQ", - "9NX", - "P5C", - "3H8", - "939", - "HOT", - "V0L", - "I45", - "QRW", - "KJB", - "ADE", - "X84", - "E1D", - "ZYT", - "N7W", - "V6B", - "2P5", - "IZZ", - "61K", - "SKE", - "SJX", - "39G", - "91H", - "1RQ", - "OXM", - "90E", - "8C5", - "Y56", - "IKD", - "H5K", - "70S", - "4ZJ", - "8MB", - "7XW", - "1OO", - "Q5Z", - "O1S", - "YT8", - "1Q4", - "67T", - "L8V", - "QUF", - "6GD", - "GK6", - "G3B", - "MFQ", - "55M", - "5I1", - "7YS", - "KD6", - "4LY", - "A3Q", - "0NV", - "5P8", - "RG4", - "PP0", - "5BE", - "65A", - "SB5", - "0S7", - "P3J", - "VEQ", - "T2F", - "1OC", - "1LB", - "FNI", - "1IF", - "0NU", - "9ID", - "PQB", - "6XK", - "NKE", - "960", - "2OO", - "4GU", - "L0E", - "7UX", - "DJH", - "CC3", - "8MT", - "ZYU", - "W49", - "7QU", - "RFZ", - "OU2", - "N76", - "N9Z", - "499", - "ZC3", - "O8W", - "QP4", - "NZF", - "V1Y", - "1IZ", - "LB7", - "Z84", - "AQY", - "M0Z", - "KWV", - "XA4", - "6XE", - "B11", - "TL7", - "IAQ", - "INR", - "KJV", - "SB0", - "YIT", - "9KI", - "D36", - "STU", - "3NV", - "UNQ", - "SJS", - "YDK", - "Q98", - "EX6", - "Z02", - "47I", - "3FP", - "1WU", - "81C", - "4ZG", - "0BX", - "6ZV", - "4Z5", - "OW6", - "7KU", - "4SP", - "W32", - "R6D", - "6Z7", - "PPI", - "CT9", - "GK5", - "LEV", - "6BE", - "8Q5", - "AM6", - "0ON", - "2A6", - "AQ2", - "FKO", - "RAJ", - "L9A", - "RRC", - "5JA", - "50V", - "IHP", - "N5R", - "W3I", - "P91", - "MMD", - "AUW", - "AWE", - "S9K", - "0O9", - "W9Z", - "G0H", - "FYW", - "SQB", - "YTP", - "A0H", - "R7W", - "6LQ", - "XBD", - "90B", - "7MY", - "3WK", - "O35", - "KRW", - "O1V", - "X62", - "4RB", - "A5G", - "OPW", - "0G2", - "2NS", - "3QY", - "LS3", - "X42", - "0UW", - "OV0", - "G95", - "1QK", - "2WH", - "59T", - "TWK", - "66P", - "NRM", - "320", - "U8J", - "T6X", - "SW8", - "FZW", - "PRC", - "QY8", - "3QT", - "JAU", - "IYZ", - "SQQ", - "QQM", - "IED", - "3YY", - "0TA", - "4KH", - "BEZ", - "NY0", - "PCG", - "YDI", - "C94", - "R39", - "T4O", - "ZS4", - "VRM", - "GMG", - "7X4", - "4DJ", - "9M3", - "R6I", - "ERW", - "OE5", - "RUT", - "V58", - "OH8", - "6BZ", - "Q6E", - "X43", - "X9M", - "QEW", - "2AN", - "4WE", - "3O8", - "58V", - "OD2", - "IER", - "LZ7", - "KRK", - "6K1", - "GIN", - "XL9", - "W3C", - "6E2", - "3GU", - "X5G", - "0VM", - "FBL", - "X35", - "YIY", - "3OA", - "ZAT", - "4E1", - "75X", - "UX2", - "QCR", - "RCH", - "FMJ", - "DD8", - "C9U", - "IGJ", - "OOO", - "NZS", - "X1N", - "X76", - "4R0", - "FCZ", - "ESW", - "QUU", - "GFJ", - "O1Y", - "1ST", - "B10", - "JWK", - "0NL", - "5I4", - "084", - "0F2", - "NZ8", - "GMW", - "E3U", - "3IP", - "FYH", - "E7M", - "KQW", - "6QX", - "N4N", - "81G", - "9ZS", - "L66", - "6JS", - "H3H", - "6DP", - "K3D", - "E6W", - "COM", - "X8G", - "L0Z", - "MI1", - "29B", - "HJ0", - "Y3M", - "0C0", - "924", - "QYT", - "F8E", - "E78", - "B98", - "3Q0", - "1IW", - "2AI", - "22L", - "3U5", - "4F2", - "71L", - "Z71", - "34O", - "LVL", - "B1L", - "4LH", - "U35", - "XOJ", - "2V3", - "3J7", - "P4G", - "E8D", - "GGY", - "8QE", - "UWM", - "FLL", - "L80", - "E4V", - "AJG", - "OOJ", - "WAU", - "YIW", - "11G", - "BRW", - "E5M", - "O19", - "0VH", - "TBS", - "6UX", - "HRZ", - "GK4", - "ZUO", - "B7R", - "YQT", - "0C4", - "LKT", - "529", - "HGH", - "35H", - "041", - "8KZ", - "L11", - "6C3", - "OSV", - "E2R", - "N45", - "353", - "XL6", - "RHH", - "8C1", - "AQ6", - "98G", - "396", - "6BU", - "WBI", - "EFV", - "PFO", - "PDS", - "M4X", - "VFA", - "H91", - "7XN", - "3UP", - "3U6", - "8RC", - "25Q", - "7CP", - "E75", - "8XH", - "R9P", - "T3B", - "RKD", - "ND2", - "985", - "KSK", - "RJ8", - "UCE", - "6ZG", - "KUV", - "X39", - "A7X", - "Q4J", - "3Q5", - "BW8", - "0CE", - "3XK", - "710", - "WHQ", - "12Z", - "7G6", - "KRJ", - "KWJ", - "2V2", - "1QM", - "R4L", - "0X2", - "0UJ", - "X3A", - "H7F", - "HHT", - "8ZZ", - "P78", - "63L", - "UCM", - "78L", - "YM4", - "GK3", - "L9S", - "SLS", - "63B", - "UGJ", - "2K0", - "Q9J", - "B4E", - "27Z", - "IKC", - "W3F", - "SJG", - "MPY", - "KSL", - "IPV", - "JIN", - "1J2", - "PKE", - "3EL", - "FAL", - "9K8", - "MMW", - "6QB", - "VRZ", - "CQ7", - "1Q3", - "B45", - "8M8", - "V7Y", - "I94", - "608", - "6R1", - "BYM", - "9VV", - "W4G", - "CQQ", - "859", - "9EO", - "1FM", - "7GG", - "GXH", - "UUB", - "RK8", - "E0S", - "0BZ", - "CFK", - "1SU", - "DYK", - "RKQ", - "8JC", - "5QM", - "FAP", - "D6W", - "PVT", - "39I", - "D23", - "H82", - "55J", - "7KX", - "HK5", - "3HT", - "W2K", - "BLZ", - "4US", - "0J8", - "IGS", - "FKL", - "62M", - "4YM", - "S5I", - "5U6", - "Y5Y", - "K8A", - "741", - "YPW", - "NZU", - "K7S", - "HB1", - "MJF", - "0NH", - "OSZ", - "HHL", - "M5J", - "GMQ", - "PY8", - "MLW", - "ZHY", - "H7L", - "GIK", - "X72", - "W3W", - "42K", - "1SW", - "JYM", - "TMU", - "L9L", - "5E1", - "LZ5", - "6FD", - "CWS", - "I74", - "KHQ", - "URW", - "TL0", - "5CP", - "UIM", - "F76", - "22K", - "G5K", - "IQB", - "RKH", - "HK3", - "LMR", - "3YR", - "8MN", - "V1G", - "ZXL", - "GSH", - "CKK", - "D5P", - "O1Z", - "6UI", - "MVE", - "SV8", - "Y27", - "XIY", - "K1E", - "GV0", - "64V", - "FPU", - "S1Z", - "OCG", - "N69", - "L8Y", - "H1K", - "AM9", - "0VU", - "5Q2", - "OWB", - "J72", - "KS1", - "LI9", - "UWP", - "VYP", - "OFI", - "2Q7", - "UMN", - "O98", - "X4G", - "085", - "J82", - "1B6", - "VSG", - "LGW", - "5W7", - "P2B", - "ZSO", - "03C", - "A1N", - "P2X", - "N7Q", - "QPP", - "630", - "774", - "PO6", - "U7E", - "3KC", - "F9Z", - "V84", - "N20", - "3K6", - "ML9", - "MIX", - "C70", - "5T1", - "MXE", - "3WJ", - "RQT", - "933", - "2SH", - "PGF", - "AN2", - "DB8", - "SCX", - "SQ9", - "HIZ", - "SO7", - "I39", - "LIC", - "6TS", - "325", - "KX0", - "LMM", - "EDD", - "7LI", - "4YV", - "0SV", - "JNO", - "CT6", - "G4J", - "FSE", - "R5S", - "MFR", - "O22", - "ZYV", - "FS7", - "84X", - "FLW", - "VYH", - "YK4", - "7GK", - "SC8", - "SLV", - "QNR", - "54E", - "18R", - "MTZ", - "UKI", - "8BY", - "24A", - "CQ0", - "76Q", - "YY6", - "1QJ", - "ICV", - "PKB", - "O1R", - "8AM", - "IIQ", - "KJQ", - "YM6", - "P5K", - "BDY", - "F8Y", - "2QU", - "4MG", - "1JV", - "B5T", - "O38", - "CJN", - "88A", - "MSQ", - "0KO", - "TVW", - "MYU", - "VK5", - "QUE", - "AM0", - "4EK", - "6K7", - "WAP", - "M54", - "4B7", - "274", - "3TA", - "A8Q", - "KHT", - "V25", - "0C7", - "071", - "SK8", - "MP7", - "5U5", - "E7N", - "LRS", - "M2Z", - "3RJ", - "PO5", - "15V", - "88C", - "B43", - "582", - "CQ6", - "6AF", - "L8D", - "AZ5", - "UOH", - "H6X", - "PXK", - "50R", - "IPW", - "FZL", - "79S", - "92D", - "5YS", - "LHZ", - "YW5", - "X2K", - "TKB", - "QWN", - "JYO", - "BX7", - "13J", - "V5E", - "6KD", - "X6D", - "685", - "19Z", - "N6U", - "A4W", - "WYF", - "SB6", - "3NW", - "4QV", - "E56", - "Q8W", - "L7I", - "HYM", - "N8S", - "YXT", - "404", - "84S", - "N66", - "RHW", - "68U", - "LI6", - "HYZ", - "05J", - "3JW", - "X9Y", - "N86", - "E8K", - "0B9", - "EU2", - "B49", - "M3Y", - "S7S", - "AK6", - "7MP", - "76P", - "L2G", - "6UH", - "MUH", - "SX7", - "6UG", - "9G5", - "R34", - "IDK", - "R49", - "LS2", - "6VL", - "4C9", - "5H7", - "92Q", - "AUT", - "DQO", - "Q6G", - "T4C", - "31S", - "Z04", - "26K", - "YSI", - "NSO", - "PFP", - "676", - "L9G", - "84U", - "E47", - "9NH", - "A7Q", - "62O", - "P4O", - "8MK", - "H2E", - "LOW", - "QGI", - "ZXC", - "QK0", - }, + set(data["kinase_inhibitors"]), ) diff --git a/tests/test_annotations.py b/tests/test_annotations.py index 76faf621..79968bdc 100644 --- a/tests/test_annotations.py +++ b/tests/test_annotations.py @@ -1,7 +1,6 @@ # Copyright (c) 2024, Plinder Development Team # Distributed under the terms of the Apache License 2.0 import pandas as pd -import pytest from plinder.data.get_system_annotations import GetPlinderAnnotation from plinder.data.utils.annotations.aggregate_annotations import Entry from plinder.data.utils.annotations.interaction_utils import get_covalent_connections @@ -15,6301 +14,6 @@ from rdkit import Chem -@pytest.fixture(autouse=True) -def mock_ccd_lookups(monkeypatch): - monkeypatch.setattr( - "plinder.data.utils.annotations.ligand_utils.LIST_OF_CCD_SYNONYMS", - [ - {"B1F", "B2F"}, - {"OY5", "OY8"}, - {"N1B", "4LA"}, - {"C2H", "ETD"}, - {"FMT", "CBX"}, - {"NFO", "NFB"}, - {"MBR", "B4M"}, - {"PGH", "PGC"}, - {"BXA", "BRM"}, - {"2PL", "PGA"}, - {"CRY", "GOL"}, - {"VKN", "YLL"}, - {"VDW", "0P0", "GTT"}, - {"AKG", "2OG"}, - {"GGL", "GLU"}, - {"FGA", "DGL"}, - {"ACA", "AHA"}, - {"GCG", "TS3"}, - {"HPG", "PDO"}, - {"148", "BTB"}, - {"EDO", "EGL"}, - {"PIG", "PGE"}, - {"P2K", "P6G"}, - {"SEA", "DHL"}, - {"BME", "SEO"}, - {"CS0", "OCY"}, - {"DHN", "AA4"}, - {"ABK", "FKI"}, - {"ASP", "IAS"}, - {"PAS", "PHD", "ASQ"}, - {"SER", "SEG"}, - {"BTC", "FCY", "CYS"}, - {"CAY", "CCS"}, - {"CSO", "CEA"}, - {"CSE", "SEC"}, - {"ICT", "ICI"}, - {"GLR", "KGR"}, - {"GAL", "GLB"}, - {"G4S", "GSA"}, - {"Z4Y", "TWG"}, - {"GS4", "SGC", "GSD"}, - {"SGN", "YJM"}, - {"AGC", "GLC"}, - {"ADG", "TOA"}, - {"NT2", "GU4"}, - {"L1L", "GP1"}, - {"BFP", "FBP"}, - {"I8Z", "I9X"}, - {"HSU", "BDR"}, - {"RDP", "R1P"}, - {"HNP", "H5P"}, - {"DSP", "DAS"}, - {"DMR", "MLT"}, - {"3PG", "MP3"}, - {"PAG", "2PG"}, - {"GPH", "GPO", "0AL"}, - {"R51", "R52"}, - {"PA4", "IDG"}, - {"KPI", "MCL"}, - {"EUG", "H7Y"}, - {"2H3", "CBU", "INS"}, - {"I6P", "IHP", "KGN"}, - {"GUR", "GLL"}, - {"0AU", "IU"}, - {"GCD", "DGC"}, - {"CYL", "ACI", "CMN"}, - {"TZA", "ACZ"}, - {"LC", "0C"}, - {"C", "C25", "C5P"}, - {"0U", "LHU"}, - {"2AU", "U2N"}, - {"U", "U25", "U5P"}, - {"U37", "T31"}, - {"S4U", "4SU"}, - {"PH2", "HHP"}, - {"PCA", "5HP", "PCC"}, - {"HAC", "ALC"}, - {"CHG", "CUC"}, - {"H2U", "DHU"}, - {"DOX", "DIO"}, - {"DXD", "DXN"}, - {"ORP", "D1P"}, - {"C32", "CBR"}, - {"I5C", "C38"}, - {"5IU", "5IT"}, - {"DCM", "DC"}, - {"C7S", "C7R"}, - {"DU", "UMP"}, - {"IGU", "0UH"}, - {"B1P", "AAB"}, - {"MNM", "NOZ"}, - {"NOJ", "DNJ"}, - {"TSO", "TSA", "BAR"}, - {"UYA", "0AZ"}, - {"DFC", "0DC"}, - {"HSZ", "XYP"}, - {"XYB", "BXP"}, - {"DDM", "DMJ"}, - {"FLH", "FOR"}, - {"PVL", "MIE"}, - {"LIN", "AAE"}, - {"3NK", "LL8"}, - {"CHH", "NWB"}, - {"GCM", "GLM", "F3V"}, - {"CNM", "ACM"}, - {"1ZT", "SC2"}, - {"YYR", "RTV"}, - {"SIA", "SI2", "NAN"}, - {"7BN", "7BO"}, - {"16G", "0AT"}, - {"NAG", "HSR"}, - {"1NA", "MAG"}, - {"NGL", "ASG"}, - {"5G0", "OGN"}, - {"TYL", "NNS"}, - {"ACY", "CM", "CBM"}, - {"CKC", "LYM"}, - {"OTB", "BOC"}, - {"BUG", "TBG", "HV5"}, - {"ISB", "ALQ"}, - {"FPG", "F3P"}, - {"UIC", "GRL"}, - {"CLE", "NLW"}, - {"LEP", "0FA"}, - {"YLV", "YM1"}, - {"YKA", "YKD"}, - {"YKY", "YL7"}, - {"YMD", "YMG"}, - {"YMS", "YMV"}, - {"Y8Y", "Y91"}, - {"Y51", "Y71"}, - {"Y7G", "Y4P"}, - {"YLD", "YLJ"}, - {"YKS", "YKV"}, - {"OLE", "1LU"}, - {"XAO", "GCL"}, - {"HMP", "HMI"}, - {"PLH", "HAP"}, - {"PLU", "PLE"}, - {"BAT", "DSX"}, - {"CCK", "ATW"}, - {"IPA", "IOH"}, - {"ISP", "MIP"}, - {"VME", "0AA"}, - {"CPV", "VAS"}, - {"961", "395"}, - {"HIE", "E0G"}, - {"MQ7", "7MQ"}, - {"REA", "3KV"}, - {"RAW", "ECH"}, - {"45H", "45D"}, - {"DRB", "LRB"}, - {"RFB", "RFA"}, - {"5PY", "T36"}, - {"LCH", "LCC"}, - {"DRT", "0DT"}, - {"HDP", "XTR"}, - {"T0N", "T0Q"}, - {"NYM", "T37"}, - {"TMP", "DT", "T"}, - {"THP", "PTP"}, - {"PST", "TS"}, - {"5MU", "RT"}, - {"U18", "F89"}, - {"BJ5", "0UE"}, - {"4JU", "2MH"}, - {"MCB", "ACE", "ACU"}, - {"YI2", "5YI"}, - {"CL1", "CL2"}, - {"CBG", "PNL"}, - {"NBU", "BUT", "SBU"}, - {"NP6", "BA4"}, - {"YMY", "YN1"}, - {"YMM", "YMJ"}, - {"PEI", "LEA"}, - {"CRC", "DKA"}, - {"LAU", "DAO"}, - {"PLM", "FAT"}, - {"3PH", "2SP"}, - {"QEH", "LP3"}, - {"C8E", "OTE"}, - {"OLA", "OLI"}, - {"HQ", "HQO"}, - {"13H", "243"}, - {"LYW", "EJM"}, - {"1ZD", "2NC"}, - {"0AM", "0SP"}, - {"2PI", "RON", "NVA", "BTA"}, - {"EOX", "EOH", "OHE"}, - {"P3G", "6JZ"}, - {"XL1", "SCC"}, - {"ITU", "SEU"}, - {"1NI", "LP2", "LP1"}, - {"ABA", "AB7"}, - {"CHC", "IU6"}, - {"DCI", "MBA"}, - {"0EZ", "PI6"}, - {"INY", "CRP"}, - {"T0M", "EMT"}, - {"NET", "E4N"}, - {"F22", "HXA"}, - {"GXJ", "I0E"}, - {"PYJ", "N2B"}, - {"NC", "NME"}, - {"MLY", "TRG"}, - {"R5A", "R5B"}, - {"3MU", "UR3"}, - {"VSB", "VSE"}, - {"PTC", "AY0"}, - {"M4C", "4OC"}, - {"SAR", "MGY"}, - {"YNM", "N9K"}, - {"A34", "6MC", "6MA", "6MT"}, - {"A35", "A40"}, - {"6OO", "OKQ"}, - {"A2M", "0AV", "A39"}, - {"MMA", "MAM"}, - {"MGA", "MBG"}, - {"G32", "6OG"}, - {"1CR", "0CR"}, - {"3DQ", "9ZT"}, - {"ROL", "4RR", "4SR"}, - {"1IS", "1IR"}, - {"GB", "PPM"}, - {"577", "IIM"}, - {"CYM", "SMC"}, - {"K7J", "0ZO"}, - {"PIA", "AYG"}, - {"CRW", "MDO"}, - {"YKP", "YKM"}, - {"WLD", "WH7"}, - {"PGO", "PGQ"}, - {"HBL", "HBI"}, - {"BH4", "THB", "H4B"}, - {"98", "986"}, - {"PYL", "PYH"}, - {"JRC", "JQL"}, - {"KOL", "MER"}, - {"1GL", "BRI"}, - {"6CT", "T32"}, - {"MEP", "T23"}, - {"AGL", "RV7"}, - {"G6D", "GLW"}, - {"ARE", "5SA"}, - {"DDB", "MDA"}, - {"53P", "5P8", "QB4"}, - {"STO", "STU"}, - {"INH", "8MI"}, - {"DLA", "LAC"}, - {"AMV", "MMR"}, - {"DHO", "DXC"}, - {"HP3", "PGR"}, - {"HPB", "PR0"}, - {"TRB", "TB9"}, - {"RAA", "RAM"}, - {"MFU", "MFA"}, - {"FUL", "AFL"}, - {"SAA", "APG"}, - {"OET", "ETH"}, - {"HGC", "MMC"}, - {"POC", "PC"}, - {"MOT", "COE"}, - {"SOM", "MPS"}, - {"TTH", "GER"}, - {"TBM", "TMB"}, - {"PDL", "PP3"}, - {"PLA", "AMA"}, - {"THQ", "TZP"}, - {"RIC", "RBZ"}, - {"MDI", "N0U"}, - {"MJQ", "6LX"}, - {"RNY", "AQZ"}, - {"267", "263"}, - {"NEV", "NVP", "NIV"}, - {"PYD", "YF1"}, - {"G33", "8MG"}, - {"0SN", "88N"}, - {"7CP", "MB0"}, - {"HIC", "MH1", "NEM"}, - {"HDZ", "TFH"}, - {"QTR", "OXO", "HOH", "DIS", "O", "OX", "MTO"}, - {"FEO", "F2O"}, - {"O2", "OXY"}, - {"2MO", "MM4"}, - {"PI", "IPS"}, - {"S", "H2S"}, - {"BRO", "BR"}, - {"IDS", "2SI"}, - {"BHD", "DOH"}, - {"UEV", "I7P"}, - {"CLO", "CL"}, - {"FLO", "F"}, - {"MH6", "SRI"}, - {"672", "Q72"}, - {"YJC", "424"}, - {"1MA", "MAD"}, - {"IDO", "IOD"}, - {"NH4", "NGN"}, - {"NMO", "NO"}, - {"SUL", "SO4"}, - {"HYD", "OH"}, - {"B51", "WCC"}, - {"ZN", "ZN2"}, - {"FIB", "IBF"}, - {"PGS", "SPG"}, - {"ANE", "ADE"}, - {"PCQ", "NEW"}, - {"EGG", "KDH"}, - {"G1Z", "G1T"}, - {"B7D", "TRU"}, - {"P5P", "PR5"}, - {"9HE", "KS1"}, - {"DHY", "HAA"}, - {"TY3", "DAH"}, - {"LNR", "LT4"}, - {"NAH", "NAD"}, - {"MTY", "EHP"}, - {"PIX", "TF6"}, - {"CSY", "GYS"}, - {"FA", "FOL"}, - {"TYS", "STY"}, - {"YAP", "69X"}, - {"CBP", "345"}, - {"GHP", "DGH", "NTY"}, - {"CR2", "CQR"}, - {"WAK", "WB8"}, - {"KSB", "QHL"}, - {"BPC", "BP", "BAP"}, - {"6AB", "BE2"}, - {"L0H", "L0F"}, - {"BEZ", "BOX"}, - {"FSL", "F9V"}, - {"PPY", "1PY"}, - {"P6S", "BGG"}, - {"CBZ", "BZO"}, - {"PMS", "IOX"}, - {"PHM", "PCS"}, - {"LLA", "LOF", "HFA"}, - {"TPH", "HPH"}, - {"PUK", "FRF"}, - {"0AC", "FOG"}, - {"638", "XV6"}, - {"BIC", "MOL"}, - {"D8W", "3DB"}, - {"PGY", "PG9"}, - {"119", "P4P"}, - {"86Q", "DRG"}, - {"89E", "LIG"}, - {"GPR", "CYP"}, - {"URY", "K0I"}, - {"TRP", "LTR"}, - {"V7F", "V70"}, - {"QNC", "QND"}, - {"0TN", "RKP"}, - {"QX", "QUI"}, - {"AC4", "AMZ"}, - {"D5M", "DA"}, - {"A", "AMP"}, - {"0DG", "DFG"}, - {"LG", "0G"}, - {"DCG", "DGP", "DG"}, - {"DI", "OIP"}, - {"5GP", "G25", "G", "CPG"}, - {"IMP", "I"}, - {"GTO", "GCP"}, - {"GNP", "GTN"}, - ], - ) - monkeypatch.setattr( - "plinder.data.utils.annotations.ligand_utils.CCD_SYNONYMS_DICT", - { - "B1F": "B1F", - "B2F": "B1F", - "OY5": "OY5", - "OY8": "OY5", - "4LA": "N1B", - "N1B": "N1B", - "C2H": "C2H", - "ETD": "C2H", - "CBX": "CBX", - "FMT": "CBX", - "NFB": "NFB", - "NFO": "NFB", - "B4M": "B4M", - "MBR": "B4M", - "PGC": "PGC", - "PGH": "PGC", - "BRM": "BRM", - "BXA": "BRM", - "2PL": "PGA", - "PGA": "PGA", - "CRY": "CRY", - "GOL": "CRY", - "VKN": "VKN", - "YLL": "VKN", - "0P0": "GTT", - "GTT": "GTT", - "VDW": "GTT", - "2OG": "AKG", - "AKG": "AKG", - "GGL": "GGL", - "GLU": "GGL", - "DGL": "DGL", - "FGA": "DGL", - "ACA": "ACA", - "AHA": "ACA", - "GCG": "GCG", - "TS3": "GCG", - "HPG": "HPG", - "PDO": "HPG", - "148": "BTB", - "BTB": "BTB", - "EDO": "EDO", - "EGL": "EDO", - "PGE": "PGE", - "PIG": "PGE", - "P2K": "P2K", - "P6G": "P2K", - "DHL": "DHL", - "SEA": "DHL", - "BME": "BME", - "SEO": "BME", - "CS0": "CS0", - "OCY": "CS0", - "AA4": "AA4", - "DHN": "AA4", - "ABK": "ABK", - "FKI": "ABK", - "ASP": "ASP", - "IAS": "ASP", - "ASQ": "ASQ", - "PAS": "ASQ", - "PHD": "ASQ", - "SEG": "SEG", - "SER": "SEG", - "BTC": "BTC", - "CYS": "BTC", - "FCY": "BTC", - "CAY": "CAY", - "CCS": "CAY", - "CEA": "CEA", - "CSO": "CEA", - "CSE": "CSE", - "SEC": "CSE", - "ICI": "ICI", - "ICT": "ICI", - "GLR": "GLR", - "KGR": "GLR", - "GAL": "GAL", - "GLB": "GAL", - "G4S": "G4S", - "GSA": "G4S", - "TWG": "TWG", - "Z4Y": "TWG", - "GS4": "GS4", - "GSD": "GS4", - "SGC": "GS4", - "SGN": "SGN", - "YJM": "SGN", - "AGC": "AGC", - "GLC": "AGC", - "ADG": "ADG", - "TOA": "ADG", - "GU4": "GU4", - "NT2": "GU4", - "GP1": "GP1", - "L1L": "GP1", - "BFP": "BFP", - "FBP": "BFP", - "I8Z": "I8Z", - "I9X": "I8Z", - "BDR": "BDR", - "HSU": "BDR", - "R1P": "R1P", - "RDP": "R1P", - "H5P": "H5P", - "HNP": "H5P", - "DAS": "DAS", - "DSP": "DAS", - "DMR": "DMR", - "MLT": "DMR", - "3PG": "MP3", - "MP3": "MP3", - "2PG": "PAG", - "PAG": "PAG", - "0AL": "GPH", - "GPH": "GPH", - "GPO": "GPH", - "R51": "R51", - "R52": "R51", - "IDG": "IDG", - "PA4": "IDG", - "KPI": "KPI", - "MCL": "KPI", - "EUG": "EUG", - "H7Y": "EUG", - "2H3": "CBU", - "CBU": "CBU", - "INS": "CBU", - "I6P": "I6P", - "IHP": "I6P", - "KGN": "I6P", - "GLL": "GLL", - "GUR": "GLL", - "0AU": "IU", - "IU": "IU", - "DGC": "DGC", - "GCD": "DGC", - "ACI": "ACI", - "CMN": "ACI", - "CYL": "ACI", - "ACZ": "ACZ", - "TZA": "ACZ", - "0C": "LC", - "LC": "LC", - "C": "C25", - "C25": "C25", - "C5P": "C25", - "0U": "LHU", - "LHU": "LHU", - "2AU": "U2N", - "U2N": "U2N", - "U": "U25", - "U25": "U25", - "U5P": "U25", - "T31": "T31", - "U37": "T31", - "4SU": "S4U", - "S4U": "S4U", - "HHP": "HHP", - "PH2": "HHP", - "5HP": "PCA", - "PCA": "PCA", - "PCC": "PCA", - "ALC": "ALC", - "HAC": "ALC", - "CHG": "CHG", - "CUC": "CHG", - "DHU": "DHU", - "H2U": "DHU", - "DIO": "DIO", - "DOX": "DIO", - "DXD": "DXD", - "DXN": "DXD", - "D1P": "D1P", - "ORP": "D1P", - "C32": "C32", - "CBR": "C32", - "C38": "C38", - "I5C": "C38", - "5IT": "5IT", - "5IU": "5IT", - "DC": "DCM", - "DCM": "DCM", - "C7R": "C7R", - "C7S": "C7R", - "DU": "UMP", - "UMP": "UMP", - "0UH": "IGU", - "IGU": "IGU", - "AAB": "AAB", - "B1P": "AAB", - "MNM": "MNM", - "NOZ": "MNM", - "DNJ": "DNJ", - "NOJ": "DNJ", - "BAR": "BAR", - "TSA": "BAR", - "TSO": "BAR", - "0AZ": "UYA", - "UYA": "UYA", - "0DC": "DFC", - "DFC": "DFC", - "HSZ": "HSZ", - "XYP": "HSZ", - "BXP": "BXP", - "XYB": "BXP", - "DDM": "DDM", - "DMJ": "DDM", - "FLH": "FLH", - "FOR": "FLH", - "MIE": "MIE", - "PVL": "MIE", - "AAE": "AAE", - "LIN": "AAE", - "3NK": "LL8", - "LL8": "LL8", - "CHH": "CHH", - "NWB": "CHH", - "F3V": "F3V", - "GCM": "F3V", - "GLM": "F3V", - "ACM": "ACM", - "CNM": "ACM", - "1ZT": "SC2", - "SC2": "SC2", - "RTV": "RTV", - "YYR": "RTV", - "NAN": "NAN", - "SI2": "NAN", - "SIA": "NAN", - "7BN": "7BN", - "7BO": "7BN", - "0AT": "0AT", - "16G": "0AT", - "HSR": "HSR", - "NAG": "HSR", - "1NA": "MAG", - "MAG": "MAG", - "ASG": "ASG", - "NGL": "ASG", - "5G0": "OGN", - "OGN": "OGN", - "NNS": "NNS", - "TYL": "NNS", - "ACY": "ACY", - "CBM": "ACY", - "CM": "ACY", - "CKC": "CKC", - "LYM": "CKC", - "BOC": "BOC", - "OTB": "BOC", - "BUG": "BUG", - "HV5": "BUG", - "TBG": "BUG", - "ALQ": "ALQ", - "ISB": "ALQ", - "F3P": "F3P", - "FPG": "F3P", - "GRL": "GRL", - "UIC": "GRL", - "CLE": "CLE", - "NLW": "CLE", - "0FA": "LEP", - "LEP": "LEP", - "YLV": "YLV", - "YM1": "YLV", - "YKA": "YKA", - "YKD": "YKA", - "YKY": "YKY", - "YL7": "YKY", - "YMD": "YMD", - "YMG": "YMD", - "YMS": "YMS", - "YMV": "YMS", - "Y8Y": "Y8Y", - "Y91": "Y8Y", - "Y51": "Y51", - "Y71": "Y51", - "Y4P": "Y4P", - "Y7G": "Y4P", - "YLD": "YLD", - "YLJ": "YLD", - "YKS": "YKS", - "YKV": "YKS", - "1LU": "OLE", - "OLE": "OLE", - "GCL": "GCL", - "XAO": "GCL", - "HMI": "HMI", - "HMP": "HMI", - "HAP": "HAP", - "PLH": "HAP", - "PLE": "PLE", - "PLU": "PLE", - "BAT": "BAT", - "DSX": "BAT", - "ATW": "ATW", - "CCK": "ATW", - "IOH": "IOH", - "IPA": "IOH", - "ISP": "ISP", - "MIP": "ISP", - "0AA": "VME", - "VME": "VME", - "CPV": "CPV", - "VAS": "CPV", - "395": "395", - "961": "395", - "E0G": "E0G", - "HIE": "E0G", - "7MQ": "MQ7", - "MQ7": "MQ7", - "3KV": "REA", - "REA": "REA", - "ECH": "ECH", - "RAW": "ECH", - "45D": "45D", - "45H": "45D", - "DRB": "DRB", - "LRB": "DRB", - "RFA": "RFA", - "RFB": "RFA", - "5PY": "T36", - "T36": "T36", - "LCC": "LCC", - "LCH": "LCC", - "0DT": "DRT", - "DRT": "DRT", - "HDP": "HDP", - "XTR": "HDP", - "T0N": "T0N", - "T0Q": "T0N", - "NYM": "NYM", - "T37": "NYM", - "DT": "TMP", - "T": "TMP", - "TMP": "TMP", - "PTP": "PTP", - "THP": "PTP", - "PST": "PST", - "TS": "PST", - "5MU": "RT", - "RT": "RT", - "F89": "F89", - "U18": "F89", - "0UE": "BJ5", - "BJ5": "BJ5", - "2MH": "2MH", - "4JU": "2MH", - "ACE": "ACE", - "ACU": "ACE", - "MCB": "ACE", - "5YI": "YI2", - "YI2": "YI2", - "CL1": "CL1", - "CL2": "CL1", - "CBG": "CBG", - "PNL": "CBG", - "BUT": "BUT", - "NBU": "BUT", - "SBU": "BUT", - "BA4": "BA4", - "NP6": "BA4", - "YMY": "YMY", - "YN1": "YMY", - "YMJ": "YMJ", - "YMM": "YMJ", - "LEA": "LEA", - "PEI": "LEA", - "CRC": "CRC", - "DKA": "CRC", - "DAO": "DAO", - "LAU": "DAO", - "FAT": "FAT", - "PLM": "FAT", - "2SP": "2SP", - "3PH": "2SP", - "LP3": "LP3", - "QEH": "LP3", - "C8E": "C8E", - "OTE": "C8E", - "OLA": "OLA", - "OLI": "OLA", - "HQ": "HQO", - "HQO": "HQO", - "13H": "13H", - "243": "13H", - "EJM": "EJM", - "LYW": "EJM", - "1ZD": "1ZD", - "2NC": "1ZD", - "0AM": "0AM", - "0SP": "0AM", - "2PI": "BTA", - "BTA": "BTA", - "NVA": "BTA", - "RON": "BTA", - "EOH": "EOH", - "EOX": "EOH", - "OHE": "EOH", - "6JZ": "P3G", - "P3G": "P3G", - "SCC": "SCC", - "XL1": "SCC", - "ITU": "ITU", - "SEU": "ITU", - "1NI": "LP1", - "LP1": "LP1", - "LP2": "LP1", - "AB7": "AB7", - "ABA": "AB7", - "CHC": "CHC", - "IU6": "CHC", - "DCI": "DCI", - "MBA": "DCI", - "0EZ": "PI6", - "PI6": "PI6", - "CRP": "CRP", - "INY": "CRP", - "EMT": "EMT", - "T0M": "EMT", - "E4N": "E4N", - "NET": "E4N", - "F22": "F22", - "HXA": "F22", - "GXJ": "GXJ", - "I0E": "GXJ", - "N2B": "N2B", - "PYJ": "N2B", - "NC": "NME", - "NME": "NME", - "MLY": "MLY", - "TRG": "MLY", - "R5A": "R5A", - "R5B": "R5A", - "3MU": "UR3", - "UR3": "UR3", - "VSB": "VSB", - "VSE": "VSB", - "AY0": "AY0", - "PTC": "AY0", - "4OC": "M4C", - "M4C": "M4C", - "MGY": "MGY", - "SAR": "MGY", - "N9K": "N9K", - "YNM": "N9K", - "6MA": "A34", - "6MC": "A34", - "6MT": "A34", - "A34": "A34", - "A35": "A35", - "A40": "A35", - "6OO": "OKQ", - "OKQ": "OKQ", - "0AV": "A2M", - "A2M": "A2M", - "A39": "A2M", - "MAM": "MAM", - "MMA": "MAM", - "MBG": "MBG", - "MGA": "MBG", - "6OG": "G32", - "G32": "G32", - "0CR": "0CR", - "1CR": "0CR", - "3DQ": "3DQ", - "9ZT": "3DQ", - "4RR": "ROL", - "4SR": "ROL", - "ROL": "ROL", - "1IR": "1IR", - "1IS": "1IR", - "GB": "PPM", - "PPM": "PPM", - "577": "IIM", - "IIM": "IIM", - "CYM": "CYM", - "SMC": "CYM", - "0ZO": "K7J", - "K7J": "K7J", - "AYG": "AYG", - "PIA": "AYG", - "CRW": "CRW", - "MDO": "CRW", - "YKM": "YKM", - "YKP": "YKM", - "WH7": "WH7", - "WLD": "WH7", - "PGO": "PGO", - "PGQ": "PGO", - "HBI": "HBI", - "HBL": "HBI", - "BH4": "BH4", - "H4B": "BH4", - "THB": "BH4", - "98": "986", - "986": "986", - "PYH": "PYH", - "PYL": "PYH", - "JQL": "JQL", - "JRC": "JQL", - "KOL": "KOL", - "MER": "KOL", - "1GL": "BRI", - "BRI": "BRI", - "6CT": "T32", - "T32": "T32", - "MEP": "MEP", - "T23": "MEP", - "AGL": "AGL", - "RV7": "AGL", - "G6D": "G6D", - "GLW": "G6D", - "5SA": "ARE", - "ARE": "ARE", - "DDB": "DDB", - "MDA": "DDB", - "53P": "QB4", - "5P8": "QB4", - "QB4": "QB4", - "STO": "STO", - "STU": "STO", - "8MI": "INH", - "INH": "INH", - "DLA": "DLA", - "LAC": "DLA", - "AMV": "AMV", - "MMR": "AMV", - "DHO": "DHO", - "DXC": "DHO", - "HP3": "HP3", - "PGR": "HP3", - "HPB": "HPB", - "PR0": "HPB", - "TB9": "TB9", - "TRB": "TB9", - "RAA": "RAA", - "RAM": "RAA", - "MFA": "MFA", - "MFU": "MFA", - "AFL": "AFL", - "FUL": "AFL", - "APG": "APG", - "SAA": "APG", - "ETH": "ETH", - "OET": "ETH", - "HGC": "HGC", - "MMC": "HGC", - "PC": "POC", - "POC": "POC", - "COE": "COE", - "MOT": "COE", - "MPS": "MPS", - "SOM": "MPS", - "GER": "GER", - "TTH": "GER", - "TBM": "TBM", - "TMB": "TBM", - "PDL": "PDL", - "PP3": "PDL", - "AMA": "AMA", - "PLA": "AMA", - "THQ": "THQ", - "TZP": "THQ", - "RBZ": "RBZ", - "RIC": "RBZ", - "MDI": "MDI", - "N0U": "MDI", - "6LX": "MJQ", - "MJQ": "MJQ", - "AQZ": "AQZ", - "RNY": "AQZ", - "263": "263", - "267": "263", - "NEV": "NEV", - "NIV": "NEV", - "NVP": "NEV", - "PYD": "PYD", - "YF1": "PYD", - "8MG": "G33", - "G33": "G33", - "0SN": "0SN", - "88N": "0SN", - "7CP": "MB0", - "MB0": "MB0", - "HIC": "HIC", - "MH1": "HIC", - "NEM": "HIC", - "HDZ": "HDZ", - "TFH": "HDZ", - "DIS": "DIS", - "HOH": "DIS", - "MTO": "DIS", - "O": "DIS", - "OX": "DIS", - "OXO": "DIS", - "QTR": "DIS", - "F2O": "F2O", - "FEO": "F2O", - "O2": "OXY", - "OXY": "OXY", - "2MO": "MM4", - "MM4": "MM4", - "IPS": "IPS", - "PI": "IPS", - "H2S": "H2S", - "S": "H2S", - "BR": "BRO", - "BRO": "BRO", - "2SI": "IDS", - "IDS": "IDS", - "BHD": "BHD", - "DOH": "BHD", - "I7P": "I7P", - "UEV": "I7P", - "CL": "CLO", - "CLO": "CLO", - "F": "FLO", - "FLO": "FLO", - "MH6": "MH6", - "SRI": "MH6", - "672": "Q72", - "Q72": "Q72", - "424": "YJC", - "YJC": "YJC", - "1MA": "MAD", - "MAD": "MAD", - "IDO": "IDO", - "IOD": "IDO", - "NGN": "NGN", - "NH4": "NGN", - "NMO": "NMO", - "NO": "NMO", - "SO4": "SO4", - "SUL": "SO4", - "HYD": "HYD", - "OH": "HYD", - "B51": "B51", - "WCC": "B51", - "ZN": "ZN2", - "ZN2": "ZN2", - "FIB": "FIB", - "IBF": "FIB", - "PGS": "PGS", - "SPG": "PGS", - "ADE": "ADE", - "ANE": "ADE", - "NEW": "NEW", - "PCQ": "NEW", - "EGG": "EGG", - "KDH": "EGG", - "G1T": "G1T", - "G1Z": "G1T", - "B7D": "B7D", - "TRU": "B7D", - "P5P": "P5P", - "PR5": "P5P", - "9HE": "KS1", - "KS1": "KS1", - "DHY": "DHY", - "HAA": "DHY", - "DAH": "DAH", - "TY3": "DAH", - "LNR": "LNR", - "LT4": "LNR", - "NAD": "NAD", - "NAH": "NAD", - "EHP": "EHP", - "MTY": "EHP", - "PIX": "PIX", - "TF6": "PIX", - "CSY": "CSY", - "GYS": "CSY", - "FA": "FOL", - "FOL": "FOL", - "STY": "STY", - "TYS": "STY", - "69X": "YAP", - "YAP": "YAP", - "345": "CBP", - "CBP": "CBP", - "DGH": "DGH", - "GHP": "DGH", - "NTY": "DGH", - "CQR": "CQR", - "CR2": "CQR", - "WAK": "WAK", - "WB8": "WAK", - "KSB": "KSB", - "QHL": "KSB", - "BAP": "BAP", - "BP": "BAP", - "BPC": "BAP", - "6AB": "BE2", - "BE2": "BE2", - "L0F": "L0F", - "L0H": "L0F", - "BEZ": "BEZ", - "BOX": "BEZ", - "F9V": "F9V", - "FSL": "F9V", - "1PY": "PPY", - "PPY": "PPY", - "BGG": "BGG", - "P6S": "BGG", - "BZO": "BZO", - "CBZ": "BZO", - "IOX": "IOX", - "PMS": "IOX", - "PCS": "PCS", - "PHM": "PCS", - "HFA": "HFA", - "LLA": "HFA", - "LOF": "HFA", - "HPH": "HPH", - "TPH": "HPH", - "FRF": "FRF", - "PUK": "FRF", - "0AC": "FOG", - "FOG": "FOG", - "638": "XV6", - "XV6": "XV6", - "BIC": "BIC", - "MOL": "BIC", - "3DB": "D8W", - "D8W": "D8W", - "PG9": "PG9", - "PGY": "PG9", - "119": "P4P", - "P4P": "P4P", - "86Q": "DRG", - "DRG": "DRG", - "89E": "LIG", - "LIG": "LIG", - "CYP": "CYP", - "GPR": "CYP", - "K0I": "K0I", - "URY": "K0I", - "LTR": "LTR", - "TRP": "LTR", - "V70": "V70", - "V7F": "V70", - "QNC": "QNC", - "QND": "QNC", - "0TN": "RKP", - "RKP": "RKP", - "QUI": "QUI", - "QX": "QUI", - "AC4": "AC4", - "AMZ": "AC4", - "D5M": "D5M", - "DA": "D5M", - "A": "AMP", - "AMP": "AMP", - "0DG": "DFG", - "DFG": "DFG", - "0G": "LG", - "LG": "LG", - "DCG": "DCG", - "DG": "DCG", - "DGP": "DCG", - "DI": "OIP", - "OIP": "OIP", - "5GP": "CPG", - "CPG": "CPG", - "G": "CPG", - "G25": "CPG", - "I": "IMP", - "IMP": "IMP", - "GCP": "GCP", - "GTO": "GCP", - "GNP": "GNP", - "GTN": "GNP", - }, - ) - monkeypatch.setattr( - "plinder.data.utils.annotations.ligand_utils.COFACTORS", - { - "JM2", - "PCD", - "CAA", - "NCA", - "HEM", - "0XU", - "RGE", - "NAX", - "LPB", - "AMX", - "TXP", - "SCO", - "MQ7", - "FNS", - "MQ9", - "FMN", - "PLR", - "CHL", - "WSD", - "TD7", - "TPQ", - "SDX", - "GVX", - "TS5", - "EB4", - "ENA", - "NDE", - "1CZ", - "2MD", - "CYP", - "1JO", - "PP9", - "GS8", - "TDM", - "C2F", - "NPL", - "UP3", - "8EL", - "AMP", - "4LU", - "1DG", - "DCQ", - "2CP", - "GBP", - "NAQ", - "HDE", - "62X", - "NDP", - "CCH", - "TD6", - "SCD", - "TXD", - "UU3", - "M6T", - "3HC", - "SFD", - "NHM", - "66S", - "TMP", - "ODP", - "3CP", - "CLA", - "CL7", - "1TY", - "NBD", - "C", - "COM", - "T6F", - "MSS", - "1CV", - "MCN", - "ASC", - "SA8", - "WCA", - "S1T", - "GF5", - "IRF", - "CPG", - "MCA", - "36A", - "ISW", - "GIP", - "TYQ", - "PMP", - "CL2", - "FCG", - "UTP", - "1R4", - "NAP", - "HDD", - "FDE", - "GTX", - "CDP", - "CA8", - "1U0", - "76K", - "GGC", - "AGQ", - "XP9", - "FON", - "ZEM", - "1YJ", - "PQN", - "76J", - "IBG", - "UEG", - "5GP", - "1VU", - "3H9", - "LPM", - "BCA", - "VWW", - "FAS", - "DPM", - "3CD", - "NA0", - "TTP", - "6J4", - "DT", - "48T", - "GTS", - "4LS", - "TDT", - "HMG", - "THG", - "TDL", - "6NR", - "FSH", - "G27", - "TGG", - "THV", - "BYC", - "2TP", - "FA8", - "EN0", - "HXC", - "2NE", - "T1G", - "DU", - "7AP", - "THM", - "TZD", - "N1T", - "PAU", - "ADP", - "DLZ", - "A3D", - "COB", - "ECH", - "TYY", - "MTV", - "7HE", - "29P", - "HAS", - "G", - "3AA", - "UMP", - "BTN", - "H4B", - "YNC", - "CA5", - "C5P", - "0ET", - "CA3", - "C25", - "TP8", - "FOZ", - "CNC", - "TC6", - "DDH", - "4CA", - "MNH", - "U", - "76L", - "G25", - "JM7", - "FDA", - "A", - "07D", - "P2Q", - "NHW", - "COT", - "4YP", - "DTB", - "GSN", - "COO", - "ZNH", - "BPH", - "NPW", - "COH", - "GDS", - "L9X", - "DG1", - "PAD", - "MNR", - "GDN", - "SX0", - None, - "NDC", - "BCL", - "COW", - "TXZ", - "8EF", - "WWF", - "MGD", - "PZP", - "GRA", - "HTL", - "FRE", - "0HH", - "FAA", - "TP7", - "AT5", - "BYG", - "SRM", - "MDE", - "EAD", - "TPU", - "4CO", - "P3Q", - "TRQ", - "GMP", - "M43", - "LEE", - "CTP", - "PXL", - "ABY", - "SAH", - "HIF", - "GTY", - "TT8", - "SMM", - "COF", - "ZBF", - "FAM", - "T", - "COA", - "8ID", - "GSF", - "76M", - "DN4", - "FAD", - "5AU", - "0WD", - "COZ", - "CRW", - "76H", - "SND", - "FNR", - "UDP", - "BHS", - "6V0", - "CYC", - "ATP", - "BYT", - "EPY", - "THF", - "GSH", - "MQE", - "COY", - "HAX", - "1JP", - "37H", - "NBP", - "ZID", - "MFN", - "SOP", - "TPP", - "PDP", - "PQQ", - "GPR", - "GTP", - "CA6", - "DHE", - "SHT", - "F42", - "0Y1", - "MTQ", - "H2B", - "6FA", - "6HE", - "THB", - "CP3", - "SFG", - "CAJ", - "DCC", - "TD9", - "8PA", - "NDO", - "THY", - "N3T", - "MH0", - "FMI", - "AP0", - "GBI", - "UQ1", - "H4M", - "LZ6", - "FCX", - "NAJ", - "MDO", - "FAE", - "S0N", - "HBI", - "SAD", - "TDK", - "TDW", - "18W", - "BIO", - "UQ2", - "1C4", - "GPS", - "FED", - "NHQ", - "TQQ", - "XP8", - "2TY", - "G9R", - "ACO", - "TDP", - "UAH", - "U5P", - "ESG", - "FAO", - "7MQ", - "CND", - "D7K", - "8FL", - "CO6", - "PUB", - "HCC", - "SAE", - "AHE", - "4IK", - "Y7Y", - "488", - "TAP", - "RAW", - "DCA", - "BOB", - "NAI", - "TXE", - "HEC", - "BCR", - "MYA", - "HBL", - "P1H", - "01A", - "UQ6", - "ATA", - "NHD", - "B12", - "FAB", - "1HA", - "MCD", - "TYD", - "SAM", - "8JD", - "PLQ", - "GTD", - "UP2", - "0UM", - "NOP", - "GBX", - "COD", - "THD", - "NAH", - "NAE", - "CMC", - "4AB", - "SCA", - "8EO", - "ZOZ", - "BH4", - "OXK", - "MLC", - "LPA", - "ICY", - "GSM", - "HEA", - "1CP", - "1XE", - "GNB", - "JM5", - "XAX", - "P5F", - "H4Z", - "EEM", - "GDP", - "PLP", - "FFO", - "SH0", - "PNY", - "5GY", - "MQ8", - "EQ3", - "CO8", - "HSC", - "BSJ", - "MTE", - "CIC", - "SE8", - "PEB", - "TPZ", - "GTB", - "0AF", - "0Y2", - "R1T", - "MPL", - "01K", - "U25", - "CL0", - "HQE", - "RBF", - "FYN", - "CMX", - "THW", - "HAG", - "MEF", - "CL1", - "PXP", - "TAD", - "T5X", - "N01", - "1TP", - "TD8", - "MMP", - "K15", - "NAD", - "RFL", - "BTI", - "BCO", - "GSO", - "UQ5", - "GSB", - "0HG", - "3GC", - "NMX", - "THH", - "HEB", - "PNS", - "TOQ", - "F43", - "8Q1", - "8Z2", - "CAO", - "TPW", - "BCB", - "0Y0", - "LNC", - }, - ) - monkeypatch.setattr( - "plinder.data.utils.annotations.ligand_utils.ARTIFACTS", - { - "OTE", - "BNG", - "GYF", - "MES", - "HEX", - "PX2", - "2OP", - "UMQ", - "1PS", - "SIN", - "VX", - "C8E", - "ETF", - "GOL", - "CAC", - "O4B", - "MBO", - "9YU", - "PC8", - "OGA", - "PVO", - "CN6", - "PGR", - "DDR", - "AGA", - "33O", - "B3H", - "MPD", - "DTU", - "P03", - "CXS", - "QLB", - "KDO", - "3HR", - "DIO", - "THE", - "RG1", - "F09", - "HTG", - "SP5", - "BOX", - "CN3", - "L1P", - "DOX", - "MPO", - "TAM", - "1PG", - "543", - "7PE", - "FW5", - "PE5", - "TAR", - "LMT", - "DHJ", - "PX4", - "FJO", - "P25", - "P33", - "HT3", - "Y69", - "TRD", - "DMF", - "DTT", - "P4G", - "MRD", - "PGO", - "144", - "PGE", - "TCN", - "MYR", - "MAC", - "LMU", - "L3P", - "P22", - "TCE", - "BET", - "HTO", - "ETX", - "BAM", - "DTD", - "DAO", - "TRS", - "CE1", - "LUT", - "TOE", - "PEG", - "HP3", - "1PE", - "7PH", - "TLA", - "PE4", - "DKA", - "P2K", - "PA8", - "1EM", - "7I7", - "P6G", - "IPH", - "BE7", - "QGT", - "L4P", - "9JE", - "DMR", - "BDN", - "TMA", - "I6P", - "DD9", - "MC3", - "XPE", - "OP2", - "SOG", - "PG0", - "E4N", - "PD7", - "DET", - "NBN", - "PE7", - "CIT", - "HZA", - "N8E", - "BEN", - "32M", - "LI1", - "DR6", - "D12", - "P4C", - "LIN", - "BU1", - "C10", - "D22", - "CRC", - "2NV", - "CHT", - "CXE", - "XP4", - "PE8", - "DDQ", - "15P", - "L2P", - "PTD", - "148", - "EAP", - "12P", - "NHE", - "TBU", - "PIG", - "MGY", - "HSH", - "IHS", - "LAU", - "HAI", - "13P", - "PG5", - "DHB", - "FTT", - "3V3", - "SAR", - "ICI", - "3PG", - "PUT", - "LAC", - "SGM", - "NET", - "D1D", - "PG6", - "7PG", - "2JC", - "2DP", - "PQE", - "LMR", - "CPS", - "IOX", - "HSG", - "BXC", - "EPE", - "02U", - "MB3", - "L2C", - "DTV", - "BOG", - "NEX", - "PE3", - "PHQ", - "PE6", - "CE9", - "C14", - "CD4", - "SRT", - "GLV", - "BHG", - "I3C", - "DLA", - "ICT", - "TAU", - "RWB", - "LDA", - "PGF", - "7E8", - "HCA", - "QJE", - "7E9", - "BTB", - "SPZ", - "HED", - "PGQ", - "P1O", - "TEA", - "IMD", - "MP3", - "JDJ", - "HTH", - "V1J", - "6JZ", - "AUC", - "DEP", - "M2M", - "PG8", - "MBN", - "CAQ", - "B4T", - "HAE", - "P15", - "UND", - "9FO", - "DMI", - "XPA", - "PEP", - "TFA", - "HEZ", - "MLA", - "DRE", - "PEX", - "AKR", - "XAT", - "PLC", - "SPD", - "MLT", - "F4R", - "SPM", - "BGL", - "AAE", - "AE3", - "P3G", - "SPJ", - "CRY", - "PPI", - "PEU", - "MAE", - "PHB", - "DPG", - "B4X", - "OCT", - "ETE", - "BNZ", - "IHP", - "PMS", - "B3P", - "PQ9", - "3SY", - "AE4", - "CAD", - "2PE", - "OES", - "GVT", - "K12", - "PG4", - "EEE", - "SQU", - "D10", - "BCN", - "7N5", - "90A", - "ME2", - "KGN", - "16P", - "MLI", - "6PE", - "P4K", - "BEZ", - "PL9", - "HP6", - }, - ) - monkeypatch.setattr( - "plinder.data.utils.annotations.ligand_utils.KINASE_INHIBITORS", - { - "4DF", - "2NR", - "36R", - "XJ0", - "S4Q", - "8BQ", - "79Y", - "ZOI", - "EBD", - "1JI", - "7AE", - "07Z", - "PZ4", - "0WM", - "JRQ", - "YD7", - "RMF", - "MZJ", - "LM4", - "XZN", - "3EY", - "GW7", - "469", - "2KD", - "H52", - "Z67", - "C5Z", - "P30", - "29Z", - "Y5D", - "EK9", - "YIR", - "MT3", - "1UK", - "74K", - "A9R", - "N4D", - "OJ5", - "78W", - "SBC", - "6UY", - "AWK", - "8GR", - "I2O", - "AAX", - "SU2", - "9XA", - "1EH", - "HK0", - "Q17", - "30K", - "I0A", - "6HH", - "E5J", - "T2O", - "FW3", - "8E1", - "5X4", - "EUX", - "MMH", - "L10", - "47X", - "SIQ", - "YEE", - "UNJ", - "ZRK", - "AMP", - "46C", - "R5D", - "86K", - "HCW", - "Q1Y", - "YIX", - "7GV", - "BI1", - "C6F", - "7DZ", - "8BS", - "6NP", - "C2V", - "4JZ", - "AFE", - "Q9B", - "4MK", - "NN5", - "0HD", - "X85", - "SCW", - "A3K", - "L09", - "2QT", - "FS8", - "1UJ", - "SS6", - "X6G", - "0VG", - "B7V", - "XL5", - "QX1", - "8FX", - "7VT", - "C85", - "63N", - "AVZ", - "IFC", - "4UT", - "6PF", - "DXM", - "7ZC", - "5BN", - "ZY6", - "R4V", - "AP2", - "UIW", - "54Z", - "F8I", - "OQM", - "C52", - "4VD", - "DBQ", - "1D1", - "TV4", - "NU6", - "EA7", - "X6B", - "KZJ", - "3UI", - "R73", - "6NC", - "0B0", - "SQM", - "VEH", - "X69", - "JGG", - "AFM", - "4RM", - "0JJ", - "6KC", - "1YZ", - "5JE", - "OOU", - "R1W", - "3QS", - "A8H", - "DO0", - "8UV", - "WI2", - "NBW", - "X40", - "CK9", - "J8S", - "2HW", - "85A", - "QUP", - "MHR", - "4CV", - "EZJ", - "P01", - "363", - "TID", - "CUR", - "EHB", - "S92", - "OQJ", - "Y8L", - "GUB", - "090", - "4Z8", - "28D", - "5W6", - "8GU", - "WB8", - "NQ2", - "J9D", - "I3K", - "1JC", - "QH1", - "EX9", - "13V", - "514", - "UT5", - "YQ2", - "4FT", - "P02", - "FB8", - "07J", - "JSN", - "SM6", - "X3V", - "FOI", - "6H3", - "60K", - "T3C", - "4ZB", - "J3H", - "T1T", - "HZ6", - "GCC", - "MTW", - "B4U", - "7HK", - "3BM", - "16X", - "50H", - "Z3A", - "LB4", - "74L", - "9IS", - "XPY", - "C87", - "ACK", - "5Y6", - "3RW", - "IXQ", - "1IJ", - "LIA", - "VFC", - "0K0", - "19A", - "5JG", - "HVH", - "H5R", - "QXW", - "E91", - "37Q", - "Y3L", - "YIS", - "YOR", - "JOZ", - "JSW", - "EVK", - "3GF", - "253", - "DLN", - "QP7", - "CX4", - "B4J", - "1CK", - "EDJ", - "P47", - "857", - "KA7", - "R6R", - "0F4", - "EMW", - "CKG", - "TJF", - "RO6", - "23D", - "319", - "FGE", - "TBK", - "NU5", - "547", - "70I", - "U0T", - "ASH", - "H8H", - "J3N", - "J6F", - "38M", - "L90", - "CGI", - "C75", - "6RF", - "8OV", - "2QV", - "19K", - "4W5", - "Z68", - "HUH", - "SVK", - "6QZ", - "4VQ", - "7TH", - "GYL", - "31Y", - "BR2", - "3Z2", - "NRA", - "ON6", - "K88", - "AXU", - "PIT", - "OWQ", - "D15", - "NJD", - "F4A", - "C4E", - "04Z", - "ZOQ", - "KSH", - "OY2", - "E0X", - "K0E", - "5GX", - "MWF", - "LZC", - "770", - "BNB", - "24Z", - "7AV", - "QI6", - "P49", - "4Q2", - "PY1", - "AGI", - "DJX", - "X6K", - "LOQ", - "YY7", - "MKP", - "IEA", - "Q2H", - "AGY", - "1LE", - "G6K", - "QQ2", - "BD2", - "I17", - "OOM", - "ACP", - "R74", - "NBK", - "N14", - "EXX", - "54G", - "A6Z", - "TXV", - "X01", - "5ZH", - "FLZ", - "3E4", - "IDZ", - "P31", - "8I1", - "14K", - "6Z2", - "E2O", - "QG5", - "GEN", - "SVQ", - "DW1", - "Z30", - "LIE", - "N9R", - "2OQ", - "2WJ", - "3WN", - "X7G", - "VZG", - "54J", - "4E3", - "KR8", - "QZ8", - "2M2", - "FPW", - "0CK", - "SM7", - "DF1", - "99Z", - "HVK", - "HK6", - "PDR", - "4T6", - "CD2", - "CG4", - "21Z", - "6BF", - "R7D", - "NL2", - "FZJ", - "JZH", - "3G5", - "SMH", - "LY4", - "T2A", - "RSW", - "V3S", - "92C", - "R4Y", - "N53", - "VGK", - "3ND", - "14S", - "9A6", - "NQB", - "0GW", - "UB6", - "N0V", - "26L", - "5TF", - "1RJ", - "027", - "0MY", - "HVQ", - "M0R", - "X86", - "KLP", - "1K2", - "ZRR", - "XGK", - "BA1", - "X19", - "5Q4", - "UOE", - "7GT", - "7GJ", - "06N", - "VJK", - "IQ6", - "A65", - "SWD", - "29L", - "8LN", - "K0B", - "CK7", - "N17", - "30E", - "7KF", - "AAZ", - "9D8", - "LWH", - "FQM", - "LU2", - "EQT", - "NIL", - "EJP", - "M97", - "4ST", - "C2J", - "DFZ", - "I6C", - "5XV", - "FH0", - "9HR", - "HET", - "0VN", - "X21", - "5SZ", - "DZC", - "YY4", - "RKO", - "FBY", - "446", - "RYU", - "0OP", - "ATU", - "2SC", - "10Z", - "5DN", - "3HK", - "IPK", - "622", - "8IQ", - "WFE", - "ZSB", - "L9M", - "F4G", - "MMG", - "G8E", - "MP6", - "ZRT", - "7G9", - "NAR", - "RXZ", - "877", - "3QH", - "P16", - "IM9", - "XW3", - "KDI", - "V55", - "H7C", - "RVH", - "362", - "5VC", - "UZD", - "K6Y", - "19R", - "OZ8", - "5U4", - "3YO", - "BRQ", - "77V", - "5YZ", - "D0A", - "KWD", - "SQ4", - "IE8", - "FSS", - "VZ2", - "BXJ", - "3P0", - "BWP", - "RO9", - "MJG", - "A6E", - "5OE", - "13K", - "R9B", - "GYQ", - "FER", - "JTQ", - "KC0", - "XZ9", - "WZZ", - "SFY", - "3DL", - "YXJ", - "F29", - "TOV", - "0SX", - "Y4O", - "A27", - "DZO", - "IM6", - "CKJ", - "O3E", - "9Y5", - "7QQ", - "L0M", - "7GB", - "RHZ", - "3NC", - "912", - "6V4", - "5IE", - "7M0", - "P37", - "DT2", - "ZRL", - "HYW", - "6DC", - "580", - "0BG", - "8FI", - "04G", - "E28", - "KRQ", - "4B0", - "FDW", - "POX", - "P5J", - "VGH", - "7X5", - "2C3", - "8DS", - "W39", - "GUQ", - "35F", - "ZZM", - "A5Z", - "HC4", - "36N", - "UC8", - "796", - "F8H", - "CKN", - "4T5", - "NR9", - "481", - "AD5", - "22T", - "GD9", - "8OK", - "HKK", - "3DK", - "B0K", - "R6H", - "JLC", - "4S3", - "596", - "UH3", - "38O", - "2R4", - "80U", - "8OT", - "M1J", - "6ID", - "0XG", - "KJD", - "M4G", - "0SO", - "URF", - "JKW", - "UU6", - "LDN", - "SO9", - "HVE", - "QWQ", - "T3U", - "222", - "P5V", - "JVD", - "LTY", - "L12", - "TVT", - "1TT", - "L4Y", - "VP7", - "31W", - "8OW", - "QZ2", - "ZOV", - "61Y", - "628", - "W2R", - "59U", - "614", - "65C", - "1HK", - "8X2", - "E3Z", - "QB8", - "SCE", - "0C5", - "LOK", - "0XH", - "8CC", - "L0Q", - "ITQ", - "TZX", - "4SB", - "390", - "J2V", - "QF8", - "K4W", - "C98", - "C96", - "ZD6", - "8GS", - "9XK", - "R6V", - "UJ3", - "H4K", - "35Z", - "86E", - "CJ5", - "1WY", - "VIN", - "IXH", - "G5D", - "6CY", - "4RJ", - "L91", - "30T", - "5Y8", - "3YV", - "C7Y", - "1R9", - "7EY", - "A7K", - "5XH", - "UCW", - "0TZ", - "FU6", - "7KD", - "215", - "SWN", - "6YD", - "WXV", - "LI8", - "37J", - "AK7", - "2BZ", - "RYA", - "WFY", - "0SW", - "RXE", - "YAM", - "9CT", - "3XL", - "4O7", - "9VS", - "GEZ", - "OOQ", - "M92", - "CCK", - "VEW", - "6UK", - "L7C", - "XZS", - "MH7", - "QS7", - "YPH", - "B5E", - "QFK", - "6P8", - "QDW", - "DTD", - "5BS", - "60O", - "679", - "UNW", - "P36", - "6JV", - "WYE", - "38P", - "ULY", - "J2M", - "CK1", - "3PS", - "9AJ", - "96Y", - "JMZ", - "0FK", - "W7W", - "02Z", - "VSB", - "CK3", - "O43", - "EBI", - "9JI", - "G4E", - "0Q2", - "BI9", - "G0K", - "5UY", - "8ET", - "WY3", - "V5U", - "M33", - "9FS", - "34I", - "3Q6", - "P5W", - "M19", - "S5E", - "7CS", - "4UQ", - "N5Q", - "706", - "TC0", - "KEP", - "QIG", - "HYK", - "KHH", - "JFS", - "V6E", - "66X", - "KJR", - "5E2", - "ME3", - "EVQ", - "0VF", - "7XU", - "25J", - "MMY", - "L1K", - "QMN", - "K11", - "S9H", - "N58", - "JNZ", - "QBB", - "5W9", - "66L", - "HJF", - "932", - "BVI", - "3RZ", - "1J5", - "467", - "4FJ", - "3JZ", - "0SQ", - "0C9", - "N99", - "71M", - "XU0", - "0Y4", - "B0R", - "OOS", - "B6N", - "O44", - "W4D", - "S4W", - "BXI", - "464", - "XAZ", - "BEN", - "L3G", - "6T2", - "US0", - "6GE", - "5DF", - "IRE", - "BFF", - "GHT", - "0FS", - "24N", - "EYI", - "14I", - "L64", - "430", - "30G", - "X14", - "718", - "90W", - "WZU", - "LWX", - "0C8", - "FCS", - "38Z", - "FZ9", - "P7B", - "ZS2", - "M3A", - "91E", - "KEY", - "W38", - "O23", - "DFY", - "JH8", - "6H4", - "GJG", - "A07", - "J8A", - "RNF", - "LI7", - "AW5", - "MQY", - "C72", - "L9N", - "IR2", - "2HB", - "KVC", - "NHU", - "FTU", - "L3Z", - "35W", - "FLJ", - "X2L", - "SYY", - "0S0", - "OQS", - "KE7", - "64M", - "X3S", - "UF8", - "3U1", - "FML", - "AQ4", - "QO7", - "HVB", - "O7I", - "C74", - "1HX", - "CUE", - "904", - "FZ8", - "AWF", - "751", - "IQU", - "P66", - "IQR", - "KSS", - "A5B", - "DVJ", - "5BM", - "1XZ", - "5ID", - "1V5", - "3Q2", - "B6J", - "R93", - "M9T", - "SWB", - "35X", - "3B3", - "YXD", - "I4M", - "NXI", - "R0X", - "F67", - "0SC", - "JRJ", - "N13", - "4VE", - "SQG", - "B1E", - "38W", - "AT8", - "C53", - "PVB", - "SQ7", - "CPB", - "AAV", - "HKN", - "8MZ", - "Q18", - "SQY", - "YO4", - "FE7", - "0V0", - "88Z", - "3C8", - "OZN", - "EZV", - "AZ7", - "E6Q", - "R85", - "ZZP", - "R28", - "5Y2", - "R1L", - "979", - "3YX", - "D6Q", - "QFO", - "KIH", - "8ZT", - "79T", - "BHO", - "LVU", - "FH3", - "VSA", - "7GX", - "5OQ", - "G93", - "Q7H", - "YK2", - "855", - "R1S", - "8MW", - "3DW", - "TJZ", - "112", - "8XN", - "DT1", - "QU6", - "437", - "X66", - "RP9", - "DFW", - "3VE", - "X8J", - "LZE", - "BZ9", - "7H4", - "9T6", - "SQK", - "N4F", - "1NP", - "77A", - "EZN", - "ESN", - "FP3", - "9KO", - "0OM", - "XHM", - "EQZ", - "627", - "SZW", - "74J", - "5CV", - "VY0", - "2GI", - "B5S", - "6XL", - "EAZ", - "E6T", - "T4X", - "R7O", - "Q8T", - "AM5", - "6SF", - "FPH", - "ZOP", - "609", - "ZGD", - "7IH", - "FAZ", - "T92", - "E46", - "JND", - "6DA", - "7HF", - "1UL", - "7Z0", - "3AM", - "LW3", - "RPW", - "4V9", - "A9W", - "6BB", - "R48", - "AS6", - "NVX", - "7GL", - "R70", - "H6W", - "M0Y", - "3Q4", - "0FR", - "SNJ", - "44X", - "094", - "WEJ", - "F7I", - "E2F", - "SRJ", - "MS9", - "29A", - "2X6", - "2PU", - "G6T", - "KEV", - "KQ7", - "A4B", - "S26", - "AK8", - "AU8", - "MW8", - "T20", - "3Q3", - "LHJ", - "NKJ", - "RUW", - "FC8", - "G4H", - "3EW", - "6FB", - "2RL", - "SQV", - "NW1", - "8XB", - "D5Q", - "VNS", - "QFV", - "IG3", - "6CD", - "WP1", - "P1E", - "BW1", - "OOV", - "0FN", - "26Z", - "ZXH", - "7X7", - "PUP", - "71G", - "VJZ", - "K4A", - "NK0", - "OV5", - "J0E", - "A58", - "3RC", - "75H", - "0TP", - "CK6", - "SVH", - "YT0", - "X88", - "RUI", - "03K", - "DYQ", - "55S", - "GXA", - "460", - "AWJ", - "NTQ", - "8N2", - "KHR", - "OT5", - "CG5", - "KJ8", - "L0C", - "H2K", - "VLV", - "IRD", - "6T5", - "3QX", - "SMY", - "1BQ", - "4S2", - "QMY", - "IC8", - "9IK", - "M0F", - "YRZ", - "67U", - "NM7", - "XIN", - "0FY", - "C9O", - "0RF", - "S4E", - "9I5", - "6ZK", - "6HL", - "KAV", - "EVR", - "LAJ", - "4W1", - "LCW", - "0JE", - "99J", - "4K7", - "41B", - "DF3", - "2A2", - "IQ7", - "G4Y", - "T7Z", - "NNN", - "8E8", - "8M1", - "59N", - "8QK", - "D6I", - "Y5G", - "3R0", - "3A3", - "M1O", - "F8B", - "BQR", - "LY2", - "07R", - "2W6", - "3X7", - "6YE", - "66K", - "JSB", - "LOE", - "YK1", - "0WN", - "0PF", - "3SC", - "8OR", - "F8M", - "H3E", - "5XG", - "504", - "QKG", - "304", - "U0K", - "4IH", - "AX7", - "LCI", - "Z62", - "B96", - "SYP", - "L20", - "KES", - "373", - "L2V", - "P79", - "EVC", - "91K", - "734", - "86H", - "LI3", - "E1B", - "KF4", - "XIT", - "X06", - "1QO", - "20K", - "9FV", - "17V", - "K9Y", - "LGX", - "1J6", - "01I", - "4OK", - "G4N", - "KLM", - "3C3", - "XBJ", - "G8N", - "ZZN", - "45R", - "746", - "RXT", - "18E", - "T95", - "LU8", - "6UM", - "07C", - "9K5", - "B5G", - "84R", - "HRA", - "OOY", - "C4F", - "06Z", - "0SS", - "FLY", - "KIN", - "J4M", - "ICQ", - "WKC", - "WQ6", - "RJI", - "KSF", - "UF4", - "G92", - "0X6", - "LWJ", - "X03", - "8PV", - "A4U", - "UWZ", - "E52", - "OG5", - "MB9", - "CT7", - "XXK", - "1E8", - "H5I", - "T3M", - "GR9", - "F3W", - "DL1", - "1BU", - "YM8", - "PQ5", - "2I8", - "919", - "0FO", - "RJZ", - "H99", - "0LI", - "X64", - "6V5", - "4S1", - "DTQ", - "HDU", - "R3L", - "9O5", - "TWH", - "XM1", - "LZN", - "953", - "AK1", - "98D", - "1C7", - "9Y8", - "JMM", - "7KV", - "90K", - "CJT", - "3Q1", - "P0F", - "KUY", - "0F5", - "OQ8", - "VX6", - "1LC", - "L0F", - "EMO", - "SU6", - "FJI", - "NKZ", - "2D2", - "HHB", - "324", - "1O5", - "K0N", - "EZQ", - "ZUQ", - "QJI", - "729", - "5H2", - "RMX", - "LB5", - "Z86", - "351", - "3T3", - "5Z5", - "889", - "8ZW", - "X73", - "H7U", - "3NU", - "L0G", - "OG8", - "6BJ", - "R24", - "FI4", - "A", - "0G1", - "E63", - "8BP", - "J0B", - "31L", - "FRV", - "N8O", - "VX3", - "Y3I", - "STV", - "JX4", - "VEK", - "534", - "X9F", - "2K5", - "G0N", - "G2G", - "VXY", - "5W2", - "I5S", - "79C", - "F92", - "X07", - "4DO", - "AFV", - "QYE", - "YOS", - "1IX", - "ED8", - "FP4", - "NVV", - "839", - "0UU", - "8DW", - "WAL", - "9LL", - "H8K", - "ZYS", - "RTX", - "77C", - "MUJ", - "8LY", - "SVM", - "FEW", - "DVO", - "R0O", - "GWH", - "4WG", - "FAR", - "BV9", - "R25", - "RBQ", - "40L", - "8GQ", - "C5I", - "7U5", - "M61", - "DJ8", - "W9D", - "8V4", - "8PR", - "QFB", - "1UO", - "3U9", - "3K3", - "M56", - "T0L", - "GK1", - "7KC", - "BH9", - "8N5", - "ST8", - "U55", - "ATP", - "4T9", - "BR9", - "R7S", - "NKB", - "FTZ", - "748", - "YQY", - "8DV", - "3Z4", - "MR9", - "ODJ", - "OFZ", - "JWY", - "85V", - "0XZ", - "ZZK", - "WTP", - "6A6", - "G7K", - "1BM", - "4RV", - "3S1", - "20Z", - "032", - "584", - "ZZO", - "LCB", - "5JZ", - "U4W", - "Z6V", - "W3N", - "0C3", - "Q6W", - "OS1", - "HK9", - "AP9", - "NF5", - "PD1", - "8QB", - "F8P", - "5N4", - "3R1", - "8UB", - "HMW", - "X9I", - "Q9G", - "4DK", - "Y49", - "OZU", - "0O7", - "N61", - "IDV", - "6HJ", - "GQL", - "I9W", - "KZQ", - "DXK", - "738", - "QR7", - "NS9", - "VGM", - "N9G", - "9ZP", - "Z48", - "9FC", - "ZB9", - "4QX", - "NRR", - "O8T", - "1B4", - "24R", - "XEZ", - "5SF", - "3Z5", - "KIM", - "QDZ", - "79R", - "Z92", - "PXN", - "LZB", - "U8P", - "5JR", - "7YG", - "HGW", - "0WC", - "Z46", - "5WF", - "6G2", - "N7C", - "7KW", - "60B", - "L7O", - "QWW", - "0MX", - "L7W", - "5I9", - "M59", - "CAQ", - "J67", - "6SL", - "GKB", - "5QS", - "TW2", - "242", - "634", - "MRA", - "9NQ", - "P48", - "7CE", - "9WG", - "T6Q", - "8OH", - "RSI", - "406", - "YM3", - "TFA", - "UNL", - "ZQV", - "W4A", - "8BM", - "74Q", - "9OO", - "RMM", - "IIW", - "O6X", - "3WH", - "CQ3", - "D37", - "J07", - "66T", - "X67", - "1SB", - "4DT", - "BI5", - "9YY", - "YA7", - "80C", - "ZWE", - "5HK", - "A3E", - "KBM", - "R09", - "AQG", - "8DY", - "N15", - "86G", - "O21", - "YR7", - "UM4", - "E4S", - "5P6", - "07S", - "LZ1", - "TQA", - "DZ6", - "SIX", - "76Z", - "74N", - "ODO", - "HEW", - "B4B", - "HDY", - "VL1", - "ZL1", - "I5R", - "L7R", - "1BK", - "L0N", - "3TI", - "L51", - "RW6", - "QQC", - "T75", - "5NW", - "7AU", - "TJW", - "69Z", - "KK8", - "EJS", - "AU2", - "4OR", - "0SJ", - "2O6", - "2VT", - "G7W", - "2IJ", - "EDB", - "6QH", - "9QK", - "057", - "S69", - "A0X", - "FXB", - "517", - "358", - "A42", - "1C8", - "AX0", - "OEB", - "DXH", - "61E", - "D0S", - "862", - "52P", - "87B", - "7MJ", - "ANP", - "0WB", - "5PB", - "RC8", - "L1E", - "4OQ", - "BIM", - "VRV", - "42Q", - "0ST", - "495", - "AQ8", - "DUK", - "S3N", - "RFG", - "NZ5", - "EK3", - "N97", - "FG9", - "4CK", - "ZZG", - "4RU", - "F1S", - "3FV", - "EJY", - "0KD", - "2YK", - "F82", - "N0U", - "287", - "SL0", - "FEF", - "Z0O", - "AQE", - "5XJ", - "OVC", - "A96", - "HK4", - "2VX", - "10N", - "8ZQ", - "KE8", - "7IK", - "7TZ", - "LQQ", - "H3R", - "E8V", - "8ZH", - "6QY", - "0YJ", - "JK1", - "QIV", - "X36", - "76C", - "GDH", - "U82", - "Z6P", - "F10", - "RPS", - "82B", - "1EL", - "NB3", - "XSE", - "KEX", - "W3R", - "A5H", - "A6W", - "DFS", - "1N1", - "QDE", - "IHH", - "AGS", - "M2B", - "X9B", - "L1Z", - "S4T", - "7HD", - "CQ8", - "X44", - "1CD", - "5S8", - "LBE", - "H88", - "ADZ", - "CDK", - "6F2", - "AV9", - "5QQ", - "G9B", - "AFK", - "GJD", - "N41", - "65L", - "PYZ", - "OG2", - "36Q", - "B9C", - "R6S", - "EUN", - "LVF", - "0C6", - "HH5", - "18K", - "LZ2", - "9YV", - "4P4", - "74H", - "YQB", - "KH8", - "5H5", - "SGV", - "ZIP", - "A82", - "Q6K", - "809", - "GXK", - "L1X", - "BYZ", - "AJR", - "V4Z", - "IC2", - "X9H", - "E57", - "4J7", - "Q7Z", - "IB5", - "EK4", - "LKG", - "G4V", - "AFU", - "G02", - "CXS", - "50Z", - "5MT", - "FI3", - "CT8", - "EKU", - "WBT", - "QFQ", - "V0G", - "IZA", - "RUY", - "WJV", - "891", - "1N6", - "0CI", - "9ES", - "NXP", - "5Q3", - "HV2", - "N7B", - "0RX", - "3DV", - "F0E", - "HFS", - "50F", - "QQ1", - "63M", - "OFW", - "0JK", - "6GY", - "39Z", - "QIH", - "647", - "CJM", - "WGK", - "3FX", - "2HK", - "97B", - "ZYR", - "XYW", - "279", - "NHJ", - "U32", - "SB4", - "0O8", - "QAR", - "SU1", - "JZO", - "AUG", - "D94", - "41A", - "H8Z", - "6V3", - "1AO", - "3D3", - "WPH", - "C1V", - "QMV", - "0K1", - "1RA", - "EDH", - "JHW", - "NVB", - "3WR", - "CVY", - "CIG", - "8FY", - "H7K", - "I47", - "R6P", - "5X1", - "N78", - "SN4", - "S91", - "6UF", - "6K4", - "WNK", - "29Y", - "OL2", - "S9A", - "EXF", - "0OO", - "ZFS", - "QRR", - "5Y7", - "65R", - "7GI", - "6AE", - "4LO", - "JK3", - "D4Z", - "HOW", - "50D", - "WQK", - "OJL", - "052", - "BI3", - "T0X", - "L6A", - "RU9", - "76A", - "0KF", - "63E", - "16W", - "D42", - "0OK", - "F4N", - "LC0", - "47W", - "CK8", - "900", - "EK2", - "ZZL", - "G8B", - "KI7", - "10K", - "SKI", - "C0N", - "4HZ", - "2TT", - "G1W", - "HHW", - "TZ1", - "2WK", - "EGJ", - "VO7", - "4Y0", - "VSF", - "72B", - "7G7", - "MIH", - "R61", - "45B", - "VSY", - "LHL", - "A98", - "WTJ", - "G0E", - "OWN", - "13L", - "ODH", - "2WE", - "306", - "W47", - "SW5", - "RI8", - "EQW", - "A1K", - "CQU", - "6S1", - "4QE", - "K9T", - "QYK", - "C07", - "ZO6", - "F88", - "YRA", - "A28", - "OD1", - "9YQ", - "KSR", - "6CB", - "N5U", - "FGF", - "4WD", - "3E8", - "63A", - "MS7", - "IEO", - "HBM", - "DFN", - "X8D", - "AY4", - "9YE", - "B8L", - "KZL", - "3Z6", - "S22", - "19P", - "X20", - "KGZ", - "VFS", - "B4W", - "4VF", - "46K", - "8X7", - "LN4", - "15T", - "XV0", - "7X8", - "048", - "GW8", - "WG1", - "HOK", - "3O0", - "TIY", - "YTX", - "LIB", - "BI4", - "AK5", - "SJL", - "3C9", - "CWT", - "CCX", - "MH4", - "KHE", - "MK2", - "03Z", - "8IL", - "934", - "OD4", - "TBN", - "79O", - "YM7", - "LZM", - "633", - "8EN", - "3T8", - "O8Q", - "KHC", - "0F9", - "01P", - "S8W", - "VEN", - "WGF", - "3O4", - "R0N", - "A4N", - "50Y", - "TK5", - "KQK", - "N3F", - "EKH", - "XFE", - "92P", - "FHX", - "1Y6", - "XK9", - "HB9", - "NJV", - "YFV", - "9IV", - "2NQ", - "V81", - "FMK", - "X96", - "MWL", - "KF1", - "9HB", - "3HN", - "SC9", - "SAV", - "0JH", - "SCJ", - "JL2", - "LS4", - "T8L", - "9Z2", - "04L", - "6P6", - "T3E", - "QD2", - "LO8", - "349", - "R78", - "DUI", - "RQ9", - "422", - "SLY", - "LNH", - "07U", - "SQP", - "F87", - "G4W", - "KZM", - "F6J", - "Q8B", - "DKG", - "80E", - "FZ5", - "N1A", - "LZ4", - "Z20", - "ML8", - "3RA", - "G97", - "J30", - "SW7", - "TO7", - "3OV", - "73Q", - "3OK", - "BXM", - "Y7W", - "537", - "QM2", - "DRG", - "L8I", - "A5Q", - "F18", - "X0A", - "22Z", - "6Q1", - "F46", - "QL7", - "34W", - "6A7", - "3DX", - "79D", - "4K4", - "6VK", - "88O", - "AUH", - "W8U", - "A3F", - "F4C", - "RVQ", - "UGX", - "LPZ", - "4KT", - "4MH", - "AYS", - "3YT", - "ESJ", - "3RT", - "Q8K", - "ZLE", - "EG7", - "HKQ", - "1M3", - "SD5", - "1PP", - "HKI", - "M5W", - "SWK", - "21O", - "207", - "A9E", - "U6S", - "XY3", - "AAK", - "JRE", - "SNB", - "19Q", - "8GV", - "6NB", - "519", - "0U0", - "91X", - "2C4", - "WQ2", - "3DC", - "9WU", - "54F", - "IQY", - "R2S", - "1G0", - "BGE", - "KZI", - "AIZ", - "70T", - "PP2", - "BD4", - "LZ9", - "IRG", - "ABQ", - "2WC", - "FS9", - "9Z4", - "39P", - "38G", - "ERZ", - "G6J", - "KWP", - "1DT", - "0WH", - "C5W", - "OL8", - "YCF", - "1HW", - "UES", - "5E5", - "FH5", - "UEX", - "F3Z", - "Y3O", - "N7K", - "D05", - "3V0", - "03P", - "S4Z", - "0NT", - "5WE", - "LXX", - "KRL", - "QRD", - "LZ3", - "6PV", - "SB2", - "1N3", - "BI2", - "SV5", - "UPX", - "N6Z", - "DF2", - "4DL", - "38R", - "62E", - "C9Z", - "3UR", - "3ZC", - "HQB", - "LI4", - "9WS", - "55E", - "CJQ", - "V04", - "9OF", - "FJ0", - "4KA", - "86L", - "8KF", - "ZXP", - "09H", - "WEG", - "8TN", - "J4B", - "LJF", - "73T", - "QXZ", - "SCQ", - "0JL", - "A6H", - "ZYQ", - "6U1", - "1LT", - "BYL", - "LYG", - "5B4", - "CK5", - "P06", - "7CU", - "3FF", - "HMD", - "SVJ", - "J27", - "JWN", - "OFG", - "CG9", - "507", - "PBU", - "M4P", - "YY9", - "RGY", - "SU7", - "JK2", - "58C", - "G62", - "7TW", - "0XF", - "42P", - "N92", - "400", - "A9B", - "F8S", - "G5X", - "8DK", - "VRU", - "XIP", - "G6I", - "3FN", - "42I", - "34L", - "8R7", - "ZO8", - "J60", - "XI2", - "0WR", - "S4K", - "99K", - "JZY", - "H96", - "OFT", - "W2P", - "RV6", - "WJ9", - "NBS", - "IH7", - "EU4", - "0SY", - "JZW", - "YFY", - "C5N", - "589", - "C1I", - "7XH", - "21I", - "C73", - "2HV", - "H3N", - "68R", - "KWT", - "XWA", - "0J9", - "044", - "66A", - "LVD", - "VZJ", - "32W", - "1P5", - "VVT", - "CKO", - "IIM", - "SMV", - "TQ1", - "W19", - "FCP", - "3NG", - "OKZ", - "50W", - "FQD", - "DWT", - "466", - "55U", - "S0L", - "ABJ", - "LH0", - "9XO", - "G6A", - "4L6", - "G54", - "O4B", - "P9K", - "D4Q", - "84P", - "N42", - "LCD", - "H0K", - "5W3", - "5Y4", - "50E", - "LKQ", - "5KW", - "0NF", - "ANK", - "5SC", - "SVE", - "KF6", - "GS3", - "XA0", - "0BQ", - "JBI", - "A7N", - "YY3", - "4QG", - "O92", - "H3Q", - "83P", - "RW4", - "O2K", - "R2E", - "P7C", - "8LU", - "UNE", - "KWY", - "HGK", - "34U", - "SM9", - "IWU", - "K82", - "RW3", - "X11", - "IE0", - "63K", - "SSY", - "63I", - "75E", - "E62", - "KCI", - "X9G", - "6T3", - "F62", - "292", - "NYX", - "FVC", - "27D", - "4H5", - "8QZ", - "4EF", - "A06", - "PDX", - "WCX", - "337", - "50J", - "LBB", - "WXQ", - "VM1", - "925", - "HB4", - "9I8", - "O4U", - "AY7", - "RKW", - "7AA", - "LIF", - "1IM", - "JYZ", - "45Q", - "6Z5", - "JWE", - "A53", - "5O4", - "PWU", - "SNV", - "SQ8", - "WF7", - "U0C", - "2TA", - "G5T", - "MDI", - "09J", - "ET8", - "8DJ", - "LI2", - "7LV", - "KSM", - "AK2", - "49J", - "KY9", - "F0H", - "5TL", - "91L", - "86C", - "TCE", - "RQS", - "K3R", - "3WA", - "OQ2", - "R4S", - "CQE", - "RR9", - "X8E", - "X3W", - "1JX", - "XK3", - "EKT", - "A7H", - "NPZ", - "EFP", - "6U7", - "9YS", - "8FU", - "X46", - "8QH", - "6TE", - "G5C", - "ADP", - "AM7", - "IGV", - "9N8", - "4HW", - "3IU", - "B4K", - "XTT", - "3I7", - "5B1", - "0T2", - "1P6", - "PZW", - "8R4", - "PZO", - "XL8", - "J88", - "I6P", - "VSH", - "6TP", - "NZ4", - "7O3", - "8N8", - "AJK", - "N1Q", - "5W8", - "5U3", - "KXY", - "PJC", - "P4N", - "BYU", - "50O", - "PG0", - "5O7", - "OKO", - "ESK", - "FMY", - "N96", - "1K3", - "05B", - "P38", - "107", - "6XT", - "12C", - "JZJ", - "DJW", - "5E6", - "RTJ", - "C92", - "DT4", - "BA0", - "NM8", - "PMU", - "X9P", - "31X", - "RSU", - "VS0", - "1BR", - "7L0", - "A9T", - "093", - "P7N", - "N3X", - "IV7", - "AUE", - "981", - "FYV", - "X3R", - "LTJ", - "TZ0", - "B8Z", - "K1H", - "HRM", - "84M", - "9TO", - "R6M", - "3LH", - "K8K", - "11K", - "92J", - "8NZ", - "J0P", - "65U", - "N1J", - "3SM", - "A4Q", - "VOY", - "EO5", - "NJ6", - "FMD", - "ZW3", - "5R1", - "24V", - "KK7", - "08Z", - "6OJ", - "P40", - "UGK", - "G4K", - "85S", - "PFY", - "BRY", - "C9R", - "XXF", - "IR1", - "HJ9", - "1SK", - "M5V", - "6ZF", - "1E0", - "V62", - "831", - "61U", - "LD5", - "ZRM", - "WXH", - "HBD", - "F9N", - "QX2", - "WZ8", - "EMU", - "8CG", - "54R", - "B6I", - "F48", - "NQ1", - "19E", - "HHQ", - "XTI", - "8D6", - "6S3", - "6SH", - "80H", - "1DR", - "9DB", - "F8Z", - "DG7", - "LO5", - "AWO", - "6SN", - "N5B", - "N6N", - "8ST", - "Q7Q", - "VK2", - "YDJ", - "LXG", - "Q7M", - "0WP", - "IE4", - "FKY", - "N9F", - "LGV", - "7GS", - "E2L", - "S19", - "6HF", - "9EM", - "W40", - "L87", - "1RO", - "RQU", - "H3K", - "RLC", - "3HQ", - "B97", - "L0P", - "P5O", - "OO7", - "49B", - "7GZ", - "P9J", - "H9K", - "GUK", - "D31", - "UUF", - "0JG", - "LN3", - "O0H", - "IXM", - "J2Y", - "0K6", - "DHC", - "CV4", - "3KZ", - "HUL", - "7X1", - "MFZ", - "7X6", - "AQT", - "N29", - "0XP", - "98A", - "1QG", - "WG8", - "34Y", - "7PY", - "1B5", - "46G", - "6UJ", - "KQE", - "4VC", - "GX3", - "X65", - "GS2", - "0G3", - "FMW", - "C0M", - "740", - "B5Z", - "CQW", - "A5W", - "90T", - "HO8", - "XUZ", - "GJ7", - "LB8", - "980", - "3EH", - "276", - "7GY", - "6SD", - "816", - "N9J", - "GDW", - "7KG", - "1OB", - "1RS", - "D1A", - "03Q", - "GOD", - "ATK", - "ER8", - "2VL", - "96M", - "KQZ", - "R7B", - "T1L", - "8QT", - "LZA", - "DT5", - "I1P", - "5O1", - "JZX", - "8OU", - "LSV", - "F1B", - "QGY", - "XKU", - "IDW", - "Z87", - "RK2", - "7IF", - "ZTV", - "1QN", - "CIY", - "OBY", - "AY3", - "4TW", - "FLS", - "KHD", - "54S", - "2K2", - "8ZK", - "5LK", - "994", - "HJK", - "18Z", - "Y8H", - "VVX", - "IJB", - "1GK", - "WPB", - "JHK", - "K81", - "6ZZ", - "6U2", - "0S9", - "D7D", - "2VU", - "WPX", - "DTJ", - "R6N", - "N82", - "1PU", - "R0T", - "A03", - "7IQ", - "FAV", - "O97", - "G41", - "W9X", - "EFQ", - "533", - "LCQ", - "31K", - "GDK", - "SLQ", - "3VD", - "6VM", - "1NX", - "X3Y", - "RNU", - "R5Y", - "BRK", - "QGR", - "0BY", - "KFD", - "VY1", - "5RC", - "530", - "QJZ", - "HSJ", - "B6Q", - "YEX", - "PFQ", - "SVD", - "57N", - "046", - "90Z", - "46A", - "R7P", - "JVE", - "3HJ", - "TSK", - "1J4", - "A5E", - "4T3", - "1KP", - "X7Y", - "B4Q", - "477", - "KKR", - "TSW", - "7XR", - "17G", - "X87", - "Z60", - "HKC", - "JVT", - "KA2", - "74O", - "KMP", - "19S", - "G98", - "FZO", - "F97", - "EYQ", - "I5G", - "SJV", - "0TB", - "XWW", - "1J3", - "AWX", - "OXW", - "ZS3", - "RQL", - "1BJ", - "6RG", - "8XK", - "M4I", - "L1W", - "0YO", - "N9L", - "4EL", - "GYW", - "6UE", - "B4V", - "T12", - "4CW", - "X3G", - "MT4", - "83H", - "JPZ", - "74F", - "QH9", - "AEQ", - "H7R", - "9JS", - "B6H", - "LW4", - "937", - "8MQ", - "LX9", - "79Q", - "9QT", - "0US", - "F4B", - "I85", - "QYW", - "0WA", - "199", - "3VC", - "KSC", - "4L7", - "6XP", - "799", - "KZP", - "MPZ", - "LUE", - "O9C", - "4RK", - "3QW", - "0F0", - "QT9", - "UIK", - "0OA", - "XVI", - "HVY", - "V5W", - "6CP", - "SR4", - "Z2M", - "QY2", - "FKT", - "0S8", - "6K2", - "K1B", - "6R0", - "N3O", - "6HK", - "AOW", - "4GF", - "JRT", - "82A", - "3JB", - "6YN", - "3SB", - "MFP", - "1AU", - "E0P", - "9ZB", - "456", - "IQO", - "VQE", - "OND", - "NX0", - "844", - "5N3", - "VBS", - "5WR", - "EK6", - "S03", - "62K", - "MFE", - "LQ5", - "OLO", - "4E2", - "YM5", - "DKI", - "L0D", - "A4T", - "CG7", - "WTI", - "JQW", - "X2M", - "UN4", - "1N9", - "RJ5", - "70W", - "91O", - "FCQ", - "EAQ", - "CK2", - "IHX", - "2TR", - "ELZ", - "CK4", - "1FN", - "8IW", - "0NR", - "7AJ", - "AHK", - "USF", - "MI5", - "KSE", - "039", - "7X3", - "8V7", - "5PW", - "LOT", - "4VZ", - "SOJ", - "GVP", - "37O", - "6N9", - "308", - "E2C", - "S4R", - "BPK", - "QTX", - "UJC", - "JVP", - "ZIG", - "V5J", - "2WF", - "QCT", - "QC0", - "JNF", - "PHU", - "QFE", - "EX4", - "8XE", - "X9S", - "55Y", - "TAK", - "ITI", - "VSE", - "AWR", - "H1N", - "F47", - "5QO", - "0SE", - "JGM", - "IRB", - "FKN", - "0VE", - "B5W", - "HGQ", - "YK7", - "B7W", - "U73", - "FE5", - "G4T", - "1PF", - "O17", - "CHU", - "0JF", - "X75", - "2V1", - "3UL", - "ZZQ", - "48B", - "U4N", - "2YE", - "LTI", - "NQ5", - "YB4", - "MVS", - "HY7", - "BWY", - "N8L", - "FU9", - "JYG", - "RXQ", - "O1K", - "TZY", - "0EI", - "AVK", - "04K", - "583", - "573", - "FKB", - "QBE", - "T77", - "4DN", - "RI9", - "KJ7", - "Q7K", - "M8Z", - "NKW", - "N4U", - "VTA", - "3K7", - "HDT", - "GJJ", - "FZC", - "4DQ", - "3FE", - "GIG", - "1VI", - "NB5", - "F4J", - "1M8", - "X5E", - "X3K", - "4TT", - "4QZ", - "V5T", - "HH8", - "3I6", - "106", - "I46", - "72L", - "YFS", - "2IE", - "F9J", - "35R", - "FWU", - "3Z1", - "MT8", - "7XO", - "UO5", - "5EZ", - "A25", - "PQA", - "9OL", - "Q8Q", - "VY4", - "992", - "6K5", - "971", - "B90", - "4VG", - "4AU", - "A9U", - "FPX", - "Z83", - "M5D", - "ULV", - "UE9", - "HK1", - "G7T", - "571", - "WT3", - "5L4", - "B7B", - "AM8", - "GUI", - "HCK", - "KEC", - "9DP", - "SMR", - "Z0W", - "8CD", - "AWN", - "G0U", - "XGQ", - "0OL", - "JN5", - "1PH", - "EK5", - "FZP", - "D1E", - "7A7", - "85X", - "IK1", - "XIZ", - "H7X", - "60E", - "AQ5", - "NTW", - "2NK", - "4TV", - "9YZ", - "U0N", - "G11", - "PQ8", - "UQX", - "A0T", - "B2D", - "DQX", - "H72", - "FZF", - "8RH", - "BFK", - "O10", - "EK0", - "T28", - "EWH", - "M57", - "OLP", - "E26", - "E2U", - "J87", - "QIA", - "YVQ", - "55F", - "AK3", - "8ON", - "MVG", - "EE4", - "6TT", - "X63", - "AFW", - "D6Z", - "J2I", - "40M", - "2JZ", - "DJK", - "8ZN", - "FMM", - "SJM", - "A7O", - "M77", - "UAU", - "RYW", - "37W", - "EUI", - "Q8J", - "R6K", - "9WX", - "45K", - "P3Y", - "A3W", - "1UH", - "1N8", - "0JA", - "SJJ", - "90N", - "99M", - "26D", - "6YL", - "VQP", - "X3N", - "VAR", - "FQG", - "42J", - "C95", - "S25", - "LS5", - "A5K", - "S59", - "FJY", - "54P", - "LUN", - "GAB", - "F7D", - "X37", - "I19", - "7G8", - "H83", - "8WH", - "P7A", - "WFD", - "RQ5", - "5B2", - "CMG", - "SV4", - "Z0B", - "QS0", - "Z3R", - "71N", - "JU8", - "RKZ", - "S93", - "O06", - "CVQ", - "4L5", - "RCM", - "2CH", - "Z85", - "SR8", - "T9N", - "3RF", - "6K0", - "L7A", - "RVU", - "QYH", - "4ZH", - "0RS", - "YUN", - "RK5", - "JWQ", - "SWM", - "JRW", - "0SU", - "03X", - "SJ0", - "DF6", - "5VS", - "575", - "I73", - "69C", - "LXS", - "3WO", - "H6K", - "IS4", - "3T9", - "2SB", - "HK7", - "6SO", - "NKT", - "QYB", - "TXQ", - "KSA", - "0SR", - "8TK", - "EVL", - "X59", - "OAW", - "S30", - "2WI", - "4YW", - "JWS", - "OFQ", - "FQJ", - "SZL", - "EAE", - "WAZ", - "DFQ", - "XJ1", - "4GD", - "A9K", - "JUW", - "XIJ", - "PM1", - "U0Q", - "BYP", - "O8Z", - "ALH", - "LS1", - "REB", - "0YH", - "8GY", - "D58", - "P2V", - "31J", - "Z31", - "RWE", - "VTD", - "KAO", - "25Z", - "8BH", - "0UN", - "3P6", - "L5G", - "SQZ", - "BWI", - "O2H", - "631", - "T3X", - "8O8", - "4ZQ", - "8X5", - "P39", - "JMB", - "N6K", - "B18", - "WIQ", - "SCF", - "09Z", - "B7S", - "LS7", - "FZR", - "NYI", - "DXV", - "AXI", - "SOV", - "U9P", - "3D8", - "JUP", - "UNM", - "GO7", - "OYB", - "2HX", - "E9Z", - "AGX", - "MYC", - "FPZ", - "56Z", - "3CI", - "HK8", - "5CN", - "X8I", - "16K", - "MK9", - "0SB", - "RHT", - "GS7", - "PP1", - "09K", - "664", - "60D", - "6LF", - "4VB", - "0J3", - "KXZ", - "J9G", - "MRI", - "4K0", - "8ZF", - "3D9", - "EM7", - "GC6", - "8KQ", - "9E1", - "3IF", - "E94", - "9IO", - "ZZF", - "N8U", - "ES4", - "G68", - "89E", - "L0I", - "15G", - "GVD", - "KEJ", - "NIO", - "08G", - "0W7", - "YDA", - "Y8C", - "5FI", - "XU1", - "Z19", - "WCJ", - "LCT", - "T74", - "DI1", - "7FM", - "L1H", - "386", - "76Y", - "8QW", - "HHN", - "T6E", - "1YG", - "5BP", - "B6E", - "9O2", - "S5M", - "SCZ", - "7KA", - "98M", - "7LY", - "VVQ", - "7X2", - "TOJ", - "STJ", - "8BV", - "J19", - "1F8", - "ZZY", - "XIX", - "2QK", - "OOD", - "ERK", - "LCJ", - "1C9", - "KVJ", - "O9L", - "MK3", - "LKB", - "N7Z", - "EZR", - "SUU", - "Z63", - "E86", - "AA0", - "FRZ", - "YY5", - "3D7", - "0H2", - "7FC", - "VWN", - "ZYW", - "S4N", - "3SG", - "SX8", - "KBI", - "EKK", - "4KK", - "ELW", - "06F", - "51W", - "3XM", - "WAK", - "5QI", - "BI8", - "9I2", - "1FV", - "7VH", - "5LS", - "G4Q", - "585", - "43A", - "OCJ", - "W5W", - "1OA", - "NG2", - "GD5", - "HPP", - "XHS", - "3RH", - "6MV", - "3I3", - "B4Y", - "KGL", - "E71", - "31V", - "3RE", - "71A", - "EK7", - "2VV", - "NHI", - "B91", - "7LK", - "I90", - "SU9", - "IHZ", - "2A8", - "984", - "IE6", - "EMH", - "J3Y", - "H80", - "XQQ", - "VFB", - "A17", - "8FR", - "ADN", - "KH5", - "K0X", - "W2T", - "X02", - "FDH", - "AU5", - "F6M", - "SVT", - "OHK", - "ZGY", - "1H4", - "330", - "YMX", - "RH8", - "T1Q", - "9E4", - "4PV", - "2K7", - "VX1", - "92M", - "00J", - "AQZ", - "Q1A", - "AOK", - "YSO", - "255", - "9J4", - "VX2", - "1KO", - "5WH", - "RKK", - "AK4", - "9X4", - "FL4", - "QQJ", - "PE5", - "DVD", - "2OL", - "AA2", - "RF4", - "X4B", - "8H0", - "LID", - "VJH", - "L1N", - "4YK", - "SM5", - "BJG", - "93J", - "6SC", - "MM8", - "DY4", - "N83", - "RWN", - "4EJ", - "EML", - "G0Q", - "HO5", - "2VW", - "626", - "GJA", - "A3H", - "6J9", - "Z8O", - "QYZ", - "BX1", - "793", - "2WG", - "XL7", - "887", - "AQW", - "CZ4", - "P08", - "43R", - "8MY", - "BMI", - "EZE", - "K06", - "G8H", - "0X5", - "29X", - "371", - "E2X", - "4HK", - "A8K", - "3Z3", - "X9J", - "C58", - "2KC", - "5T2", - "J99", - "99V", - "AKI", - "E0M", - "8GX", - "Q55", - "SQE", - "UOW", - "X9V", - "551", - "HAU", - "DWF", - "X6A", - "STI", - "RU5", - "PGJ", - "BAX", - "VYN", - "QAQ", - "HKJ", - "36O", - "H4N", - "553", - "33A", - "56H", - "4F6", - "QP1", - "3NE", - "ABO", - "ANW", - "XU2", - "C6O", - "7RO", - "PQC", - "0R4", - "893", - "9HP", - "9EJ", - "FRT", - "B9K", - "ZRU", - "19B", - "3JA", - "2I5", - "B6B", - "3NL", - "F8R", - "95U", - "QWS", - "LJE", - "V0K", - "4VJ", - "4ZR", - "SVG", - "A0Q", - "QZW", - "ROY", - "1WS", - "WGZ", - "1RU", - "5Y3", - "QOP", - "B8I", - "GO4", - "LM3", - "3RL", - "P17", - "0T8", - "HGF", - "XR1", - "0SD", - "C62", - "24K", - "Z14", - "YIQ", - "GJK", - "CC9", - "PDY", - "UP9", - "YNZ", - "RXN", - "OE8", - "BMU", - "LGF", - "0UV", - "RKN", - "JAK", - "6L4", - "OBW", - "3L0", - "KRE", - "42C", - "OVI", - "ESQ", - "B6Z", - "A6X", - "K47", - "9JO", - "MYF", - "JNK", - "UCN", - "R05", - "EQH", - "LWG", - "GG5", - "824", - "3OU", - "HPM", - "3O7", - "AG1", - "CQO", - "8PT", - "MBW", - "LG8", - "EZB", - "RJ2", - "MWU", - "EXZ", - "4YX", - "FXG", - "T3I", - "LZ8", - "I3H", - "REF", - "4V8", - "Q0B", - "NL4", - "G96", - "6TD", - "07Q", - "P41", - "2IX", - "4UB", - "BMW", - "AEE", - "STL", - "WVI", - "9BD", - "3UO", - "XHV", - "MBP", - "KA4", - "RQZ", - "RQE", - "U3E", - "2V9", - "17P", - "IBI", - "RTZ", - "H7O", - "Q58", - "LZD", - "8H1", - "DQ4", - "HNZ", - "90F", - "G9E", - "RQQ", - "D1D", - "K0Z", - "L1G", - "1AM", - "48K", - "5B3", - "DJQ", - "9NX", - "P5C", - "3H8", - "939", - "HOT", - "V0L", - "I45", - "QRW", - "KJB", - "ADE", - "X84", - "E1D", - "ZYT", - "N7W", - "V6B", - "2P5", - "IZZ", - "61K", - "SKE", - "SJX", - "39G", - "91H", - "1RQ", - "OXM", - "90E", - "8C5", - "Y56", - "IKD", - "H5K", - "70S", - "4ZJ", - "8MB", - "7XW", - "1OO", - "Q5Z", - "O1S", - "YT8", - "1Q4", - "67T", - "L8V", - "QUF", - "6GD", - "GK6", - "G3B", - "MFQ", - "55M", - "5I1", - "7YS", - "KD6", - "4LY", - "A3Q", - "0NV", - "5P8", - "RG4", - "PP0", - "5BE", - "65A", - "SB5", - "0S7", - "P3J", - "VEQ", - "T2F", - "1OC", - "1LB", - "FNI", - "1IF", - "0NU", - "9ID", - "PQB", - "6XK", - "NKE", - "960", - "2OO", - "4GU", - "L0E", - "7UX", - "DJH", - "CC3", - "8MT", - "ZYU", - "W49", - "7QU", - "RFZ", - "OU2", - "N76", - "N9Z", - "499", - "ZC3", - "O8W", - "QP4", - "NZF", - "V1Y", - "1IZ", - "LB7", - "Z84", - "AQY", - "M0Z", - "KWV", - "XA4", - "6XE", - "B11", - "TL7", - "IAQ", - "INR", - "KJV", - "SB0", - "YIT", - "9KI", - "D36", - "STU", - "3NV", - "UNQ", - "SJS", - "YDK", - "Q98", - "EX6", - "Z02", - "47I", - "3FP", - "1WU", - "81C", - "4ZG", - "0BX", - "6ZV", - "4Z5", - "OW6", - "7KU", - "4SP", - "W32", - "R6D", - "6Z7", - "PPI", - "CT9", - "GK5", - "LEV", - "6BE", - "8Q5", - "AM6", - "0ON", - "2A6", - "AQ2", - "FKO", - "RAJ", - "L9A", - "RRC", - "5JA", - "50V", - "IHP", - "N5R", - "W3I", - "P91", - "MMD", - "AUW", - "AWE", - "S9K", - "0O9", - "W9Z", - "G0H", - "FYW", - "SQB", - "YTP", - "A0H", - "R7W", - "6LQ", - "XBD", - "90B", - "7MY", - "3WK", - "O35", - "KRW", - "O1V", - "X62", - "4RB", - "A5G", - "OPW", - "0G2", - "2NS", - "3QY", - "LS3", - "X42", - "0UW", - "OV0", - "G95", - "1QK", - "2WH", - "59T", - "TWK", - "66P", - "NRM", - "320", - "U8J", - "T6X", - "SW8", - "FZW", - "PRC", - "QY8", - "3QT", - "JAU", - "IYZ", - "SQQ", - "QQM", - "IED", - "3YY", - "0TA", - "4KH", - "BEZ", - "NY0", - "PCG", - "YDI", - "C94", - "R39", - "T4O", - "ZS4", - "VRM", - "GMG", - "7X4", - "4DJ", - "9M3", - "R6I", - "ERW", - "OE5", - "RUT", - "V58", - "OH8", - "6BZ", - "Q6E", - "X43", - "X9M", - "QEW", - "2AN", - "4WE", - "3O8", - "58V", - "OD2", - "IER", - "LZ7", - "KRK", - "6K1", - "GIN", - "XL9", - "W3C", - "6E2", - "3GU", - "X5G", - "0VM", - "FBL", - "X35", - "YIY", - "3OA", - "ZAT", - "4E1", - "75X", - "UX2", - "QCR", - "RCH", - "FMJ", - "DD8", - "C9U", - "IGJ", - "OOO", - "NZS", - "X1N", - "X76", - "4R0", - "FCZ", - "ESW", - "QUU", - "GFJ", - "O1Y", - "1ST", - "B10", - "JWK", - "0NL", - "5I4", - "084", - "0F2", - "NZ8", - "GMW", - "E3U", - "3IP", - "FYH", - "E7M", - "KQW", - "6QX", - "N4N", - "81G", - "9ZS", - "L66", - "6JS", - "H3H", - "6DP", - "K3D", - "E6W", - "COM", - "X8G", - "L0Z", - "MI1", - "29B", - "HJ0", - "Y3M", - "0C0", - "924", - "QYT", - "F8E", - "E78", - "B98", - "3Q0", - "1IW", - "2AI", - "22L", - "3U5", - "4F2", - "71L", - "Z71", - "34O", - "LVL", - "B1L", - "4LH", - "U35", - "XOJ", - "2V3", - "3J7", - "P4G", - "E8D", - "GGY", - "8QE", - "UWM", - "FLL", - "L80", - "E4V", - "AJG", - "OOJ", - "WAU", - "YIW", - "11G", - "BRW", - "E5M", - "O19", - "0VH", - "TBS", - "6UX", - "HRZ", - "GK4", - "ZUO", - "B7R", - "YQT", - "0C4", - "LKT", - "529", - "HGH", - "35H", - "041", - "8KZ", - "L11", - "6C3", - "OSV", - "E2R", - "N45", - "353", - "XL6", - "RHH", - "8C1", - "AQ6", - "98G", - "396", - "6BU", - "WBI", - "EFV", - "PFO", - "PDS", - "M4X", - "VFA", - "H91", - "7XN", - "3UP", - "3U6", - "8RC", - "25Q", - "7CP", - "E75", - "8XH", - "R9P", - "T3B", - "RKD", - "ND2", - "985", - "KSK", - "RJ8", - "UCE", - "6ZG", - "KUV", - "X39", - "A7X", - "Q4J", - "3Q5", - "BW8", - "0CE", - "3XK", - "710", - "WHQ", - "12Z", - "7G6", - "KRJ", - "KWJ", - "2V2", - "1QM", - "R4L", - "0X2", - "0UJ", - "X3A", - "H7F", - "HHT", - "8ZZ", - "P78", - "63L", - "UCM", - "78L", - "YM4", - "GK3", - "L9S", - "SLS", - "63B", - "UGJ", - "2K0", - "Q9J", - "B4E", - "27Z", - "IKC", - "W3F", - "SJG", - "MPY", - "KSL", - "IPV", - "JIN", - "1J2", - "PKE", - "3EL", - "FAL", - "9K8", - "MMW", - "6QB", - "VRZ", - "CQ7", - "1Q3", - "B45", - "8M8", - "V7Y", - "I94", - "608", - "6R1", - "BYM", - "9VV", - "W4G", - "CQQ", - "859", - "9EO", - "1FM", - "7GG", - "GXH", - "UUB", - "RK8", - "E0S", - "0BZ", - "CFK", - "1SU", - "DYK", - "RKQ", - "8JC", - "5QM", - "FAP", - "D6W", - "PVT", - "39I", - "D23", - "H82", - "55J", - "7KX", - "HK5", - "3HT", - "W2K", - "BLZ", - "4US", - "0J8", - "IGS", - "FKL", - "62M", - "4YM", - "S5I", - "5U6", - "Y5Y", - "K8A", - "741", - "YPW", - "NZU", - "K7S", - "HB1", - "MJF", - "0NH", - "OSZ", - "HHL", - "M5J", - "GMQ", - "PY8", - "MLW", - "ZHY", - "H7L", - "GIK", - "X72", - "W3W", - "42K", - "1SW", - "JYM", - "TMU", - "L9L", - "5E1", - "LZ5", - "6FD", - "CWS", - "I74", - "KHQ", - "URW", - "TL0", - "5CP", - "UIM", - "F76", - "22K", - "G5K", - "IQB", - "RKH", - "HK3", - "LMR", - "3YR", - "8MN", - "V1G", - "ZXL", - "GSH", - "CKK", - "D5P", - "O1Z", - "6UI", - "MVE", - "SV8", - "Y27", - "XIY", - "K1E", - "GV0", - "64V", - "FPU", - "S1Z", - "OCG", - "N69", - "L8Y", - "H1K", - "AM9", - "0VU", - "5Q2", - "OWB", - "J72", - "KS1", - "LI9", - "UWP", - "VYP", - "OFI", - "2Q7", - "UMN", - "O98", - "X4G", - "085", - "J82", - "1B6", - "VSG", - "LGW", - "5W7", - "P2B", - "ZSO", - "03C", - "A1N", - "P2X", - "N7Q", - "QPP", - "630", - "774", - "PO6", - "U7E", - "3KC", - "F9Z", - "V84", - "N20", - "3K6", - "ML9", - "MIX", - "C70", - "5T1", - "MXE", - "3WJ", - "RQT", - "933", - "2SH", - "PGF", - "AN2", - "DB8", - "SCX", - "SQ9", - "HIZ", - "SO7", - "I39", - "LIC", - "6TS", - "325", - "KX0", - "LMM", - "EDD", - "7LI", - "4YV", - "0SV", - "JNO", - "CT6", - "G4J", - "FSE", - "R5S", - "MFR", - "O22", - "ZYV", - "FS7", - "84X", - "FLW", - "VYH", - "YK4", - "7GK", - "SC8", - "SLV", - "QNR", - "54E", - "18R", - "MTZ", - "UKI", - "8BY", - "24A", - "CQ0", - "76Q", - "YY6", - "1QJ", - "ICV", - "PKB", - "O1R", - "8AM", - "IIQ", - "KJQ", - "YM6", - "P5K", - "BDY", - "F8Y", - "2QU", - "4MG", - "1JV", - "B5T", - "O38", - "CJN", - "88A", - "MSQ", - "0KO", - "TVW", - "MYU", - "VK5", - "QUE", - "AM0", - "4EK", - "6K7", - "WAP", - "M54", - "4B7", - "274", - "3TA", - "A8Q", - "KHT", - "V25", - "0C7", - "071", - "SK8", - "MP7", - "5U5", - "E7N", - "LRS", - "M2Z", - "3RJ", - "PO5", - "15V", - "88C", - "B43", - "582", - "CQ6", - "6AF", - "L8D", - "AZ5", - "UOH", - "H6X", - "PXK", - "50R", - "IPW", - "FZL", - "79S", - "92D", - "5YS", - "LHZ", - "YW5", - "X2K", - "TKB", - "QWN", - "JYO", - "BX7", - "13J", - "V5E", - "6KD", - "X6D", - "685", - "19Z", - "N6U", - "A4W", - "WYF", - "SB6", - "3NW", - "4QV", - "E56", - "Q8W", - "L7I", - "HYM", - "N8S", - "YXT", - "404", - "84S", - "N66", - "RHW", - "68U", - "LI6", - "HYZ", - "05J", - "3JW", - "X9Y", - "N86", - "E8K", - "0B9", - "EU2", - "B49", - "M3Y", - "S7S", - "AK6", - "7MP", - "76P", - "L2G", - "6UH", - "MUH", - "SX7", - "6UG", - "9G5", - "R34", - "IDK", - "R49", - "LS2", - "6VL", - "4C9", - "5H7", - "92Q", - "AUT", - "DQO", - "Q6G", - "T4C", - "31S", - "Z04", - "26K", - "YSI", - "NSO", - "PFP", - "676", - "L9G", - "84U", - "E47", - "9NH", - "A7Q", - "62O", - "P4O", - "8MK", - "H2E", - "LOW", - "QGI", - "ZXC", - "QK0", - }, - ) - - def test_ccd_name_sorter(): assert sort_ccd_codes({"G", "G25", "CPG", "5GP"}) == ["CPG", "G25", "G", "5GP"] @@ -6391,8 +95,8 @@ def test_crystal_contact_detection(cif_6lu7, mock_alternative_datasets): plinder_anno.annotate() df = plinder_anno.annotated_df assert len(df) == 2 - assert all(x == 2 for x in df["system_num_atoms_with_crystal_contacts"]) - assert all(x == 1 for x in df["system_num_crystal_contacted_residues"]) + assert all(x == 5 for x in df["system_num_atoms_with_crystal_contacts"]) + assert all(x == 2 for x in df["system_num_crystal_contacted_residues"]) def test_simple_covalency_detection(cif_7gl9, mock_alternative_datasets): diff --git a/tests/test_custom_cif.py b/tests/test_custom_cif.py new file mode 100644 index 00000000..8d189a80 --- /dev/null +++ b/tests/test_custom_cif.py @@ -0,0 +1,180 @@ +# Copyright (c) 2024, Plinder Development Team +# Distributed under the terms of the Apache License 2.0 +"""Tests for custom CIF processing with missing bond orders. + +These tests verify that: +1. Missing _chem_comp_bond in CIF files is detected and raises an error +2. Known CCD compounds (ATP, etc.) are skipped — no SMILES needed +3. Bond orders can be assigned from SMILES and written to the CIF +4. The enriched CIF can be read back with correct bond information +""" + +from __future__ import annotations + +import shutil +from pathlib import Path + +import biotite.structure.io.pdbx as pdbx +import pytest +from plinder.data.utils.annotations.biotite_utils import ( + MissingBondOrderError, + assign_bond_orders_from_smiles, + check_cif_bond_orders, + get_unknown_ligand_ids, +) + +TEST_DATA = Path(__file__).parent / "test_data" / "custom_cif" +BOLTZ_CIF = TEST_DATA / "boltz_8c3u_input_model_0.cif" +LIGAND_SMILES = "Cc1ccc2c(c1)NC(=O)C2(c3cc(ccc3O)c4ccc(cc4C(=O)O)C(=O)O)c5c[nH]nc5" + + +@pytest.fixture +def boltz_cif(tmp_path): + """Copy the Boltz CIF to a temp dir so tests can modify it.""" + dst = tmp_path / "boltz_model.cif" + shutil.copy(BOLTZ_CIF, dst) + return dst + + +def test_boltz_cif_has_no_bond_orders(boltz_cif): + """Boltz output CIF should have no _chem_comp_bond category.""" + f = pdbx.CIFFile.read(str(boltz_cif)) + block = list(f.values())[0] + assert "chem_comp_bond" not in block + + +def test_unknown_ligand_ids_detects_lig(boltz_cif): + """LIG is not in CCD, so it should be flagged as unknown.""" + unknown = get_unknown_ligand_ids(boltz_cif) + assert "LIG" in unknown + + +def test_known_compounds_not_flagged(boltz_cif): + """Known CCD compounds like ATP should not be flagged as unknown.""" + # Inject a fake ATP HETATM into the CIF to verify it gets skipped + f = pdbx.CIFFile.read(str(boltz_cif)) + block = list(f.values())[0] + atom_site = block["atom_site"] + + # Read all columns and append one ATP row + columns = {} + for col_name in atom_site.keys(): + arr = list(atom_site[col_name].as_array()) + # Copy the last row and modify it + arr.append(arr[-1]) + columns[col_name] = arr + + # Set the last row to be ATP + n = len(columns["group_PDB"]) - 1 + columns["group_PDB"][n] = "HETATM" + columns["label_comp_id"][n] = "ATP" + + block["atom_site"] = pdbx.CIFCategory(columns) + modified = boltz_cif.parent / "with_atp.cif" + f.write(str(modified)) + + unknown = get_unknown_ligand_ids(modified) + assert "ATP" not in unknown, "ATP is a known CCD compound, should not be flagged" + assert "LIG" in unknown, "LIG should still be flagged" + + +def test_check_cif_bond_orders_raises_on_unknown(boltz_cif): + """check_cif_bond_orders should raise for unknown ligands without bonds.""" + with pytest.raises(MissingBondOrderError, match="unknown ligands"): + check_cif_bond_orders(boltz_cif) + + +def test_assign_bond_orders_from_smiles(boltz_cif): + """Assigning bond orders from SMILES should write _chem_comp_bond.""" + output = boltz_cif.parent / "enriched.cif" + assign_bond_orders_from_smiles( + boltz_cif, + ligand_smiles={"LIG": LIGAND_SMILES}, + output_path=output, + ) + + f = pdbx.CIFFile.read(str(output)) + block = list(f.values())[0] + assert "chem_comp_bond" in block + + bond_cat = block["chem_comp_bond"] + comp_ids = bond_cat["comp_id"].as_array() + orders = set(bond_cat["value_order"].as_array()) + + assert all(c == "LIG" for c in comp_ids) + assert len(comp_ids) > 0 + assert "SING" in orders or "AROM" in orders + assert "DOUB" in orders or "AROM" in orders + + +def test_check_passes_after_enrichment(boltz_cif): + """After enrichment, check_cif_bond_orders should not raise.""" + assign_bond_orders_from_smiles( + boltz_cif, + ligand_smiles={"LIG": LIGAND_SMILES}, + ) + check_cif_bond_orders(boltz_cif) + + +def test_assign_skips_known_compounds(boltz_cif): + """Providing SMILES for a known compound should be silently skipped.""" + assign_bond_orders_from_smiles( + boltz_cif, + ligand_smiles={ + "LIG": LIGAND_SMILES, + "ATP": "dummy_will_be_skipped", # ATP is known, won't be processed + }, + ) + check_cif_bond_orders(boltz_cif) + + +def test_assign_missing_smiles_raises(boltz_cif): + """Not providing SMILES for an unknown ligand should raise.""" + with pytest.raises(MissingBondOrderError, match="need SMILES"): + assign_bond_orders_from_smiles( + boltz_cif, + ligand_smiles={}, # LIG is unknown but no SMILES given + ) + + +def test_assign_invalid_smiles_raises(boltz_cif): + """Invalid SMILES should raise ValueError.""" + with pytest.raises(ValueError, match="Invalid SMILES"): + assign_bond_orders_from_smiles( + boltz_cif, + ligand_smiles={"LIG": "not_a_smiles!!!"}, + ) + + +# --------------------------------------------------------------------------- +# Integration tests: Entry.from_custom_cif_file +# --------------------------------------------------------------------------- + + +def test_from_custom_cif_raises_without_smiles(boltz_cif): + """from_custom_cif_file should raise when unknown ligands lack SMILES.""" + from plinder.data.utils.annotations.aggregate_annotations import Entry + + with pytest.raises(MissingBondOrderError): + Entry.from_custom_cif_file( + pdb_id="8c3u", + cif_file=boltz_cif, + ) + + +def test_from_custom_cif_with_smiles(boltz_cif): + """from_custom_cif_file should succeed when SMILES are provided.""" + from plinder.data.utils.annotations.aggregate_annotations import Entry + + entry = Entry.from_custom_cif_file( + pdb_id="8c3u", + cif_file=boltz_cif, + ligand_smiles_dict={"LIG": LIGAND_SMILES}, + ) + assert entry.pdb_id == "8c3u" + assert len(entry.systems) > 0, "Should detect at least one system" + + # Verify the CIF was enriched in-place + f = pdbx.CIFFile.read(str(boltz_cif)) + block = list(f.values())[0] + assert "chem_comp_bond" in block diff --git a/tests/test_data/ccd_lookups.json b/tests/test_data/ccd_lookups.json new file mode 100644 index 00000000..51c98b3c --- /dev/null +++ b/tests/test_data/ccd_lookups.json @@ -0,0 +1,6642 @@ +{ + "ccd_synonyms": [ + [ + "B1F", + "B2F" + ], + [ + "OY5", + "OY8" + ], + [ + "4LA", + "N1B" + ], + [ + "C2H", + "ETD" + ], + [ + "CBX", + "FMT" + ], + [ + "NFB", + "NFO" + ], + [ + "B4M", + "MBR" + ], + [ + "PGC", + "PGH" + ], + [ + "BRM", + "BXA" + ], + [ + "2PL", + "PGA" + ], + [ + "CRY", + "GOL" + ], + [ + "VKN", + "YLL" + ], + [ + "0P0", + "GTT", + "VDW" + ], + [ + "2OG", + "AKG" + ], + [ + "GGL", + "GLU" + ], + [ + "DGL", + "FGA" + ], + [ + "ACA", + "AHA" + ], + [ + "GCG", + "TS3" + ], + [ + "HPG", + "PDO" + ], + [ + "148", + "BTB" + ], + [ + "EDO", + "EGL" + ], + [ + "PGE", + "PIG" + ], + [ + "P2K", + "P6G" + ], + [ + "DHL", + "SEA" + ], + [ + "BME", + "SEO" + ], + [ + "CS0", + "OCY" + ], + [ + "AA4", + "DHN" + ], + [ + "ABK", + "FKI" + ], + [ + "ASP", + "IAS" + ], + [ + "ASQ", + "PAS", + "PHD" + ], + [ + "SEG", + "SER" + ], + [ + "BTC", + "CYS", + "FCY" + ], + [ + "CAY", + "CCS" + ], + [ + "CEA", + "CSO" + ], + [ + "CSE", + "SEC" + ], + [ + "ICI", + "ICT" + ], + [ + "GLR", + "KGR" + ], + [ + "GAL", + "GLB" + ], + [ + "G4S", + "GSA" + ], + [ + "TWG", + "Z4Y" + ], + [ + "GS4", + "GSD", + "SGC" + ], + [ + "SGN", + "YJM" + ], + [ + "AGC", + "GLC" + ], + [ + "ADG", + "TOA" + ], + [ + "GU4", + "NT2" + ], + [ + "GP1", + "L1L" + ], + [ + "BFP", + "FBP" + ], + [ + "I8Z", + "I9X" + ], + [ + "BDR", + "HSU" + ], + [ + "R1P", + "RDP" + ], + [ + "H5P", + "HNP" + ], + [ + "DAS", + "DSP" + ], + [ + "DMR", + "MLT" + ], + [ + "3PG", + "MP3" + ], + [ + "2PG", + "PAG" + ], + [ + "0AL", + "GPH", + "GPO" + ], + [ + "R51", + "R52" + ], + [ + "IDG", + "PA4" + ], + [ + "KPI", + "MCL" + ], + [ + "EUG", + "H7Y" + ], + [ + "2H3", + "CBU", + "INS" + ], + [ + "I6P", + "IHP", + "KGN" + ], + [ + "GLL", + "GUR" + ], + [ + "0AU", + "IU" + ], + [ + "DGC", + "GCD" + ], + [ + "ACI", + "CMN", + "CYL" + ], + [ + "ACZ", + "TZA" + ], + [ + "0C", + "LC" + ], + [ + "C", + "C25", + "C5P" + ], + [ + "0U", + "LHU" + ], + [ + "2AU", + "U2N" + ], + [ + "U", + "U25", + "U5P" + ], + [ + "T31", + "U37" + ], + [ + "4SU", + "S4U" + ], + [ + "HHP", + "PH2" + ], + [ + "5HP", + "PCA", + "PCC" + ], + [ + "ALC", + "HAC" + ], + [ + "CHG", + "CUC" + ], + [ + "DHU", + "H2U" + ], + [ + "DIO", + "DOX" + ], + [ + "DXD", + "DXN" + ], + [ + "D1P", + "ORP" + ], + [ + "C32", + "CBR" + ], + [ + "C38", + "I5C" + ], + [ + "5IT", + "5IU" + ], + [ + "DC", + "DCM" + ], + [ + "C7R", + "C7S" + ], + [ + "DU", + "UMP" + ], + [ + "0UH", + "IGU" + ], + [ + "AAB", + "B1P" + ], + [ + "MNM", + "NOZ" + ], + [ + "DNJ", + "NOJ" + ], + [ + "BAR", + "TSA", + "TSO" + ], + [ + "0AZ", + "UYA" + ], + [ + "0DC", + "DFC" + ], + [ + "HSZ", + "XYP" + ], + [ + "BXP", + "XYB" + ], + [ + "DDM", + "DMJ" + ], + [ + "FLH", + "FOR" + ], + [ + "MIE", + "PVL" + ], + [ + "AAE", + "LIN" + ], + [ + "3NK", + "LL8" + ], + [ + "CHH", + "NWB" + ], + [ + "F3V", + "GCM", + "GLM" + ], + [ + "ACM", + "CNM" + ], + [ + "1ZT", + "SC2" + ], + [ + "RTV", + "YYR" + ], + [ + "NAN", + "SI2", + "SIA" + ], + [ + "7BN", + "7BO" + ], + [ + "0AT", + "16G" + ], + [ + "HSR", + "NAG" + ], + [ + "1NA", + "MAG" + ], + [ + "ASG", + "NGL" + ], + [ + "5G0", + "OGN" + ], + [ + "NNS", + "TYL" + ], + [ + "ACY", + "CBM", + "CM" + ], + [ + "CKC", + "LYM" + ], + [ + "BOC", + "OTB" + ], + [ + "BUG", + "HV5", + "TBG" + ], + [ + "ALQ", + "ISB" + ], + [ + "F3P", + "FPG" + ], + [ + "GRL", + "UIC" + ], + [ + "CLE", + "NLW" + ], + [ + "0FA", + "LEP" + ], + [ + "YLV", + "YM1" + ], + [ + "YKA", + "YKD" + ], + [ + "YKY", + "YL7" + ], + [ + "YMD", + "YMG" + ], + [ + "YMS", + "YMV" + ], + [ + "Y8Y", + "Y91" + ], + [ + "Y51", + "Y71" + ], + [ + "Y4P", + "Y7G" + ], + [ + "YLD", + "YLJ" + ], + [ + "YKS", + "YKV" + ], + [ + "1LU", + "OLE" + ], + [ + "GCL", + "XAO" + ], + [ + "HMI", + "HMP" + ], + [ + "HAP", + "PLH" + ], + [ + "PLE", + "PLU" + ], + [ + "BAT", + "DSX" + ], + [ + "ATW", + "CCK" + ], + [ + "IOH", + "IPA" + ], + [ + "ISP", + "MIP" + ], + [ + "0AA", + "VME" + ], + [ + "CPV", + "VAS" + ], + [ + "395", + "961" + ], + [ + "E0G", + "HIE" + ], + [ + "7MQ", + "MQ7" + ], + [ + "3KV", + "REA" + ], + [ + "ECH", + "RAW" + ], + [ + "45D", + "45H" + ], + [ + "DRB", + "LRB" + ], + [ + "RFA", + "RFB" + ], + [ + "5PY", + "T36" + ], + [ + "LCC", + "LCH" + ], + [ + "0DT", + "DRT" + ], + [ + "HDP", + "XTR" + ], + [ + "T0N", + "T0Q" + ], + [ + "NYM", + "T37" + ], + [ + "DT", + "T", + "TMP" + ], + [ + "PTP", + "THP" + ], + [ + "PST", + "TS" + ], + [ + "5MU", + "RT" + ], + [ + "F89", + "U18" + ], + [ + "0UE", + "BJ5" + ], + [ + "2MH", + "4JU" + ], + [ + "ACE", + "ACU", + "MCB" + ], + [ + "5YI", + "YI2" + ], + [ + "CL1", + "CL2" + ], + [ + "CBG", + "PNL" + ], + [ + "BUT", + "NBU", + "SBU" + ], + [ + "BA4", + "NP6" + ], + [ + "YMY", + "YN1" + ], + [ + "YMJ", + "YMM" + ], + [ + "LEA", + "PEI" + ], + [ + "CRC", + "DKA" + ], + [ + "DAO", + "LAU" + ], + [ + "FAT", + "PLM" + ], + [ + "2SP", + "3PH" + ], + [ + "LP3", + "QEH" + ], + [ + "C8E", + "OTE" + ], + [ + "OLA", + "OLI" + ], + [ + "HQ", + "HQO" + ], + [ + "13H", + "243" + ], + [ + "EJM", + "LYW" + ], + [ + "1ZD", + "2NC" + ], + [ + "0AM", + "0SP" + ], + [ + "2PI", + "BTA", + "NVA", + "RON" + ], + [ + "EOH", + "EOX", + "OHE" + ], + [ + "6JZ", + "P3G" + ], + [ + "SCC", + "XL1" + ], + [ + "ITU", + "SEU" + ], + [ + "1NI", + "LP1", + "LP2" + ], + [ + "AB7", + "ABA" + ], + [ + "CHC", + "IU6" + ], + [ + "DCI", + "MBA" + ], + [ + "0EZ", + "PI6" + ], + [ + "CRP", + "INY" + ], + [ + "EMT", + "T0M" + ], + [ + "E4N", + "NET" + ], + [ + "F22", + "HXA" + ], + [ + "GXJ", + "I0E" + ], + [ + "N2B", + "PYJ" + ], + [ + "NC", + "NME" + ], + [ + "MLY", + "TRG" + ], + [ + "R5A", + "R5B" + ], + [ + "3MU", + "UR3" + ], + [ + "VSB", + "VSE" + ], + [ + "AY0", + "PTC" + ], + [ + "4OC", + "M4C" + ], + [ + "MGY", + "SAR" + ], + [ + "N9K", + "YNM" + ], + [ + "6MA", + "6MC", + "6MT", + "A34" + ], + [ + "A35", + "A40" + ], + [ + "6OO", + "OKQ" + ], + [ + "0AV", + "A2M", + "A39" + ], + [ + "MAM", + "MMA" + ], + [ + "MBG", + "MGA" + ], + [ + "6OG", + "G32" + ], + [ + "0CR", + "1CR" + ], + [ + "3DQ", + "9ZT" + ], + [ + "4RR", + "4SR", + "ROL" + ], + [ + "1IR", + "1IS" + ], + [ + "GB", + "PPM" + ], + [ + "577", + "IIM" + ], + [ + "CYM", + "SMC" + ], + [ + "0ZO", + "K7J" + ], + [ + "AYG", + "PIA" + ], + [ + "CRW", + "MDO" + ], + [ + "YKM", + "YKP" + ], + [ + "WH7", + "WLD" + ], + [ + "PGO", + "PGQ" + ], + [ + "HBI", + "HBL" + ], + [ + "BH4", + "H4B", + "THB" + ], + [ + "98", + "986" + ], + [ + "PYH", + "PYL" + ], + [ + "JQL", + "JRC" + ], + [ + "KOL", + "MER" + ], + [ + "1GL", + "BRI" + ], + [ + "6CT", + "T32" + ], + [ + "MEP", + "T23" + ], + [ + "AGL", + "RV7" + ], + [ + "G6D", + "GLW" + ], + [ + "5SA", + "ARE" + ], + [ + "DDB", + "MDA" + ], + [ + "53P", + "5P8", + "QB4" + ], + [ + "STO", + "STU" + ], + [ + "8MI", + "INH" + ], + [ + "DLA", + "LAC" + ], + [ + "AMV", + "MMR" + ], + [ + "DHO", + "DXC" + ], + [ + "HP3", + "PGR" + ], + [ + "HPB", + "PR0" + ], + [ + "TB9", + "TRB" + ], + [ + "RAA", + "RAM" + ], + [ + "MFA", + "MFU" + ], + [ + "AFL", + "FUL" + ], + [ + "APG", + "SAA" + ], + [ + "ETH", + "OET" + ], + [ + "HGC", + "MMC" + ], + [ + "PC", + "POC" + ], + [ + "COE", + "MOT" + ], + [ + "MPS", + "SOM" + ], + [ + "GER", + "TTH" + ], + [ + "TBM", + "TMB" + ], + [ + "PDL", + "PP3" + ], + [ + "AMA", + "PLA" + ], + [ + "THQ", + "TZP" + ], + [ + "RBZ", + "RIC" + ], + [ + "MDI", + "N0U" + ], + [ + "6LX", + "MJQ" + ], + [ + "AQZ", + "RNY" + ], + [ + "263", + "267" + ], + [ + "NEV", + "NIV", + "NVP" + ], + [ + "PYD", + "YF1" + ], + [ + "8MG", + "G33" + ], + [ + "0SN", + "88N" + ], + [ + "7CP", + "MB0" + ], + [ + "HIC", + "MH1", + "NEM" + ], + [ + "HDZ", + "TFH" + ], + [ + "DIS", + "HOH", + "MTO", + "O", + "OX", + "OXO", + "QTR" + ], + [ + "F2O", + "FEO" + ], + [ + "O2", + "OXY" + ], + [ + "2MO", + "MM4" + ], + [ + "IPS", + "PI" + ], + [ + "H2S", + "S" + ], + [ + "BR", + "BRO" + ], + [ + "2SI", + "IDS" + ], + [ + "BHD", + "DOH" + ], + [ + "I7P", + "UEV" + ], + [ + "CL", + "CLO" + ], + [ + "F", + "FLO" + ], + [ + "MH6", + "SRI" + ], + [ + "672", + "Q72" + ], + [ + "424", + "YJC" + ], + [ + "1MA", + "MAD" + ], + [ + "IDO", + "IOD" + ], + [ + "NGN", + "NH4" + ], + [ + "NMO", + "NO" + ], + [ + "SO4", + "SUL" + ], + [ + "HYD", + "OH" + ], + [ + "B51", + "WCC" + ], + [ + "ZN", + "ZN2" + ], + [ + "FIB", + "IBF" + ], + [ + "PGS", + "SPG" + ], + [ + "ADE", + "ANE" + ], + [ + "NEW", + "PCQ" + ], + [ + "EGG", + "KDH" + ], + [ + "G1T", + "G1Z" + ], + [ + "B7D", + "TRU" + ], + [ + "P5P", + "PR5" + ], + [ + "9HE", + "KS1" + ], + [ + "DHY", + "HAA" + ], + [ + "DAH", + "TY3" + ], + [ + "LNR", + "LT4" + ], + [ + "NAD", + "NAH" + ], + [ + "EHP", + "MTY" + ], + [ + "PIX", + "TF6" + ], + [ + "CSY", + "GYS" + ], + [ + "FA", + "FOL" + ], + [ + "STY", + "TYS" + ], + [ + "69X", + "YAP" + ], + [ + "345", + "CBP" + ], + [ + "DGH", + "GHP", + "NTY" + ], + [ + "CQR", + "CR2" + ], + [ + "WAK", + "WB8" + ], + [ + "KSB", + "QHL" + ], + [ + "BAP", + "BP", + "BPC" + ], + [ + "6AB", + "BE2" + ], + [ + "L0F", + "L0H" + ], + [ + "BEZ", + "BOX" + ], + [ + "F9V", + "FSL" + ], + [ + "1PY", + "PPY" + ], + [ + "BGG", + "P6S" + ], + [ + "BZO", + "CBZ" + ], + [ + "IOX", + "PMS" + ], + [ + "PCS", + "PHM" + ], + [ + "HFA", + "LLA", + "LOF" + ], + [ + "HPH", + "TPH" + ], + [ + "FRF", + "PUK" + ], + [ + "0AC", + "FOG" + ], + [ + "638", + "XV6" + ], + [ + "BIC", + "MOL" + ], + [ + "3DB", + "D8W" + ], + [ + "PG9", + "PGY" + ], + [ + "119", + "P4P" + ], + [ + "86Q", + "DRG" + ], + [ + "89E", + "LIG" + ], + [ + "CYP", + "GPR" + ], + [ + "K0I", + "URY" + ], + [ + "LTR", + "TRP" + ], + [ + "V70", + "V7F" + ], + [ + "QNC", + "QND" + ], + [ + "0TN", + "RKP" + ], + [ + "QUI", + "QX" + ], + [ + "AC4", + "AMZ" + ], + [ + "D5M", + "DA" + ], + [ + "A", + "AMP" + ], + [ + "0DG", + "DFG" + ], + [ + "0G", + "LG" + ], + [ + "DCG", + "DG", + "DGP" + ], + [ + "DI", + "OIP" + ], + [ + "5GP", + "CPG", + "G", + "G25" + ], + [ + "I", + "IMP" + ], + [ + "GCP", + "GTO" + ], + [ + "GNP", + "GTN" + ] + ], + "cofactors": [ + null, + "01A", + "01K", + "07D", + "0AF", + "0ET", + "0HG", + "0HH", + "0UM", + "0WD", + "0XU", + "0Y0", + "0Y1", + "0Y2", + "18W", + "1C4", + "1CP", + "1CV", + "1CZ", + "1DG", + "1HA", + "1JO", + "1JP", + "1R4", + "1TP", + "1TY", + "1U0", + "1VU", + "1XE", + "1YJ", + "29P", + "2CP", + "2MD", + "2NE", + "2TP", + "2TY", + "36A", + "37H", + "3AA", + "3CD", + "3CP", + "3GC", + "3H9", + "3HC", + "488", + "48T", + "4AB", + "4CA", + "4CO", + "4IK", + "4LS", + "4LU", + "4YP", + "5AU", + "5GP", + "5GY", + "62X", + "66S", + "6FA", + "6HE", + "6J4", + "6NR", + "6V0", + "76H", + "76J", + "76K", + "76L", + "76M", + "7AP", + "7HE", + "7MQ", + "8EF", + "8EL", + "8EO", + "8FL", + "8ID", + "8JD", + "8PA", + "8Q1", + "8Z2", + "A", + "A3D", + "ABY", + "ACO", + "ADP", + "AGQ", + "AHE", + "AMP", + "AMX", + "AP0", + "ASC", + "AT5", + "ATA", + "ATP", + "B12", + "BCA", + "BCB", + "BCL", + "BCO", + "BCR", + "BH4", + "BHS", + "BIO", + "BOB", + "BPH", + "BSJ", + "BTI", + "BTN", + "BYC", + "BYG", + "BYT", + "C", + "C25", + "C2F", + "C5P", + "CA3", + "CA5", + "CA6", + "CA8", + "CAA", + "CAJ", + "CAO", + "CCH", + "CDP", + "CHL", + "CIC", + "CL0", + "CL1", + "CL2", + "CL7", + "CLA", + "CMC", + "CMX", + "CNC", + "CND", + "CO6", + "CO8", + "COA", + "COB", + "COD", + "COF", + "COH", + "COM", + "COO", + "COT", + "COW", + "COY", + "COZ", + "CP3", + "CPG", + "CRW", + "CTP", + "CYC", + "CYP", + "D7K", + "DCA", + "DCC", + "DCQ", + "DDH", + "DG1", + "DHE", + "DLZ", + "DN4", + "DPM", + "DT", + "DTB", + "DU", + "EAD", + "EB4", + "ECH", + "EEM", + "EN0", + "ENA", + "EPY", + "EQ3", + "ESG", + "F42", + "F43", + "FA8", + "FAA", + "FAB", + "FAD", + "FAE", + "FAM", + "FAO", + "FAS", + "FCG", + "FCX", + "FDA", + "FDE", + "FED", + "FFO", + "FMI", + "FMN", + "FNR", + "FNS", + "FON", + "FOZ", + "FRE", + "FSH", + "FYN", + "G", + "G25", + "G27", + "G9R", + "GBI", + "GBP", + "GBX", + "GDN", + "GDP", + "GDS", + "GF5", + "GGC", + "GIP", + "GMP", + "GNB", + "GPR", + "GPS", + "GRA", + "GS8", + "GSB", + "GSF", + "GSH", + "GSM", + "GSN", + "GSO", + "GTB", + "GTD", + "GTP", + "GTS", + "GTX", + "GTY", + "GVX", + "H2B", + "H4B", + "H4M", + "H4Z", + "HAG", + "HAS", + "HAX", + "HBI", + "HBL", + "HCC", + "HDD", + "HDE", + "HEA", + "HEB", + "HEC", + "HEM", + "HIF", + "HMG", + "HQE", + "HSC", + "HTL", + "HXC", + "IBG", + "ICY", + "IRF", + "ISW", + "JM2", + "JM5", + "JM7", + "K15", + "L9X", + "LEE", + "LNC", + "LPA", + "LPB", + "LPM", + "LZ6", + "M43", + "M6T", + "MCA", + "MCD", + "MCN", + "MDE", + "MDO", + "MEF", + "MFN", + "MGD", + "MH0", + "MLC", + "MMP", + "MNH", + "MNR", + "MPL", + "MQ7", + "MQ8", + "MQ9", + "MQE", + "MSS", + "MTE", + "MTQ", + "MTV", + "MYA", + "N01", + "N1T", + "N3T", + "NA0", + "NAD", + "NAE", + "NAH", + "NAI", + "NAJ", + "NAP", + "NAQ", + "NAX", + "NBD", + "NBP", + "NCA", + "NDC", + "NDE", + "NDO", + "NDP", + "NHD", + "NHM", + "NHQ", + "NHW", + "NMX", + "NOP", + "NPL", + "NPW", + "ODP", + "OXK", + "P1H", + "P2Q", + "P3Q", + "P5F", + "PAD", + "PAU", + "PCD", + "PDP", + "PEB", + "PLP", + "PLQ", + "PLR", + "PMP", + "PNS", + "PNY", + "PP9", + "PQN", + "PQQ", + "PUB", + "PXL", + "PXP", + "PZP", + "R1T", + "RAW", + "RBF", + "RFL", + "RGE", + "S0N", + "S1T", + "SA8", + "SAD", + "SAE", + "SAH", + "SAM", + "SCA", + "SCD", + "SCO", + "SDX", + "SE8", + "SFD", + "SFG", + "SH0", + "SHT", + "SMM", + "SND", + "SOP", + "SRM", + "SX0", + "T", + "T1G", + "T5X", + "T6F", + "TAD", + "TAP", + "TC6", + "TD6", + "TD7", + "TD8", + "TD9", + "TDK", + "TDL", + "TDM", + "TDP", + "TDT", + "TDW", + "TGG", + "THB", + "THD", + "THF", + "THG", + "THH", + "THM", + "THV", + "THW", + "THY", + "TMP", + "TOQ", + "TP7", + "TP8", + "TPP", + "TPQ", + "TPU", + "TPW", + "TPZ", + "TQQ", + "TRQ", + "TS5", + "TT8", + "TTP", + "TXD", + "TXE", + "TXP", + "TXZ", + "TYD", + "TYQ", + "TYY", + "TZD", + "U", + "U25", + "U5P", + "UAH", + "UDP", + "UEG", + "UMP", + "UP2", + "UP3", + "UQ1", + "UQ2", + "UQ5", + "UQ6", + "UTP", + "UU3", + "VWW", + "WCA", + "WSD", + "WWF", + "XAX", + "XP8", + "XP9", + "Y7Y", + "YNC", + "ZBF", + "ZEM", + "ZID", + "ZNH", + "ZOZ" + ], + "artifacts": [ + "02U", + "12P", + "13P", + "144", + "148", + "15P", + "16P", + "1EM", + "1PE", + "1PG", + "1PS", + "2DP", + "2JC", + "2NV", + "2OP", + "2PE", + "32M", + "33O", + "3HR", + "3PG", + "3SY", + "3V3", + "543", + "6JZ", + "6PE", + "7E8", + "7E9", + "7I7", + "7N5", + "7PE", + "7PG", + "7PH", + "90A", + "9FO", + "9JE", + "9YU", + "AAE", + "AE3", + "AE4", + "AGA", + "AKR", + "AUC", + "B3H", + "B3P", + "B4T", + "B4X", + "BAM", + "BCN", + "BDN", + "BE7", + "BEN", + "BET", + "BEZ", + "BGL", + "BHG", + "BNG", + "BNZ", + "BOG", + "BOX", + "BTB", + "BU1", + "BXC", + "C10", + "C14", + "C8E", + "CAC", + "CAD", + "CAQ", + "CD4", + "CE1", + "CE9", + "CHT", + "CIT", + "CN3", + "CN6", + "CPS", + "CRC", + "CRY", + "CXE", + "CXS", + "D10", + "D12", + "D1D", + "D22", + "DAO", + "DD9", + "DDQ", + "DDR", + "DEP", + "DET", + "DHB", + "DHJ", + "DIO", + "DKA", + "DLA", + "DMF", + "DMI", + "DMR", + "DOX", + "DPG", + "DR6", + "DRE", + "DTD", + "DTT", + "DTU", + "DTV", + "E4N", + "EAP", + "EEE", + "EPE", + "ETE", + "ETF", + "ETX", + "F09", + "F4R", + "FJO", + "FTT", + "FW5", + "GLV", + "GOL", + "GVT", + "GYF", + "HAE", + "HAI", + "HCA", + "HED", + "HEX", + "HEZ", + "HP3", + "HP6", + "HSG", + "HSH", + "HT3", + "HTG", + "HTH", + "HTO", + "HZA", + "I3C", + "I6P", + "ICI", + "ICT", + "IHP", + "IHS", + "IMD", + "IOX", + "IPH", + "JDJ", + "K12", + "KDO", + "KGN", + "L1P", + "L2C", + "L2P", + "L3P", + "L4P", + "LAC", + "LAU", + "LDA", + "LI1", + "LIN", + "LMR", + "LMT", + "LMU", + "LUT", + "M2M", + "MAC", + "MAE", + "MB3", + "MBN", + "MBO", + "MC3", + "ME2", + "MES", + "MGY", + "MLA", + "MLI", + "MLT", + "MP3", + "MPD", + "MPO", + "MRD", + "MYR", + "N8E", + "NBN", + "NET", + "NEX", + "NHE", + "O4B", + "OCT", + "OES", + "OGA", + "OP2", + "OTE", + "P03", + "P15", + "P1O", + "P22", + "P25", + "P2K", + "P33", + "P3G", + "P4C", + "P4G", + "P4K", + "P6G", + "PA8", + "PC8", + "PD7", + "PE3", + "PE4", + "PE5", + "PE6", + "PE7", + "PE8", + "PEG", + "PEP", + "PEU", + "PEX", + "PG0", + "PG4", + "PG5", + "PG6", + "PG8", + "PGE", + "PGF", + "PGO", + "PGQ", + "PGR", + "PHB", + "PHQ", + "PIG", + "PL9", + "PLC", + "PMS", + "PPI", + "PQ9", + "PQE", + "PTD", + "PUT", + "PVO", + "PX2", + "PX4", + "QGT", + "QJE", + "QLB", + "RG1", + "RWB", + "SAR", + "SGM", + "SIN", + "SOG", + "SP5", + "SPD", + "SPJ", + "SPM", + "SPZ", + "SQU", + "SRT", + "TAM", + "TAR", + "TAU", + "TBU", + "TCE", + "TCN", + "TEA", + "TFA", + "THE", + "TLA", + "TMA", + "TOE", + "TRD", + "TRS", + "UMQ", + "UND", + "V1J", + "VX", + "XAT", + "XP4", + "XPA", + "XPE", + "Y69" + ], + "kinase_inhibitors": [ + "00J", + "01I", + "01P", + "027", + "02Z", + "032", + "039", + "03C", + "03K", + "03P", + "03Q", + "03X", + "03Z", + "041", + "044", + "046", + "048", + "04G", + "04K", + "04L", + "04Z", + "052", + "057", + "05B", + "05J", + "06F", + "06N", + "06Z", + "071", + "07C", + "07J", + "07Q", + "07R", + "07S", + "07U", + "07Z", + "084", + "085", + "08G", + "08Z", + "090", + "093", + "094", + "09H", + "09J", + "09K", + "09Z", + "0B0", + "0B9", + "0BG", + "0BQ", + "0BX", + "0BY", + "0BZ", + "0C0", + "0C3", + "0C4", + "0C5", + "0C6", + "0C7", + "0C8", + "0C9", + "0CE", + "0CI", + "0CK", + "0EI", + "0F0", + "0F2", + "0F4", + "0F5", + "0F9", + "0FK", + "0FN", + "0FO", + "0FR", + "0FS", + "0FY", + "0G1", + "0G2", + "0G3", + "0GW", + "0H2", + "0HD", + "0J3", + "0J8", + "0J9", + "0JA", + "0JE", + "0JF", + "0JG", + "0JH", + "0JJ", + "0JK", + "0JL", + "0K0", + "0K1", + "0K6", + "0KD", + "0KF", + "0KO", + "0LI", + "0MX", + "0MY", + "0NF", + "0NH", + "0NL", + "0NR", + "0NT", + "0NU", + "0NV", + "0O7", + "0O8", + "0O9", + "0OA", + "0OK", + "0OL", + "0OM", + "0ON", + "0OO", + "0OP", + "0PF", + "0Q2", + "0R4", + "0RF", + "0RS", + "0RX", + "0S0", + "0S7", + "0S8", + "0S9", + "0SB", + "0SC", + "0SD", + "0SE", + "0SJ", + "0SO", + "0SQ", + "0SR", + "0SS", + "0ST", + "0SU", + "0SV", + "0SW", + "0SX", + "0SY", + "0T2", + "0T8", + "0TA", + "0TB", + "0TP", + "0TZ", + "0U0", + "0UJ", + "0UN", + "0US", + "0UU", + "0UV", + "0UW", + "0V0", + "0VE", + "0VF", + "0VG", + "0VH", + "0VM", + "0VN", + "0VU", + "0W7", + "0WA", + "0WB", + "0WC", + "0WH", + "0WM", + "0WN", + "0WP", + "0WR", + "0X2", + "0X5", + "0X6", + "0XF", + "0XG", + "0XH", + "0XP", + "0XZ", + "0Y4", + "0YH", + "0YJ", + "0YO", + "106", + "107", + "10K", + "10N", + "10Z", + "112", + "11G", + "11K", + "12C", + "12Z", + "13J", + "13K", + "13L", + "13V", + "14I", + "14K", + "14S", + "15G", + "15T", + "15V", + "16K", + "16W", + "16X", + "17G", + "17P", + "17V", + "18E", + "18K", + "18R", + "18Z", + "199", + "19A", + "19B", + "19E", + "19K", + "19P", + "19Q", + "19R", + "19S", + "19Z", + "1AM", + "1AO", + "1AU", + "1B4", + "1B5", + "1B6", + "1BJ", + "1BK", + "1BM", + "1BQ", + "1BR", + "1BU", + "1C7", + "1C8", + "1C9", + "1CD", + "1CK", + "1D1", + "1DR", + "1DT", + "1E0", + "1E8", + "1EH", + "1EL", + "1F8", + "1FM", + "1FN", + "1FV", + "1G0", + "1GK", + "1H4", + "1HK", + "1HW", + "1HX", + "1IF", + "1IJ", + "1IM", + "1IW", + "1IX", + "1IZ", + "1J2", + "1J3", + "1J4", + "1J5", + "1J6", + "1JC", + "1JI", + "1JV", + "1JX", + "1K2", + "1K3", + "1KO", + "1KP", + "1LB", + "1LC", + "1LE", + "1LT", + "1M3", + "1M8", + "1N1", + "1N3", + "1N6", + "1N8", + "1N9", + "1NP", + "1NX", + "1O5", + "1OA", + "1OB", + "1OC", + "1OO", + "1P5", + "1P6", + "1PF", + "1PH", + "1PP", + "1PU", + "1Q3", + "1Q4", + "1QG", + "1QJ", + "1QK", + "1QM", + "1QN", + "1QO", + "1R9", + "1RA", + "1RJ", + "1RO", + "1RQ", + "1RS", + "1RU", + "1SB", + "1SK", + "1ST", + "1SU", + "1SW", + "1TT", + "1UH", + "1UJ", + "1UK", + "1UL", + "1UO", + "1V5", + "1VI", + "1WS", + "1WU", + "1WY", + "1XZ", + "1Y6", + "1YG", + "1YZ", + "207", + "20K", + "20Z", + "215", + "21I", + "21O", + "21Z", + "222", + "22K", + "22L", + "22T", + "22Z", + "23D", + "242", + "24A", + "24K", + "24N", + "24R", + "24V", + "24Z", + "253", + "255", + "25J", + "25Q", + "25Z", + "26D", + "26K", + "26L", + "26Z", + "274", + "276", + "279", + "27D", + "27Z", + "287", + "28D", + "292", + "29A", + "29B", + "29L", + "29X", + "29Y", + "29Z", + "2A2", + "2A6", + "2A8", + "2AI", + "2AN", + "2BZ", + "2C3", + "2C4", + "2CH", + "2D2", + "2GI", + "2HB", + "2HK", + "2HV", + "2HW", + "2HX", + "2I5", + "2I8", + "2IE", + "2IJ", + "2IX", + "2JZ", + "2K0", + "2K2", + "2K5", + "2K7", + "2KC", + "2KD", + "2M2", + "2NK", + "2NQ", + "2NR", + "2NS", + "2O6", + "2OL", + "2OO", + "2OQ", + "2P5", + "2PU", + "2Q7", + "2QK", + "2QT", + "2QU", + "2QV", + "2R4", + "2RL", + "2SB", + "2SC", + "2SH", + "2TA", + "2TR", + "2TT", + "2V1", + "2V2", + "2V3", + "2V9", + "2VL", + "2VT", + "2VU", + "2VV", + "2VW", + "2VX", + "2W6", + "2WC", + "2WE", + "2WF", + "2WG", + "2WH", + "2WI", + "2WJ", + "2WK", + "2X6", + "2YE", + "2YK", + "304", + "306", + "308", + "30E", + "30G", + "30K", + "30T", + "319", + "31J", + "31K", + "31L", + "31S", + "31V", + "31W", + "31X", + "31Y", + "320", + "324", + "325", + "32W", + "330", + "337", + "33A", + "349", + "34I", + "34L", + "34O", + "34U", + "34W", + "34Y", + "351", + "353", + "358", + "35F", + "35H", + "35R", + "35W", + "35X", + "35Z", + "362", + "363", + "36N", + "36O", + "36Q", + "36R", + "371", + "373", + "37J", + "37O", + "37Q", + "37W", + "386", + "38G", + "38M", + "38O", + "38P", + "38R", + "38W", + "38Z", + "390", + "396", + "39G", + "39I", + "39P", + "39Z", + "3A3", + "3AM", + "3B3", + "3BM", + "3C3", + "3C8", + "3C9", + "3CI", + "3D3", + "3D7", + "3D8", + "3D9", + "3DC", + "3DK", + "3DL", + "3DV", + "3DW", + "3DX", + "3E4", + "3E8", + "3EH", + "3EL", + "3EW", + "3EY", + "3FE", + "3FF", + "3FN", + "3FP", + "3FV", + "3FX", + "3G5", + "3GF", + "3GU", + "3H8", + "3HJ", + "3HK", + "3HN", + "3HQ", + "3HT", + "3I3", + "3I6", + "3I7", + "3IF", + "3IP", + "3IU", + "3J7", + "3JA", + "3JB", + "3JW", + "3JZ", + "3K3", + "3K6", + "3K7", + "3KC", + "3KZ", + "3L0", + "3LH", + "3NC", + "3ND", + "3NE", + "3NG", + "3NL", + "3NU", + "3NV", + "3NW", + "3O0", + "3O4", + "3O7", + "3O8", + "3OA", + "3OK", + "3OU", + "3OV", + "3P0", + "3P6", + "3PS", + "3Q0", + "3Q1", + "3Q2", + "3Q3", + "3Q4", + "3Q5", + "3Q6", + "3QH", + "3QS", + "3QT", + "3QW", + "3QX", + "3QY", + "3R0", + "3R1", + "3RA", + "3RC", + "3RE", + "3RF", + "3RH", + "3RJ", + "3RL", + "3RT", + "3RW", + "3RZ", + "3S1", + "3SB", + "3SC", + "3SG", + "3SM", + "3T3", + "3T8", + "3T9", + "3TA", + "3TI", + "3U1", + "3U5", + "3U6", + "3U9", + "3UI", + "3UL", + "3UO", + "3UP", + "3UR", + "3V0", + "3VC", + "3VD", + "3VE", + "3WA", + "3WH", + "3WJ", + "3WK", + "3WN", + "3WO", + "3WR", + "3X7", + "3XK", + "3XL", + "3XM", + "3YO", + "3YR", + "3YT", + "3YV", + "3YX", + "3YY", + "3Z1", + "3Z2", + "3Z3", + "3Z4", + "3Z5", + "3Z6", + "3ZC", + "400", + "404", + "406", + "40L", + "40M", + "41A", + "41B", + "422", + "42C", + "42I", + "42J", + "42K", + "42P", + "42Q", + "430", + "437", + "43A", + "43R", + "446", + "44X", + "456", + "45B", + "45K", + "45Q", + "45R", + "460", + "464", + "466", + "467", + "469", + "46A", + "46C", + "46G", + "46K", + "477", + "47I", + "47W", + "47X", + "481", + "48B", + "48K", + "495", + "499", + "49B", + "49J", + "4AU", + "4B0", + "4B7", + "4C9", + "4CK", + "4CV", + "4CW", + "4DF", + "4DJ", + "4DK", + "4DL", + "4DN", + "4DO", + "4DQ", + "4DT", + "4E1", + "4E2", + "4E3", + "4EF", + "4EJ", + "4EK", + "4EL", + "4F2", + "4F6", + "4FJ", + "4FT", + "4GD", + "4GF", + "4GU", + "4H5", + "4HK", + "4HW", + "4HZ", + "4IH", + "4J7", + "4JZ", + "4K0", + "4K4", + "4K7", + "4KA", + "4KH", + "4KK", + "4KT", + "4L5", + "4L6", + "4L7", + "4LH", + "4LO", + "4LY", + "4MG", + "4MH", + "4MK", + "4O7", + "4OK", + "4OQ", + "4OR", + "4P4", + "4PV", + "4Q2", + "4QE", + "4QG", + "4QV", + "4QX", + "4QZ", + "4R0", + "4RB", + "4RJ", + "4RK", + "4RM", + "4RU", + "4RV", + "4S1", + "4S2", + "4S3", + "4SB", + "4SP", + "4ST", + "4T3", + "4T5", + "4T6", + "4T9", + "4TT", + "4TV", + "4TW", + "4UB", + "4UQ", + "4US", + "4UT", + "4V8", + "4V9", + "4VB", + "4VC", + "4VD", + "4VE", + "4VF", + "4VG", + "4VJ", + "4VQ", + "4VZ", + "4W1", + "4W5", + "4WD", + "4WE", + "4WG", + "4Y0", + "4YK", + "4YM", + "4YV", + "4YW", + "4YX", + "4Z5", + "4Z8", + "4ZB", + "4ZG", + "4ZH", + "4ZJ", + "4ZQ", + "4ZR", + "504", + "507", + "50D", + "50E", + "50F", + "50H", + "50J", + "50O", + "50R", + "50V", + "50W", + "50Y", + "50Z", + "514", + "517", + "519", + "51W", + "529", + "52P", + "530", + "533", + "534", + "537", + "547", + "54E", + "54F", + "54G", + "54J", + "54P", + "54R", + "54S", + "54Z", + "551", + "553", + "55E", + "55F", + "55J", + "55M", + "55S", + "55U", + "55Y", + "56H", + "56Z", + "571", + "573", + "575", + "57N", + "580", + "582", + "583", + "584", + "585", + "589", + "58C", + "58V", + "596", + "59N", + "59T", + "59U", + "5B1", + "5B2", + "5B3", + "5B4", + "5BE", + "5BM", + "5BN", + "5BP", + "5BS", + "5CN", + "5CP", + "5CV", + "5DF", + "5DN", + "5E1", + "5E2", + "5E5", + "5E6", + "5EZ", + "5FI", + "5GX", + "5H2", + "5H5", + "5H7", + "5HK", + "5I1", + "5I4", + "5I9", + "5ID", + "5IE", + "5JA", + "5JE", + "5JG", + "5JR", + "5JZ", + "5KW", + "5L4", + "5LK", + "5LS", + "5MT", + "5N3", + "5N4", + "5NW", + "5O1", + "5O4", + "5O7", + "5OE", + "5OQ", + "5P6", + "5P8", + "5PB", + "5PW", + "5Q2", + "5Q3", + "5Q4", + "5QI", + "5QM", + "5QO", + "5QQ", + "5QS", + "5R1", + "5RC", + "5S8", + "5SC", + "5SF", + "5SZ", + "5T1", + "5T2", + "5TF", + "5TL", + "5U3", + "5U4", + "5U5", + "5U6", + "5UY", + "5VC", + "5VS", + "5W2", + "5W3", + "5W6", + "5W7", + "5W8", + "5W9", + "5WE", + "5WF", + "5WH", + "5WR", + "5X1", + "5X4", + "5XG", + "5XH", + "5XJ", + "5XV", + "5Y2", + "5Y3", + "5Y4", + "5Y6", + "5Y7", + "5Y8", + "5YS", + "5YZ", + "5Z5", + "5ZH", + "608", + "609", + "60B", + "60D", + "60E", + "60K", + "60O", + "614", + "61E", + "61K", + "61U", + "61Y", + "622", + "626", + "627", + "628", + "62E", + "62K", + "62M", + "62O", + "630", + "631", + "633", + "634", + "63A", + "63B", + "63E", + "63I", + "63K", + "63L", + "63M", + "63N", + "647", + "64M", + "64V", + "65A", + "65C", + "65L", + "65R", + "65U", + "664", + "66A", + "66K", + "66L", + "66P", + "66T", + "66X", + "676", + "679", + "67T", + "67U", + "685", + "68R", + "68U", + "69C", + "69Z", + "6A6", + "6A7", + "6AE", + "6AF", + "6BB", + "6BE", + "6BF", + "6BJ", + "6BU", + "6BZ", + "6C3", + "6CB", + "6CD", + "6CP", + "6CY", + "6DA", + "6DC", + "6DP", + "6E2", + "6F2", + "6FB", + "6FD", + "6G2", + "6GD", + "6GE", + "6GY", + "6H3", + "6H4", + "6HF", + "6HH", + "6HJ", + "6HK", + "6HL", + "6ID", + "6J9", + "6JS", + "6JV", + "6K0", + "6K1", + "6K2", + "6K4", + "6K5", + "6K7", + "6KC", + "6KD", + "6L4", + "6LF", + "6LQ", + "6MV", + "6N9", + "6NB", + "6NC", + "6NP", + "6OJ", + "6P6", + "6P8", + "6PF", + "6PV", + "6Q1", + "6QB", + "6QH", + "6QX", + "6QY", + "6QZ", + "6R0", + "6R1", + "6RF", + "6RG", + "6S1", + "6S3", + "6SC", + "6SD", + "6SF", + "6SH", + "6SL", + "6SN", + "6SO", + "6T2", + "6T3", + "6T5", + "6TD", + "6TE", + "6TP", + "6TS", + "6TT", + "6U1", + "6U2", + "6U7", + "6UE", + "6UF", + "6UG", + "6UH", + "6UI", + "6UJ", + "6UK", + "6UM", + "6UX", + "6UY", + "6V3", + "6V4", + "6V5", + "6VK", + "6VL", + "6VM", + "6XE", + "6XK", + "6XL", + "6XP", + "6XT", + "6YD", + "6YE", + "6YL", + "6YN", + "6Z2", + "6Z5", + "6Z7", + "6ZF", + "6ZG", + "6ZK", + "6ZV", + "6ZZ", + "706", + "70I", + "70S", + "70T", + "70W", + "710", + "718", + "71A", + "71G", + "71L", + "71M", + "71N", + "729", + "72B", + "72L", + "734", + "738", + "73Q", + "73T", + "740", + "741", + "746", + "748", + "74F", + "74H", + "74J", + "74K", + "74L", + "74N", + "74O", + "74Q", + "751", + "75E", + "75H", + "75X", + "76A", + "76C", + "76P", + "76Q", + "76Y", + "76Z", + "770", + "774", + "77A", + "77C", + "77V", + "78L", + "78W", + "793", + "796", + "799", + "79C", + "79D", + "79O", + "79Q", + "79R", + "79S", + "79T", + "79Y", + "7A7", + "7AA", + "7AE", + "7AJ", + "7AU", + "7AV", + "7CE", + "7CP", + "7CS", + "7CU", + "7DZ", + "7EY", + "7FC", + "7FM", + "7G6", + "7G7", + "7G8", + "7G9", + "7GB", + "7GG", + "7GI", + "7GJ", + "7GK", + "7GL", + "7GS", + "7GT", + "7GV", + "7GX", + "7GY", + "7GZ", + "7H4", + "7HD", + "7HF", + "7HK", + "7IF", + "7IH", + "7IK", + "7IQ", + "7KA", + "7KC", + "7KD", + "7KF", + "7KG", + "7KU", + "7KV", + "7KW", + "7KX", + "7L0", + "7LI", + "7LK", + "7LV", + "7LY", + "7M0", + "7MJ", + "7MP", + "7MY", + "7O3", + "7PY", + "7QQ", + "7QU", + "7RO", + "7TH", + "7TW", + "7TZ", + "7U5", + "7UX", + "7VH", + "7VT", + "7X1", + "7X2", + "7X3", + "7X4", + "7X5", + "7X6", + "7X7", + "7X8", + "7XH", + "7XN", + "7XO", + "7XR", + "7XU", + "7XW", + "7YG", + "7YS", + "7Z0", + "7ZC", + "809", + "80C", + "80E", + "80H", + "80U", + "816", + "81C", + "81G", + "824", + "82A", + "82B", + "831", + "839", + "83H", + "83P", + "844", + "84M", + "84P", + "84R", + "84S", + "84U", + "84X", + "855", + "857", + "859", + "85A", + "85S", + "85V", + "85X", + "862", + "86C", + "86E", + "86G", + "86H", + "86K", + "86L", + "877", + "87B", + "887", + "889", + "88A", + "88C", + "88O", + "88Z", + "891", + "893", + "89E", + "8AM", + "8BH", + "8BM", + "8BP", + "8BQ", + "8BS", + "8BV", + "8BY", + "8C1", + "8C5", + "8CC", + "8CD", + "8CG", + "8D6", + "8DJ", + "8DK", + "8DS", + "8DV", + "8DW", + "8DY", + "8E1", + "8E8", + "8EN", + "8ET", + "8FI", + "8FR", + "8FU", + "8FX", + "8FY", + "8GQ", + "8GR", + "8GS", + "8GU", + "8GV", + "8GX", + "8GY", + "8H0", + "8H1", + "8I1", + "8IL", + "8IQ", + "8IW", + "8JC", + "8KF", + "8KQ", + "8KZ", + "8LN", + "8LU", + "8LY", + "8M1", + "8M8", + "8MB", + "8MK", + "8MN", + "8MQ", + "8MT", + "8MW", + "8MY", + "8MZ", + "8N2", + "8N5", + "8N8", + "8NZ", + "8O8", + "8OH", + "8OK", + "8ON", + "8OR", + "8OT", + "8OU", + "8OV", + "8OW", + "8PR", + "8PT", + "8PV", + "8Q5", + "8QB", + "8QE", + "8QH", + "8QK", + "8QT", + "8QW", + "8QZ", + "8R4", + "8R7", + "8RC", + "8RH", + "8ST", + "8TK", + "8TN", + "8UB", + "8UV", + "8V4", + "8V7", + "8WH", + "8X2", + "8X5", + "8X7", + "8XB", + "8XE", + "8XH", + "8XK", + "8XN", + "8ZF", + "8ZH", + "8ZK", + "8ZN", + "8ZQ", + "8ZT", + "8ZW", + "8ZZ", + "900", + "904", + "90B", + "90E", + "90F", + "90K", + "90N", + "90T", + "90W", + "90Z", + "912", + "919", + "91E", + "91H", + "91K", + "91L", + "91O", + "91X", + "924", + "925", + "92C", + "92D", + "92J", + "92M", + "92P", + "92Q", + "932", + "933", + "934", + "937", + "939", + "93J", + "953", + "95U", + "960", + "96M", + "96Y", + "971", + "979", + "97B", + "980", + "981", + "984", + "985", + "98A", + "98D", + "98G", + "98M", + "992", + "994", + "99J", + "99K", + "99M", + "99V", + "99Z", + "9A6", + "9AJ", + "9BD", + "9CT", + "9D8", + "9DB", + "9DP", + "9E1", + "9E4", + "9EJ", + "9EM", + "9EO", + "9ES", + "9FC", + "9FS", + "9FV", + "9G5", + "9HB", + "9HP", + "9HR", + "9I2", + "9I5", + "9I8", + "9ID", + "9IK", + "9IO", + "9IS", + "9IV", + "9J4", + "9JI", + "9JO", + "9JS", + "9K5", + "9K8", + "9KI", + "9KO", + "9LL", + "9M3", + "9N8", + "9NH", + "9NQ", + "9NX", + "9O2", + "9O5", + "9OF", + "9OL", + "9OO", + "9QK", + "9QT", + "9T6", + "9TO", + "9VS", + "9VV", + "9WG", + "9WS", + "9WU", + "9WX", + "9X4", + "9XA", + "9XK", + "9XO", + "9Y5", + "9Y8", + "9YE", + "9YQ", + "9YS", + "9YV", + "9YY", + "9YZ", + "9Z2", + "9Z4", + "9ZB", + "9ZP", + "9ZS", + "A", + "A03", + "A06", + "A07", + "A0H", + "A0Q", + "A0T", + "A0X", + "A17", + "A1K", + "A1N", + "A25", + "A27", + "A28", + "A3E", + "A3F", + "A3H", + "A3K", + "A3Q", + "A3W", + "A42", + "A4B", + "A4N", + "A4Q", + "A4T", + "A4U", + "A4W", + "A53", + "A58", + "A5B", + "A5E", + "A5G", + "A5H", + "A5K", + "A5Q", + "A5W", + "A5Z", + "A65", + "A6E", + "A6H", + "A6W", + "A6X", + "A6Z", + "A7H", + "A7K", + "A7N", + "A7O", + "A7Q", + "A7X", + "A82", + "A8H", + "A8K", + "A8Q", + "A96", + "A98", + "A9B", + "A9E", + "A9K", + "A9R", + "A9T", + "A9U", + "A9W", + "AA0", + "AA2", + "AAK", + "AAV", + "AAX", + "AAZ", + "ABJ", + "ABO", + "ABQ", + "ACK", + "ACP", + "AD5", + "ADE", + "ADN", + "ADP", + "ADZ", + "AEE", + "AEQ", + "AFE", + "AFK", + "AFM", + "AFU", + "AFV", + "AFW", + "AG1", + "AGI", + "AGS", + "AGX", + "AGY", + "AHK", + "AIZ", + "AJG", + "AJK", + "AJR", + "AK1", + "AK2", + "AK3", + "AK4", + "AK5", + "AK6", + "AK7", + "AK8", + "AKI", + "ALH", + "AM0", + "AM5", + "AM6", + "AM7", + "AM8", + "AM9", + "AMP", + "AN2", + "ANK", + "ANP", + "ANW", + "AOK", + "AOW", + "AP2", + "AP9", + "AQ2", + "AQ4", + "AQ5", + "AQ6", + "AQ8", + "AQE", + "AQG", + "AQT", + "AQW", + "AQY", + "AQZ", + "AS6", + "ASH", + "AT8", + "ATK", + "ATP", + "ATU", + "AU2", + "AU5", + "AU8", + "AUE", + "AUG", + "AUH", + "AUT", + "AUW", + "AV9", + "AVK", + "AVZ", + "AW5", + "AWE", + "AWF", + "AWJ", + "AWK", + "AWN", + "AWO", + "AWR", + "AWX", + "AX0", + "AX7", + "AXI", + "AXU", + "AY3", + "AY4", + "AY7", + "AYS", + "AZ5", + "AZ7", + "B0K", + "B0R", + "B10", + "B11", + "B18", + "B1E", + "B1L", + "B2D", + "B43", + "B45", + "B49", + "B4B", + "B4E", + "B4J", + "B4K", + "B4Q", + "B4U", + "B4V", + "B4W", + "B4Y", + "B5E", + "B5G", + "B5S", + "B5T", + "B5W", + "B5Z", + "B6B", + "B6E", + "B6H", + "B6I", + "B6J", + "B6N", + "B6Q", + "B6Z", + "B7B", + "B7R", + "B7S", + "B7V", + "B7W", + "B8I", + "B8L", + "B8Z", + "B90", + "B91", + "B96", + "B97", + "B98", + "B9C", + "B9K", + "BA0", + "BA1", + "BAX", + "BD2", + "BD4", + "BDY", + "BEN", + "BEZ", + "BFF", + "BFK", + "BGE", + "BH9", + "BHO", + "BI1", + "BI2", + "BI3", + "BI4", + "BI5", + "BI8", + "BI9", + "BIM", + "BJG", + "BLZ", + "BMI", + "BMU", + "BMW", + "BNB", + "BPK", + "BQR", + "BR2", + "BR9", + "BRK", + "BRQ", + "BRW", + "BRY", + "BV9", + "BVI", + "BW1", + "BW8", + "BWI", + "BWP", + "BWY", + "BX1", + "BX7", + "BXI", + "BXJ", + "BXM", + "BYL", + "BYM", + "BYP", + "BYU", + "BYZ", + "BZ9", + "C07", + "C0M", + "C0N", + "C1I", + "C1V", + "C2J", + "C2V", + "C4E", + "C4F", + "C52", + "C53", + "C58", + "C5I", + "C5N", + "C5W", + "C5Z", + "C62", + "C6F", + "C6O", + "C70", + "C72", + "C73", + "C74", + "C75", + "C7Y", + "C85", + "C87", + "C92", + "C94", + "C95", + "C96", + "C98", + "C9O", + "C9R", + "C9U", + "C9Z", + "CAQ", + "CC3", + "CC9", + "CCK", + "CCX", + "CD2", + "CDK", + "CFK", + "CG4", + "CG5", + "CG7", + "CG9", + "CGI", + "CHU", + "CIG", + "CIY", + "CJ5", + "CJM", + "CJN", + "CJQ", + "CJT", + "CK1", + "CK2", + "CK3", + "CK4", + "CK5", + "CK6", + "CK7", + "CK8", + "CK9", + "CKG", + "CKJ", + "CKK", + "CKN", + "CKO", + "CMG", + "COM", + "CPB", + "CQ0", + "CQ3", + "CQ6", + "CQ7", + "CQ8", + "CQE", + "CQO", + "CQQ", + "CQU", + "CQW", + "CT6", + "CT7", + "CT8", + "CT9", + "CUE", + "CUR", + "CV4", + "CVQ", + "CVY", + "CWS", + "CWT", + "CX4", + "CXS", + "CZ4", + "D05", + "D0A", + "D0S", + "D15", + "D1A", + "D1D", + "D1E", + "D23", + "D31", + "D36", + "D37", + "D42", + "D4Q", + "D4Z", + "D58", + "D5P", + "D5Q", + "D6I", + "D6Q", + "D6W", + "D6Z", + "D7D", + "D94", + "DB8", + "DBQ", + "DD8", + "DF1", + "DF2", + "DF3", + "DF6", + "DFN", + "DFQ", + "DFS", + "DFW", + "DFY", + "DFZ", + "DG7", + "DHC", + "DI1", + "DJ8", + "DJH", + "DJK", + "DJQ", + "DJW", + "DJX", + "DKG", + "DKI", + "DL1", + "DLN", + "DO0", + "DQ4", + "DQO", + "DQX", + "DRG", + "DT1", + "DT2", + "DT4", + "DT5", + "DTD", + "DTJ", + "DTQ", + "DUI", + "DUK", + "DVD", + "DVJ", + "DVO", + "DW1", + "DWF", + "DWT", + "DXH", + "DXK", + "DXM", + "DXV", + "DY4", + "DYK", + "DYQ", + "DZ6", + "DZC", + "DZO", + "E0M", + "E0P", + "E0S", + "E0X", + "E1B", + "E1D", + "E26", + "E28", + "E2C", + "E2F", + "E2L", + "E2O", + "E2R", + "E2U", + "E2X", + "E3U", + "E3Z", + "E46", + "E47", + "E4S", + "E4V", + "E52", + "E56", + "E57", + "E5J", + "E5M", + "E62", + "E63", + "E6Q", + "E6T", + "E6W", + "E71", + "E75", + "E78", + "E7M", + "E7N", + "E86", + "E8D", + "E8K", + "E8V", + "E91", + "E94", + "E9Z", + "EA7", + "EAE", + "EAQ", + "EAZ", + "EBD", + "EBI", + "ED8", + "EDB", + "EDD", + "EDH", + "EDJ", + "EE4", + "EFP", + "EFQ", + "EFV", + "EG7", + "EGJ", + "EHB", + "EJP", + "EJS", + "EJY", + "EK0", + "EK2", + "EK3", + "EK4", + "EK5", + "EK6", + "EK7", + "EK9", + "EKH", + "EKK", + "EKT", + "EKU", + "ELW", + "ELZ", + "EM7", + "EMH", + "EML", + "EMO", + "EMU", + "EMW", + "EO5", + "EQH", + "EQT", + "EQW", + "EQZ", + "ER8", + "ERK", + "ERW", + "ERZ", + "ES4", + "ESJ", + "ESK", + "ESN", + "ESQ", + "ESW", + "ET8", + "EU2", + "EU4", + "EUI", + "EUN", + "EUX", + "EVC", + "EVK", + "EVL", + "EVQ", + "EVR", + "EWH", + "EX4", + "EX6", + "EX9", + "EXF", + "EXX", + "EXZ", + "EYI", + "EYQ", + "EZB", + "EZE", + "EZJ", + "EZN", + "EZQ", + "EZR", + "EZV", + "F0E", + "F0H", + "F10", + "F18", + "F1B", + "F1S", + "F29", + "F3W", + "F3Z", + "F46", + "F47", + "F48", + "F4A", + "F4B", + "F4C", + "F4G", + "F4J", + "F4N", + "F62", + "F67", + "F6J", + "F6M", + "F76", + "F7D", + "F7I", + "F82", + "F87", + "F88", + "F8B", + "F8E", + "F8H", + "F8I", + "F8M", + "F8P", + "F8R", + "F8S", + "F8Y", + "F8Z", + "F92", + "F97", + "F9J", + "F9N", + "F9Z", + "FAL", + "FAP", + "FAR", + "FAV", + "FAZ", + "FB8", + "FBL", + "FBY", + "FC8", + "FCP", + "FCQ", + "FCS", + "FCZ", + "FDH", + "FDW", + "FE5", + "FE7", + "FEF", + "FER", + "FEW", + "FG9", + "FGE", + "FGF", + "FH0", + "FH3", + "FH5", + "FHX", + "FI3", + "FI4", + "FJ0", + "FJI", + "FJY", + "FKB", + "FKL", + "FKN", + "FKO", + "FKT", + "FKY", + "FL4", + "FLJ", + "FLL", + "FLS", + "FLW", + "FLY", + "FLZ", + "FMD", + "FMJ", + "FMK", + "FML", + "FMM", + "FMW", + "FMY", + "FNI", + "FOI", + "FP3", + "FP4", + "FPH", + "FPU", + "FPW", + "FPX", + "FPZ", + "FQD", + "FQG", + "FQJ", + "FQM", + "FRT", + "FRV", + "FRZ", + "FS7", + "FS8", + "FS9", + "FSE", + "FSS", + "FTU", + "FTZ", + "FU6", + "FU9", + "FVC", + "FW3", + "FWU", + "FXB", + "FXG", + "FYH", + "FYV", + "FYW", + "FZ5", + "FZ8", + "FZ9", + "FZC", + "FZF", + "FZJ", + "FZL", + "FZO", + "FZP", + "FZR", + "FZW", + "G02", + "G0E", + "G0H", + "G0K", + "G0N", + "G0Q", + "G0U", + "G11", + "G1W", + "G2G", + "G3B", + "G41", + "G4E", + "G4H", + "G4J", + "G4K", + "G4N", + "G4Q", + "G4T", + "G4V", + "G4W", + "G4Y", + "G54", + "G5C", + "G5D", + "G5K", + "G5T", + "G5X", + "G62", + "G68", + "G6A", + "G6I", + "G6J", + "G6K", + "G6T", + "G7K", + "G7T", + "G7W", + "G8B", + "G8E", + "G8H", + "G8N", + "G92", + "G93", + "G95", + "G96", + "G97", + "G98", + "G9B", + "G9E", + "GAB", + "GC6", + "GCC", + "GD5", + "GD9", + "GDH", + "GDK", + "GDW", + "GEN", + "GEZ", + "GFJ", + "GG5", + "GGY", + "GHT", + "GIG", + "GIK", + "GIN", + "GJ7", + "GJA", + "GJD", + "GJG", + "GJJ", + "GJK", + "GK1", + "GK3", + "GK4", + "GK5", + "GK6", + "GKB", + "GMG", + "GMQ", + "GMW", + "GO4", + "GO7", + "GOD", + "GQL", + "GR9", + "GS2", + "GS3", + "GS7", + "GSH", + "GUB", + "GUI", + "GUK", + "GUQ", + "GV0", + "GVD", + "GVP", + "GW7", + "GW8", + "GWH", + "GX3", + "GXA", + "GXH", + "GXK", + "GYL", + "GYQ", + "GYW", + "H0K", + "H1K", + "H1N", + "H2E", + "H2K", + "H3E", + "H3H", + "H3K", + "H3N", + "H3Q", + "H3R", + "H4K", + "H4N", + "H52", + "H5I", + "H5K", + "H5R", + "H6K", + "H6W", + "H6X", + "H72", + "H7C", + "H7F", + "H7K", + "H7L", + "H7O", + "H7R", + "H7U", + "H7X", + "H80", + "H82", + "H83", + "H88", + "H8H", + "H8K", + "H8Z", + "H91", + "H96", + "H99", + "H9K", + "HAU", + "HB1", + "HB4", + "HB9", + "HBD", + "HBM", + "HC4", + "HCK", + "HCW", + "HDT", + "HDU", + "HDY", + "HET", + "HEW", + "HFS", + "HGF", + "HGH", + "HGK", + "HGQ", + "HGW", + "HH5", + "HH8", + "HHB", + "HHL", + "HHN", + "HHQ", + "HHT", + "HHW", + "HIZ", + "HJ0", + "HJ9", + "HJF", + "HJK", + "HK0", + "HK1", + "HK3", + "HK4", + "HK5", + "HK6", + "HK7", + "HK8", + "HK9", + "HKC", + "HKI", + "HKJ", + "HKK", + "HKN", + "HKQ", + "HMD", + "HMW", + "HNZ", + "HO5", + "HO8", + "HOK", + "HOT", + "HOW", + "HPM", + "HPP", + "HQB", + "HRA", + "HRM", + "HRZ", + "HSJ", + "HUH", + "HUL", + "HV2", + "HVB", + "HVE", + "HVH", + "HVK", + "HVQ", + "HVY", + "HY7", + "HYK", + "HYM", + "HYW", + "HYZ", + "HZ6", + "I0A", + "I17", + "I19", + "I1P", + "I2O", + "I39", + "I3H", + "I3K", + "I45", + "I46", + "I47", + "I4M", + "I5G", + "I5R", + "I5S", + "I6C", + "I6P", + "I73", + "I74", + "I85", + "I90", + "I94", + "I9W", + "IAQ", + "IB5", + "IBI", + "IC2", + "IC8", + "ICQ", + "ICV", + "IDK", + "IDV", + "IDW", + "IDZ", + "IE0", + "IE4", + "IE6", + "IE8", + "IEA", + "IED", + "IEO", + "IER", + "IFC", + "IG3", + "IGJ", + "IGS", + "IGV", + "IH7", + "IHH", + "IHP", + "IHX", + "IHZ", + "IIM", + "IIQ", + "IIW", + "IJB", + "IK1", + "IKC", + "IKD", + "IM6", + "IM9", + "INR", + "IPK", + "IPV", + "IPW", + "IQ6", + "IQ7", + "IQB", + "IQO", + "IQR", + "IQU", + "IQY", + "IR1", + "IR2", + "IRB", + "IRD", + "IRE", + "IRG", + "IS4", + "ITI", + "ITQ", + "IV7", + "IWU", + "IXH", + "IXM", + "IXQ", + "IYZ", + "IZA", + "IZZ", + "J07", + "J0B", + "J0E", + "J0P", + "J19", + "J27", + "J2I", + "J2M", + "J2V", + "J2Y", + "J30", + "J3H", + "J3N", + "J3Y", + "J4B", + "J4M", + "J60", + "J67", + "J6F", + "J72", + "J82", + "J87", + "J88", + "J8A", + "J8S", + "J99", + "J9D", + "J9G", + "JAK", + "JAU", + "JBI", + "JFS", + "JGG", + "JGM", + "JH8", + "JHK", + "JHW", + "JIN", + "JK1", + "JK2", + "JK3", + "JKW", + "JL2", + "JLC", + "JMB", + "JMM", + "JMZ", + "JN5", + "JND", + "JNF", + "JNK", + "JNO", + "JNZ", + "JOZ", + "JPZ", + "JQW", + "JRE", + "JRJ", + "JRQ", + "JRT", + "JRW", + "JSB", + "JSN", + "JSW", + "JTQ", + "JU8", + "JUP", + "JUW", + "JVD", + "JVE", + "JVP", + "JVT", + "JWE", + "JWK", + "JWN", + "JWQ", + "JWS", + "JWY", + "JX4", + "JYG", + "JYM", + "JYO", + "JYZ", + "JZH", + "JZJ", + "JZO", + "JZW", + "JZX", + "JZY", + "K06", + "K0B", + "K0E", + "K0N", + "K0X", + "K0Z", + "K11", + "K1B", + "K1E", + "K1H", + "K3D", + "K3R", + "K47", + "K4A", + "K4W", + "K6Y", + "K7S", + "K81", + "K82", + "K88", + "K8A", + "K8K", + "K9T", + "K9Y", + "KA2", + "KA4", + "KA7", + "KAO", + "KAV", + "KBI", + "KBM", + "KC0", + "KCI", + "KD6", + "KDI", + "KE7", + "KE8", + "KEC", + "KEJ", + "KEP", + "KES", + "KEV", + "KEX", + "KEY", + "KF1", + "KF4", + "KF6", + "KFD", + "KGL", + "KGZ", + "KH5", + "KH8", + "KHC", + "KHD", + "KHE", + "KHH", + "KHQ", + "KHR", + "KHT", + "KI7", + "KIH", + "KIM", + "KIN", + "KJ7", + "KJ8", + "KJB", + "KJD", + "KJQ", + "KJR", + "KJV", + "KK7", + "KK8", + "KKR", + "KLM", + "KLP", + "KMP", + "KQ7", + "KQE", + "KQK", + "KQW", + "KQZ", + "KR8", + "KRE", + "KRJ", + "KRK", + "KRL", + "KRQ", + "KRW", + "KS1", + "KSA", + "KSC", + "KSE", + "KSF", + "KSH", + "KSK", + "KSL", + "KSM", + "KSR", + "KSS", + "KUV", + "KUY", + "KVC", + "KVJ", + "KWD", + "KWJ", + "KWP", + "KWT", + "KWV", + "KWY", + "KX0", + "KXY", + "KXZ", + "KY9", + "KZI", + "KZJ", + "KZL", + "KZM", + "KZP", + "KZQ", + "L09", + "L0C", + "L0D", + "L0E", + "L0F", + "L0G", + "L0I", + "L0M", + "L0N", + "L0P", + "L0Q", + "L0Z", + "L10", + "L11", + "L12", + "L1E", + "L1G", + "L1H", + "L1K", + "L1N", + "L1W", + "L1X", + "L1Z", + "L20", + "L2G", + "L2V", + "L3G", + "L3Z", + "L4Y", + "L51", + "L5G", + "L64", + "L66", + "L6A", + "L7A", + "L7C", + "L7I", + "L7O", + "L7R", + "L7W", + "L80", + "L87", + "L8D", + "L8I", + "L8V", + "L8Y", + "L90", + "L91", + "L9A", + "L9G", + "L9L", + "L9M", + "L9N", + "L9S", + "LAJ", + "LB4", + "LB5", + "LB7", + "LB8", + "LBB", + "LBE", + "LC0", + "LCB", + "LCD", + "LCI", + "LCJ", + "LCQ", + "LCT", + "LCW", + "LD5", + "LDN", + "LEV", + "LG8", + "LGF", + "LGV", + "LGW", + "LGX", + "LH0", + "LHJ", + "LHL", + "LHZ", + "LI2", + "LI3", + "LI4", + "LI6", + "LI7", + "LI8", + "LI9", + "LIA", + "LIB", + "LIC", + "LID", + "LIE", + "LIF", + "LJE", + "LJF", + "LKB", + "LKG", + "LKQ", + "LKT", + "LM3", + "LM4", + "LMM", + "LMR", + "LN3", + "LN4", + "LNH", + "LO5", + "LO8", + "LOE", + "LOK", + "LOQ", + "LOT", + "LOW", + "LPZ", + "LQ5", + "LQQ", + "LRS", + "LS1", + "LS2", + "LS3", + "LS4", + "LS5", + "LS7", + "LSV", + "LTI", + "LTJ", + "LTY", + "LU2", + "LU8", + "LUE", + "LUN", + "LVD", + "LVF", + "LVL", + "LVU", + "LW3", + "LW4", + "LWG", + "LWH", + "LWJ", + "LWX", + "LX9", + "LXG", + "LXS", + "LXX", + "LY2", + "LY4", + "LYG", + "LZ1", + "LZ2", + "LZ3", + "LZ4", + "LZ5", + "LZ7", + "LZ8", + "LZ9", + "LZA", + "LZB", + "LZC", + "LZD", + "LZE", + "LZM", + "LZN", + "M0F", + "M0R", + "M0Y", + "M0Z", + "M19", + "M1J", + "M1O", + "M2B", + "M2Z", + "M33", + "M3A", + "M3Y", + "M4G", + "M4I", + "M4P", + "M4X", + "M54", + "M56", + "M57", + "M59", + "M5D", + "M5J", + "M5V", + "M5W", + "M61", + "M77", + "M8Z", + "M92", + "M97", + "M9T", + "MB9", + "MBP", + "MBW", + "MDI", + "ME3", + "MFE", + "MFP", + "MFQ", + "MFR", + "MFZ", + "MH4", + "MH7", + "MHR", + "MI1", + "MI5", + "MIH", + "MIX", + "MJF", + "MJG", + "MK2", + "MK3", + "MK9", + "MKP", + "ML8", + "ML9", + "MLW", + "MM8", + "MMD", + "MMG", + "MMH", + "MMW", + "MMY", + "MP6", + "MP7", + "MPY", + "MPZ", + "MQY", + "MR9", + "MRA", + "MRI", + "MS7", + "MS9", + "MSQ", + "MT3", + "MT4", + "MT8", + "MTW", + "MTZ", + "MUH", + "MUJ", + "MVE", + "MVG", + "MVS", + "MW8", + "MWF", + "MWL", + "MWU", + "MXE", + "MYC", + "MYF", + "MYU", + "MZJ", + "N0U", + "N0V", + "N13", + "N14", + "N15", + "N17", + "N1A", + "N1J", + "N1Q", + "N20", + "N29", + "N3F", + "N3O", + "N3X", + "N41", + "N42", + "N45", + "N4D", + "N4F", + "N4N", + "N4U", + "N53", + "N58", + "N5B", + "N5Q", + "N5R", + "N5U", + "N61", + "N66", + "N69", + "N6K", + "N6N", + "N6U", + "N6Z", + "N76", + "N78", + "N7B", + "N7C", + "N7K", + "N7Q", + "N7W", + "N7Z", + "N82", + "N83", + "N86", + "N8L", + "N8O", + "N8S", + "N8U", + "N92", + "N96", + "N97", + "N99", + "N9F", + "N9G", + "N9J", + "N9L", + "N9R", + "N9Z", + "NAR", + "NB3", + "NB5", + "NBK", + "NBS", + "NBW", + "ND2", + "NF5", + "NG2", + "NHI", + "NHJ", + "NHU", + "NIL", + "NIO", + "NJ6", + "NJD", + "NJV", + "NK0", + "NKB", + "NKE", + "NKJ", + "NKT", + "NKW", + "NKZ", + "NL2", + "NL4", + "NM7", + "NM8", + "NN5", + "NNN", + "NPZ", + "NQ1", + "NQ2", + "NQ5", + "NQB", + "NR9", + "NRA", + "NRM", + "NRR", + "NS9", + "NSO", + "NTQ", + "NTW", + "NU5", + "NU6", + "NVB", + "NVV", + "NVX", + "NW1", + "NX0", + "NXI", + "NXP", + "NY0", + "NYI", + "NYX", + "NZ4", + "NZ5", + "NZ8", + "NZF", + "NZS", + "NZU", + "O06", + "O0H", + "O10", + "O17", + "O19", + "O1K", + "O1R", + "O1S", + "O1V", + "O1Y", + "O1Z", + "O21", + "O22", + "O23", + "O2H", + "O2K", + "O35", + "O38", + "O3E", + "O43", + "O44", + "O4B", + "O4U", + "O6X", + "O7I", + "O8Q", + "O8T", + "O8W", + "O8Z", + "O92", + "O97", + "O98", + "O9C", + "O9L", + "OAW", + "OBW", + "OBY", + "OCG", + "OCJ", + "OD1", + "OD2", + "OD4", + "ODH", + "ODJ", + "ODO", + "OE5", + "OE8", + "OEB", + "OFG", + "OFI", + "OFQ", + "OFT", + "OFW", + "OFZ", + "OG2", + "OG5", + "OG8", + "OH8", + "OHK", + "OJ5", + "OJL", + "OKO", + "OKZ", + "OL2", + "OL8", + "OLO", + "OLP", + "ON6", + "OND", + "OO7", + "OOD", + "OOJ", + "OOM", + "OOO", + "OOQ", + "OOS", + "OOU", + "OOV", + "OOY", + "OPW", + "OQ2", + "OQ8", + "OQJ", + "OQM", + "OQS", + "OS1", + "OSV", + "OSZ", + "OT5", + "OU2", + "OV0", + "OV5", + "OVC", + "OVI", + "OW6", + "OWB", + "OWN", + "OWQ", + "OXM", + "OXW", + "OY2", + "OYB", + "OZ8", + "OZN", + "OZU", + "P01", + "P02", + "P06", + "P08", + "P0F", + "P16", + "P17", + "P1E", + "P2B", + "P2V", + "P2X", + "P30", + "P31", + "P36", + "P37", + "P38", + "P39", + "P3J", + "P3Y", + "P40", + "P41", + "P47", + "P48", + "P49", + "P4G", + "P4N", + "P4O", + "P5C", + "P5J", + "P5K", + "P5O", + "P5V", + "P5W", + "P66", + "P78", + "P79", + "P7A", + "P7B", + "P7C", + "P7N", + "P91", + "P9J", + "P9K", + "PBU", + "PCG", + "PD1", + "PDR", + "PDS", + "PDX", + "PDY", + "PE5", + "PFO", + "PFP", + "PFQ", + "PFY", + "PG0", + "PGF", + "PGJ", + "PHU", + "PIT", + "PJC", + "PKB", + "PKE", + "PM1", + "PMU", + "PO5", + "PO6", + "POX", + "PP0", + "PP1", + "PP2", + "PPI", + "PQ5", + "PQ8", + "PQA", + "PQB", + "PQC", + "PRC", + "PUP", + "PVB", + "PVT", + "PWU", + "PXK", + "PXN", + "PY1", + "PY8", + "PYZ", + "PZ4", + "PZO", + "PZW", + "Q0B", + "Q17", + "Q18", + "Q1A", + "Q1Y", + "Q2H", + "Q4J", + "Q55", + "Q58", + "Q5Z", + "Q6E", + "Q6G", + "Q6K", + "Q6W", + "Q7H", + "Q7K", + "Q7M", + "Q7Q", + "Q7Z", + "Q8B", + "Q8J", + "Q8K", + "Q8Q", + "Q8T", + "Q8W", + "Q98", + "Q9B", + "Q9G", + "Q9J", + "QAQ", + "QAR", + "QB8", + "QBB", + "QBE", + "QC0", + "QCR", + "QCT", + "QD2", + "QDE", + "QDW", + "QDZ", + "QEW", + "QF8", + "QFB", + "QFE", + "QFK", + "QFO", + "QFQ", + "QFV", + "QG5", + "QGI", + "QGR", + "QGY", + "QH1", + "QH9", + "QI6", + "QIA", + "QIG", + "QIH", + "QIV", + "QJI", + "QJZ", + "QK0", + "QKG", + "QL7", + "QM2", + "QMN", + "QMV", + "QMY", + "QNR", + "QO7", + "QOP", + "QP1", + "QP4", + "QP7", + "QPP", + "QQ1", + "QQ2", + "QQC", + "QQJ", + "QQM", + "QR7", + "QRD", + "QRR", + "QRW", + "QS0", + "QS7", + "QT9", + "QTX", + "QU6", + "QUE", + "QUF", + "QUP", + "QUU", + "QWN", + "QWQ", + "QWS", + "QWW", + "QX1", + "QX2", + "QXW", + "QXZ", + "QY2", + "QY8", + "QYB", + "QYE", + "QYH", + "QYK", + "QYT", + "QYW", + "QYZ", + "QZ2", + "QZ8", + "QZW", + "R05", + "R09", + "R0N", + "R0O", + "R0T", + "R0X", + "R1L", + "R1S", + "R1W", + "R24", + "R25", + "R28", + "R2E", + "R2S", + "R34", + "R39", + "R3L", + "R48", + "R49", + "R4L", + "R4S", + "R4V", + "R4Y", + "R5D", + "R5S", + "R5Y", + "R61", + "R6D", + "R6H", + "R6I", + "R6K", + "R6M", + "R6N", + "R6P", + "R6R", + "R6S", + "R6V", + "R70", + "R73", + "R74", + "R78", + "R7B", + "R7D", + "R7O", + "R7P", + "R7S", + "R7W", + "R85", + "R93", + "R9B", + "R9P", + "RAJ", + "RBQ", + "RC8", + "RCH", + "RCM", + "REB", + "REF", + "RF4", + "RFG", + "RFZ", + "RG4", + "RGY", + "RH8", + "RHH", + "RHT", + "RHW", + "RHZ", + "RI8", + "RI9", + "RJ2", + "RJ5", + "RJ8", + "RJI", + "RJZ", + "RK2", + "RK5", + "RK8", + "RKD", + "RKH", + "RKK", + "RKN", + "RKO", + "RKQ", + "RKW", + "RKZ", + "RLC", + "RMF", + "RMM", + "RMX", + "RNF", + "RNU", + "RO6", + "RO9", + "ROY", + "RP9", + "RPS", + "RPW", + "RQ5", + "RQ9", + "RQE", + "RQL", + "RQQ", + "RQS", + "RQT", + "RQU", + "RQZ", + "RR9", + "RRC", + "RSI", + "RSU", + "RSW", + "RTJ", + "RTX", + "RTZ", + "RU5", + "RU9", + "RUI", + "RUT", + "RUW", + "RUY", + "RV6", + "RVH", + "RVQ", + "RVU", + "RW3", + "RW4", + "RW6", + "RWE", + "RWN", + "RXE", + "RXN", + "RXQ", + "RXT", + "RXZ", + "RYA", + "RYU", + "RYW", + "S03", + "S0L", + "S19", + "S1Z", + "S22", + "S25", + "S26", + "S30", + "S3N", + "S4E", + "S4K", + "S4N", + "S4Q", + "S4R", + "S4T", + "S4W", + "S4Z", + "S59", + "S5E", + "S5I", + "S5M", + "S69", + "S7S", + "S8W", + "S91", + "S92", + "S93", + "S9A", + "S9H", + "S9K", + "SAV", + "SB0", + "SB2", + "SB4", + "SB5", + "SB6", + "SBC", + "SC8", + "SC9", + "SCE", + "SCF", + "SCJ", + "SCQ", + "SCW", + "SCX", + "SCZ", + "SD5", + "SFY", + "SGV", + "SIQ", + "SIX", + "SJ0", + "SJG", + "SJJ", + "SJL", + "SJM", + "SJS", + "SJV", + "SJX", + "SK8", + "SKE", + "SKI", + "SL0", + "SLQ", + "SLS", + "SLV", + "SLY", + "SM5", + "SM6", + "SM7", + "SM9", + "SMH", + "SMR", + "SMV", + "SMY", + "SN4", + "SNB", + "SNJ", + "SNV", + "SO7", + "SO9", + "SOJ", + "SOV", + "SQ4", + "SQ7", + "SQ8", + "SQ9", + "SQB", + "SQE", + "SQG", + "SQK", + "SQM", + "SQP", + "SQQ", + "SQV", + "SQY", + "SQZ", + "SR4", + "SR8", + "SRJ", + "SS6", + "SSY", + "ST8", + "STI", + "STJ", + "STL", + "STU", + "STV", + "SU1", + "SU2", + "SU6", + "SU7", + "SU9", + "SUU", + "SV4", + "SV5", + "SV8", + "SVD", + "SVE", + "SVG", + "SVH", + "SVJ", + "SVK", + "SVM", + "SVQ", + "SVT", + "SW5", + "SW7", + "SW8", + "SWB", + "SWD", + "SWK", + "SWM", + "SWN", + "SX7", + "SX8", + "SYP", + "SYY", + "SZL", + "SZW", + "T0L", + "T0X", + "T12", + "T1L", + "T1Q", + "T1T", + "T20", + "T28", + "T2A", + "T2F", + "T2O", + "T3B", + "T3C", + "T3E", + "T3I", + "T3M", + "T3U", + "T3X", + "T4C", + "T4O", + "T4X", + "T6E", + "T6Q", + "T6X", + "T74", + "T75", + "T77", + "T7Z", + "T8L", + "T92", + "T95", + "T9N", + "TAK", + "TBK", + "TBN", + "TBS", + "TC0", + "TCE", + "TFA", + "TID", + "TIY", + "TJF", + "TJW", + "TJZ", + "TK5", + "TKB", + "TL0", + "TL7", + "TMU", + "TO7", + "TOJ", + "TOV", + "TQ1", + "TQA", + "TSK", + "TSW", + "TV4", + "TVT", + "TVW", + "TW2", + "TWH", + "TWK", + "TXQ", + "TXV", + "TZ0", + "TZ1", + "TZX", + "TZY", + "U0C", + "U0K", + "U0N", + "U0Q", + "U0T", + "U32", + "U35", + "U3E", + "U4N", + "U4W", + "U55", + "U6S", + "U73", + "U7E", + "U82", + "U8J", + "U8P", + "U9P", + "UAU", + "UB6", + "UC8", + "UCE", + "UCM", + "UCN", + "UCW", + "UE9", + "UES", + "UEX", + "UF4", + "UF8", + "UGJ", + "UGK", + "UGX", + "UH3", + "UIK", + "UIM", + "UIW", + "UJ3", + "UJC", + "UKI", + "ULV", + "ULY", + "UM4", + "UMN", + "UN4", + "UNE", + "UNJ", + "UNL", + "UNM", + "UNQ", + "UNW", + "UO5", + "UOE", + "UOH", + "UOW", + "UP9", + "UPX", + "UQX", + "URF", + "URW", + "US0", + "USF", + "UT5", + "UU6", + "UUB", + "UUF", + "UWM", + "UWP", + "UWZ", + "UX2", + "UZD", + "V04", + "V0G", + "V0K", + "V0L", + "V1G", + "V1Y", + "V25", + "V3S", + "V4Z", + "V55", + "V58", + "V5E", + "V5J", + "V5T", + "V5U", + "V5W", + "V62", + "V6B", + "V6E", + "V7Y", + "V81", + "V84", + "VAR", + "VBS", + "VEH", + "VEK", + "VEN", + "VEQ", + "VEW", + "VFA", + "VFB", + "VFC", + "VFS", + "VGH", + "VGK", + "VGM", + "VIN", + "VJH", + "VJK", + "VJZ", + "VK2", + "VK5", + "VL1", + "VLV", + "VM1", + "VNS", + "VO7", + "VOY", + "VP7", + "VQE", + "VQP", + "VRM", + "VRU", + "VRV", + "VRZ", + "VS0", + "VSA", + "VSB", + "VSE", + "VSF", + "VSG", + "VSH", + "VSY", + "VTA", + "VTD", + "VVQ", + "VVT", + "VVX", + "VWN", + "VX1", + "VX2", + "VX3", + "VX6", + "VXY", + "VY0", + "VY1", + "VY4", + "VYH", + "VYN", + "VYP", + "VZ2", + "VZG", + "VZJ", + "W19", + "W2K", + "W2P", + "W2R", + "W2T", + "W32", + "W38", + "W39", + "W3C", + "W3F", + "W3I", + "W3N", + "W3R", + "W3W", + "W40", + "W47", + "W49", + "W4A", + "W4D", + "W4G", + "W5W", + "W7W", + "W8U", + "W9D", + "W9X", + "W9Z", + "WAK", + "WAL", + "WAP", + "WAU", + "WAZ", + "WB8", + "WBI", + "WBT", + "WCJ", + "WCX", + "WEG", + "WEJ", + "WF7", + "WFD", + "WFE", + "WFY", + "WG1", + "WG8", + "WGF", + "WGK", + "WGZ", + "WHQ", + "WI2", + "WIQ", + "WJ9", + "WJV", + "WKC", + "WNK", + "WP1", + "WPB", + "WPH", + "WPX", + "WQ2", + "WQ6", + "WQK", + "WT3", + "WTI", + "WTJ", + "WTP", + "WVI", + "WXH", + "WXQ", + "WXV", + "WY3", + "WYE", + "WYF", + "WZ8", + "WZU", + "WZZ", + "X01", + "X02", + "X03", + "X06", + "X07", + "X0A", + "X11", + "X14", + "X19", + "X1N", + "X20", + "X21", + "X2K", + "X2L", + "X2M", + "X35", + "X36", + "X37", + "X39", + "X3A", + "X3G", + "X3K", + "X3N", + "X3R", + "X3S", + "X3V", + "X3W", + "X3Y", + "X40", + "X42", + "X43", + "X44", + "X46", + "X4B", + "X4G", + "X59", + "X5E", + "X5G", + "X62", + "X63", + "X64", + "X65", + "X66", + "X67", + "X69", + "X6A", + "X6B", + "X6D", + "X6G", + "X6K", + "X72", + "X73", + "X75", + "X76", + "X7G", + "X7Y", + "X84", + "X85", + "X86", + "X87", + "X88", + "X8D", + "X8E", + "X8G", + "X8I", + "X8J", + "X96", + "X9B", + "X9F", + "X9G", + "X9H", + "X9I", + "X9J", + "X9M", + "X9P", + "X9S", + "X9V", + "X9Y", + "XA0", + "XA4", + "XAZ", + "XBD", + "XBJ", + "XEZ", + "XFE", + "XGK", + "XGQ", + "XHM", + "XHS", + "XHV", + "XI2", + "XIJ", + "XIN", + "XIP", + "XIT", + "XIX", + "XIY", + "XIZ", + "XJ0", + "XJ1", + "XK3", + "XK9", + "XKU", + "XL5", + "XL6", + "XL7", + "XL8", + "XL9", + "XM1", + "XOJ", + "XPY", + "XQQ", + "XR1", + "XSE", + "XTI", + "XTT", + "XU0", + "XU1", + "XU2", + "XUZ", + "XV0", + "XVI", + "XW3", + "XWA", + "XWW", + "XXF", + "XXK", + "XY3", + "XYW", + "XZ9", + "XZN", + "XZS", + "Y27", + "Y3I", + "Y3L", + "Y3M", + "Y3O", + "Y49", + "Y4O", + "Y56", + "Y5D", + "Y5G", + "Y5Y", + "Y7W", + "Y8C", + "Y8H", + "Y8L", + "YA7", + "YAM", + "YB4", + "YCF", + "YD7", + "YDA", + "YDI", + "YDJ", + "YDK", + "YEE", + "YEX", + "YFS", + "YFV", + "YFY", + "YIQ", + "YIR", + "YIS", + "YIT", + "YIW", + "YIX", + "YIY", + "YK1", + "YK2", + "YK4", + "YK7", + "YM3", + "YM4", + "YM5", + "YM6", + "YM7", + "YM8", + "YMX", + "YNZ", + "YO4", + "YOR", + "YOS", + "YPH", + "YPW", + "YQ2", + "YQB", + "YQT", + "YQY", + "YR7", + "YRA", + "YRZ", + "YSI", + "YSO", + "YT0", + "YT8", + "YTP", + "YTX", + "YUN", + "YVQ", + "YW5", + "YXD", + "YXJ", + "YXT", + "YY3", + "YY4", + "YY5", + "YY6", + "YY7", + "YY9", + "Z02", + "Z04", + "Z0B", + "Z0O", + "Z0W", + "Z14", + "Z19", + "Z20", + "Z2M", + "Z30", + "Z31", + "Z3A", + "Z3R", + "Z46", + "Z48", + "Z60", + "Z62", + "Z63", + "Z67", + "Z68", + "Z6P", + "Z6V", + "Z71", + "Z83", + "Z84", + "Z85", + "Z86", + "Z87", + "Z8O", + "Z92", + "ZAT", + "ZB9", + "ZC3", + "ZD6", + "ZFS", + "ZGD", + "ZGY", + "ZHY", + "ZIG", + "ZIP", + "ZL1", + "ZLE", + "ZO6", + "ZO8", + "ZOI", + "ZOP", + "ZOQ", + "ZOV", + "ZQV", + "ZRK", + "ZRL", + "ZRM", + "ZRR", + "ZRT", + "ZRU", + "ZS2", + "ZS3", + "ZS4", + "ZSB", + "ZSO", + "ZTV", + "ZUO", + "ZUQ", + "ZW3", + "ZWE", + "ZXC", + "ZXH", + "ZXL", + "ZXP", + "ZY6", + "ZYQ", + "ZYR", + "ZYS", + "ZYT", + "ZYU", + "ZYV", + "ZYW", + "ZZF", + "ZZG", + "ZZK", + "ZZL", + "ZZM", + "ZZN", + "ZZO", + "ZZP", + "ZZQ", + "ZZY" + ] +} \ No newline at end of file diff --git a/tests/test_data/custom_cif/SOURCE.md b/tests/test_data/custom_cif/SOURCE.md new file mode 100644 index 00000000..e1760be5 --- /dev/null +++ b/tests/test_data/custom_cif/SOURCE.md @@ -0,0 +1,9 @@ +# Test data sources + +## boltz_8c3u_input_model_0.cif + +- Source: https://github.com/plinder-org/runs-n-poses/blob/main/examples/outputs/boltz/8c3u__1__1.A__1.C/1372115236/boltz_results_input/predictions/input/input_model_0.cif +- License: Apache-2.0 (plinder-org/runs-n-poses repository) +- Description: Boltz prediction output for PDB 8c3u system (protein-ligand complex). + Used to test custom CIF processing when `_chem_comp_bond` is absent. +- Ligand SMILES: Cc1ccc2c(c1)NC(=O)C2(c3cc(ccc3O)c4ccc(cc4C(=O)O)C(=O)O)c5c[nH]nc5 diff --git a/tests/test_data/custom_cif/boltz_8c3u_input_model_0.cif b/tests/test_data/custom_cif/boltz_8c3u_input_model_0.cif new file mode 100644 index 00000000..b8fca969 --- /dev/null +++ b/tests/test_data/custom_cif/boltz_8c3u_input_model_0.cif @@ -0,0 +1,1932 @@ +data_model +_entry.id model +_struct.entry_id model +_struct.pdbx_model_details . +_struct.pdbx_structure_determination_methodology computational +_struct.title . +_audit_conform.dict_location https://raw.githubusercontent.com/ihmwg/ModelCIF/d18ba38/base/mmcif_ma-core.dic +_audit_conform.dict_name mmcif_ma.dic +_audit_conform.dict_version 1.4.6 +# +loop_ +_chem_comp.id +_chem_comp.type +_chem_comp.name +_chem_comp.formula +_chem_comp.formula_weight +_chem_comp.ma_provenance +ALA 'L-peptide linking' . . . 'CCD Core' +ARG 'L-peptide linking' . . . 'CCD Core' +ASN 'L-peptide linking' . . . 'CCD Core' +ASP 'L-peptide linking' . . . 'CCD Core' +CYS 'L-peptide linking' . . . 'CCD Core' +GLN 'L-peptide linking' . . . 'CCD Core' +GLU 'L-peptide linking' . . . 'CCD Core' +GLY 'L-peptide linking' . . . 'CCD Core' +HIS 'L-peptide linking' . . . 'CCD Core' +ILE 'L-peptide linking' . . . 'CCD Core' +LEU 'L-peptide linking' . . . 'CCD Core' +LIG non-polymer . . . 'CCD Core' +LYS 'L-peptide linking' . . . 'CCD Core' +MET 'L-peptide linking' . . . 'CCD Core' +PHE 'L-peptide linking' . . . 'CCD Core' +PRO 'L-peptide linking' . . . 'CCD Core' +SER 'L-peptide linking' . . . 'CCD Core' +THR 'L-peptide linking' . . . 'CCD Core' +TRP 'L-peptide linking' . . . 'CCD Core' +TYR 'L-peptide linking' . . . 'CCD Core' +VAL 'L-peptide linking' . . . 'CCD Core' +# +# +loop_ +_entity.id +_entity.type +_entity.src_method +_entity.pdbx_description +_entity.formula_weight +_entity.pdbx_number_of_molecules +_entity.details +1 polymer man . . 1 . +2 non-polymer man . . 1 . +# +# +loop_ +_entity_poly.entity_id +_entity_poly.type +_entity_poly.nstd_linkage +_entity_poly.nstd_monomer +_entity_poly.pdbx_strand_id +_entity_poly.pdbx_seq_one_letter_code +_entity_poly.pdbx_seq_one_letter_code_can +1 polypeptide(L) no no A +;(ALA)(PRO)(VAL)(ARG)(SER)(LEU)(ASN)(CYS)(THR)(LEU)(ARG)(ASP)(SER)(GLN) +(GLN)(LYS)(SER)(LEU)(VAL)(MET)(SER)(GLY)(PRO)(TYR)(GLU)(LEU)(LYS)(ALA) +(LEU)(HIS)(LEU)(GLN)(GLY)(GLN)(ASP)(MET)(GLU)(GLN)(GLN)(VAL)(VAL)(PHE) +(SER)(MET)(SER)(PHE)(VAL)(GLN)(GLY)(GLU)(GLU)(SER)(ASN)(ASP)(LYS)(ILE) +(PRO)(VAL)(ALA)(LEU)(GLY)(LEU)(LYS)(GLU)(LYS)(ASN)(LEU)(TYR)(LEU)(SER) +(CYS)(VAL)(LEU)(LYS)(ASP)(ASP)(LYS)(PRO)(THR)(LEU)(GLN)(LEU)(GLU)(SER) +(VAL)(ASP)(PRO)(LYS)(ASN)(TYR)(PRO)(LYS)(LYS)(LYS)(MET)(GLU)(LYS)(ARG) +(PHE)(VAL)(PHE)(ASN)(LYS)(ILE)(GLU)(ILE)(ASN)(ASN)(LYS)(LEU)(GLU)(PHE) +(GLU)(SER)(ALA)(GLN)(PHE)(PRO)(ASN)(TRP)(TYR)(ILE)(SER)(THR)(SER)(GLN) +(ALA)(GLU)(ASN)(MET)(PRO)(VAL)(PHE)(LEU)(GLY)(GLY)(THR)(LYS)(GLY)(GLY) +(GLN)(ASP)(ILE)(THR)(ASP)(PHE)(THR)(MET)(GLN)(PHE)(VAL)(SER)(SER) +; + +;XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX +XXXXXXXXXXXXX +; + +# +# +loop_ +_pdbx_entity_nonpoly.entity_id +_pdbx_entity_nonpoly.name +_pdbx_entity_nonpoly.comp_id +_pdbx_entity_nonpoly.ma_model_mode +2 . LIG . +# +# +loop_ +_entity_poly_seq.entity_id +_entity_poly_seq.num +_entity_poly_seq.mon_id +_entity_poly_seq.hetero +1 1 ALA . +1 2 PRO . +1 3 VAL . +1 4 ARG . +1 5 SER . +1 6 LEU . +1 7 ASN . +1 8 CYS . +1 9 THR . +1 10 LEU . +1 11 ARG . +1 12 ASP . +1 13 SER . +1 14 GLN . +1 15 GLN . +1 16 LYS . +1 17 SER . +1 18 LEU . +1 19 VAL . +1 20 MET . +1 21 SER . +1 22 GLY . +1 23 PRO . +1 24 TYR . +1 25 GLU . +1 26 LEU . +1 27 LYS . +1 28 ALA . +1 29 LEU . +1 30 HIS . +1 31 LEU . +1 32 GLN . +1 33 GLY . +1 34 GLN . +1 35 ASP . +1 36 MET . +1 37 GLU . +1 38 GLN . +1 39 GLN . +1 40 VAL . +1 41 VAL . +1 42 PHE . +1 43 SER . +1 44 MET . +1 45 SER . +1 46 PHE . +1 47 VAL . +1 48 GLN . +1 49 GLY . +1 50 GLU . +1 51 GLU . +1 52 SER . +1 53 ASN . +1 54 ASP . +1 55 LYS . +1 56 ILE . +1 57 PRO . +1 58 VAL . +1 59 ALA . +1 60 LEU . +1 61 GLY . +1 62 LEU . +1 63 LYS . +1 64 GLU . +1 65 LYS . +1 66 ASN . +1 67 LEU . +1 68 TYR . +1 69 LEU . +1 70 SER . +1 71 CYS . +1 72 VAL . +1 73 LEU . +1 74 LYS . +1 75 ASP . +1 76 ASP . +1 77 LYS . +1 78 PRO . +1 79 THR . +1 80 LEU . +1 81 GLN . +1 82 LEU . +1 83 GLU . +1 84 SER . +1 85 VAL . +1 86 ASP . +1 87 PRO . +1 88 LYS . +1 89 ASN . +1 90 TYR . +1 91 PRO . +1 92 LYS . +1 93 LYS . +1 94 LYS . +1 95 MET . +1 96 GLU . +1 97 LYS . +1 98 ARG . +1 99 PHE . +1 100 VAL . +1 101 PHE . +1 102 ASN . +1 103 LYS . +1 104 ILE . +1 105 GLU . +1 106 ILE . +1 107 ASN . +1 108 ASN . +1 109 LYS . +1 110 LEU . +1 111 GLU . +1 112 PHE . +1 113 GLU . +1 114 SER . +1 115 ALA . +1 116 GLN . +1 117 PHE . +1 118 PRO . +1 119 ASN . +1 120 TRP . +1 121 TYR . +1 122 ILE . +1 123 SER . +1 124 THR . +1 125 SER . +1 126 GLN . +1 127 ALA . +1 128 GLU . +1 129 ASN . +1 130 MET . +1 131 PRO . +1 132 VAL . +1 133 PHE . +1 134 LEU . +1 135 GLY . +1 136 GLY . +1 137 THR . +1 138 LYS . +1 139 GLY . +1 140 GLY . +1 141 GLN . +1 142 ASP . +1 143 ILE . +1 144 THR . +1 145 ASP . +1 146 PHE . +1 147 THR . +1 148 MET . +1 149 GLN . +1 150 PHE . +1 151 VAL . +1 152 SER . +1 153 SER . +# +# +loop_ +_struct_asym.id +_struct_asym.entity_id +_struct_asym.details +A 1 'Model subunit A' +B 2 'Model subunit B' +# +# +loop_ +_pdbx_poly_seq_scheme.asym_id +_pdbx_poly_seq_scheme.entity_id +_pdbx_poly_seq_scheme.seq_id +_pdbx_poly_seq_scheme.mon_id +_pdbx_poly_seq_scheme.pdb_seq_num +_pdbx_poly_seq_scheme.auth_seq_num +_pdbx_poly_seq_scheme.pdb_mon_id +_pdbx_poly_seq_scheme.auth_mon_id +_pdbx_poly_seq_scheme.pdb_strand_id +_pdbx_poly_seq_scheme.pdb_ins_code +A 1 1 ALA 1 1 ALA ALA A . +A 1 2 PRO 2 2 PRO PRO A . +A 1 3 VAL 3 3 VAL VAL A . +A 1 4 ARG 4 4 ARG ARG A . +A 1 5 SER 5 5 SER SER A . +A 1 6 LEU 6 6 LEU LEU A . +A 1 7 ASN 7 7 ASN ASN A . +A 1 8 CYS 8 8 CYS CYS A . +A 1 9 THR 9 9 THR THR A . +A 1 10 LEU 10 10 LEU LEU A . +A 1 11 ARG 11 11 ARG ARG A . +A 1 12 ASP 12 12 ASP ASP A . +A 1 13 SER 13 13 SER SER A . +A 1 14 GLN 14 14 GLN GLN A . +A 1 15 GLN 15 15 GLN GLN A . +A 1 16 LYS 16 16 LYS LYS A . +A 1 17 SER 17 17 SER SER A . +A 1 18 LEU 18 18 LEU LEU A . +A 1 19 VAL 19 19 VAL VAL A . +A 1 20 MET 20 20 MET MET A . +A 1 21 SER 21 21 SER SER A . +A 1 22 GLY 22 22 GLY GLY A . +A 1 23 PRO 23 23 PRO PRO A . +A 1 24 TYR 24 24 TYR TYR A . +A 1 25 GLU 25 25 GLU GLU A . +A 1 26 LEU 26 26 LEU LEU A . +A 1 27 LYS 27 27 LYS LYS A . +A 1 28 ALA 28 28 ALA ALA A . +A 1 29 LEU 29 29 LEU LEU A . +A 1 30 HIS 30 30 HIS HIS A . +A 1 31 LEU 31 31 LEU LEU A . +A 1 32 GLN 32 32 GLN GLN A . +A 1 33 GLY 33 33 GLY GLY A . +A 1 34 GLN 34 34 GLN GLN A . +A 1 35 ASP 35 35 ASP ASP A . +A 1 36 MET 36 36 MET MET A . +A 1 37 GLU 37 37 GLU GLU A . +A 1 38 GLN 38 38 GLN GLN A . +A 1 39 GLN 39 39 GLN GLN A . +A 1 40 VAL 40 40 VAL VAL A . +A 1 41 VAL 41 41 VAL VAL A . +A 1 42 PHE 42 42 PHE PHE A . +A 1 43 SER 43 43 SER SER A . +A 1 44 MET 44 44 MET MET A . +A 1 45 SER 45 45 SER SER A . +A 1 46 PHE 46 46 PHE PHE A . +A 1 47 VAL 47 47 VAL VAL A . +A 1 48 GLN 48 48 GLN GLN A . +A 1 49 GLY 49 49 GLY GLY A . +A 1 50 GLU 50 50 GLU GLU A . +A 1 51 GLU 51 51 GLU GLU A . +A 1 52 SER 52 52 SER SER A . +A 1 53 ASN 53 53 ASN ASN A . +A 1 54 ASP 54 54 ASP ASP A . +A 1 55 LYS 55 55 LYS LYS A . +A 1 56 ILE 56 56 ILE ILE A . +A 1 57 PRO 57 57 PRO PRO A . +A 1 58 VAL 58 58 VAL VAL A . +A 1 59 ALA 59 59 ALA ALA A . +A 1 60 LEU 60 60 LEU LEU A . +A 1 61 GLY 61 61 GLY GLY A . +A 1 62 LEU 62 62 LEU LEU A . +A 1 63 LYS 63 63 LYS LYS A . +A 1 64 GLU 64 64 GLU GLU A . +A 1 65 LYS 65 65 LYS LYS A . +A 1 66 ASN 66 66 ASN ASN A . +A 1 67 LEU 67 67 LEU LEU A . +A 1 68 TYR 68 68 TYR TYR A . +A 1 69 LEU 69 69 LEU LEU A . +A 1 70 SER 70 70 SER SER A . +A 1 71 CYS 71 71 CYS CYS A . +A 1 72 VAL 72 72 VAL VAL A . +A 1 73 LEU 73 73 LEU LEU A . +A 1 74 LYS 74 74 LYS LYS A . +A 1 75 ASP 75 75 ASP ASP A . +A 1 76 ASP 76 76 ASP ASP A . +A 1 77 LYS 77 77 LYS LYS A . +A 1 78 PRO 78 78 PRO PRO A . +A 1 79 THR 79 79 THR THR A . +A 1 80 LEU 80 80 LEU LEU A . +A 1 81 GLN 81 81 GLN GLN A . +A 1 82 LEU 82 82 LEU LEU A . +A 1 83 GLU 83 83 GLU GLU A . +A 1 84 SER 84 84 SER SER A . +A 1 85 VAL 85 85 VAL VAL A . +A 1 86 ASP 86 86 ASP ASP A . +A 1 87 PRO 87 87 PRO PRO A . +A 1 88 LYS 88 88 LYS LYS A . +A 1 89 ASN 89 89 ASN ASN A . +A 1 90 TYR 90 90 TYR TYR A . +A 1 91 PRO 91 91 PRO PRO A . +A 1 92 LYS 92 92 LYS LYS A . +A 1 93 LYS 93 93 LYS LYS A . +A 1 94 LYS 94 94 LYS LYS A . +A 1 95 MET 95 95 MET MET A . +A 1 96 GLU 96 96 GLU GLU A . +A 1 97 LYS 97 97 LYS LYS A . +A 1 98 ARG 98 98 ARG ARG A . +A 1 99 PHE 99 99 PHE PHE A . +A 1 100 VAL 100 100 VAL VAL A . +A 1 101 PHE 101 101 PHE PHE A . +A 1 102 ASN 102 102 ASN ASN A . +A 1 103 LYS 103 103 LYS LYS A . +A 1 104 ILE 104 104 ILE ILE A . +A 1 105 GLU 105 105 GLU GLU A . +A 1 106 ILE 106 106 ILE ILE A . +A 1 107 ASN 107 107 ASN ASN A . +A 1 108 ASN 108 108 ASN ASN A . +A 1 109 LYS 109 109 LYS LYS A . +A 1 110 LEU 110 110 LEU LEU A . +A 1 111 GLU 111 111 GLU GLU A . +A 1 112 PHE 112 112 PHE PHE A . +A 1 113 GLU 113 113 GLU GLU A . +A 1 114 SER 114 114 SER SER A . +A 1 115 ALA 115 115 ALA ALA A . +A 1 116 GLN 116 116 GLN GLN A . +A 1 117 PHE 117 117 PHE PHE A . +A 1 118 PRO 118 118 PRO PRO A . +A 1 119 ASN 119 119 ASN ASN A . +A 1 120 TRP 120 120 TRP TRP A . +A 1 121 TYR 121 121 TYR TYR A . +A 1 122 ILE 122 122 ILE ILE A . +A 1 123 SER 123 123 SER SER A . +A 1 124 THR 124 124 THR THR A . +A 1 125 SER 125 125 SER SER A . +A 1 126 GLN 126 126 GLN GLN A . +A 1 127 ALA 127 127 ALA ALA A . +A 1 128 GLU 128 128 GLU GLU A . +A 1 129 ASN 129 129 ASN ASN A . +A 1 130 MET 130 130 MET MET A . +A 1 131 PRO 131 131 PRO PRO A . +A 1 132 VAL 132 132 VAL VAL A . +A 1 133 PHE 133 133 PHE PHE A . +A 1 134 LEU 134 134 LEU LEU A . +A 1 135 GLY 135 135 GLY GLY A . +A 1 136 GLY 136 136 GLY GLY A . +A 1 137 THR 137 137 THR THR A . +A 1 138 LYS 138 138 LYS LYS A . +A 1 139 GLY 139 139 GLY GLY A . +A 1 140 GLY 140 140 GLY GLY A . +A 1 141 GLN 141 141 GLN GLN A . +A 1 142 ASP 142 142 ASP ASP A . +A 1 143 ILE 143 143 ILE ILE A . +A 1 144 THR 144 144 THR THR A . +A 1 145 ASP 145 145 ASP ASP A . +A 1 146 PHE 146 146 PHE PHE A . +A 1 147 THR 147 147 THR THR A . +A 1 148 MET 148 148 MET MET A . +A 1 149 GLN 149 149 GLN GLN A . +A 1 150 PHE 150 150 PHE PHE A . +A 1 151 VAL 151 151 VAL VAL A . +A 1 152 SER 152 152 SER SER A . +A 1 153 SER 153 153 SER SER A . +# +# +loop_ +_pdbx_nonpoly_scheme.asym_id +_pdbx_nonpoly_scheme.entity_id +_pdbx_nonpoly_scheme.mon_id +_pdbx_nonpoly_scheme.ndb_seq_num +_pdbx_nonpoly_scheme.pdb_seq_num +_pdbx_nonpoly_scheme.auth_seq_num +_pdbx_nonpoly_scheme.auth_mon_id +_pdbx_nonpoly_scheme.pdb_strand_id +_pdbx_nonpoly_scheme.pdb_ins_code +B 2 LIG 1 1 1 LIG B . +# +# +loop_ +_ma_data.id +_ma_data.name +_ma_data.content_type +_ma_data.content_type_other_details +1 . target . +2 . target . +3 Model 'model coordinates' . +# +# +loop_ +_ma_target_entity.entity_id +_ma_target_entity.data_id +_ma_target_entity.origin +1 1 designed +2 2 designed +# +# +loop_ +_ma_target_entity_instance.asym_id +_ma_target_entity_instance.entity_id +_ma_target_entity_instance.details +A 1 'Model subunit A' +B 2 'Model subunit B' +# +# +loop_ +_ma_model_list.ordinal_id +_ma_model_list.model_id +_ma_model_list.model_group_id +_ma_model_list.model_name +_ma_model_list.model_group_name +_ma_model_list.data_id +_ma_model_list.model_type +_ma_model_list.model_type_other_details +1 1 1 Model 'All models' 3 'Ab initio model' . +# +# +loop_ +_atom_site.group_PDB +_atom_site.id +_atom_site.type_symbol +_atom_site.label_atom_id +_atom_site.label_alt_id +_atom_site.label_comp_id +_atom_site.label_seq_id +_atom_site.auth_seq_id +_atom_site.pdbx_PDB_ins_code +_atom_site.label_asym_id +_atom_site.Cartn_x +_atom_site.Cartn_y +_atom_site.Cartn_z +_atom_site.occupancy +_atom_site.label_entity_id +_atom_site.auth_asym_id +_atom_site.auth_comp_id +_atom_site.B_iso_or_equiv +_atom_site.pdbx_PDB_model_num +ATOM 1 N N . ALA 1 1 ? A 16.19559 8.44008 -13.44981 1 1 A ALA 90.480 1 +ATOM 2 C CA . ALA 1 1 ? A 15.42437 7.26177 -13.86499 1 1 A ALA 90.480 1 +ATOM 3 C C . ALA 1 1 ? A 14.01086 7.34703 -13.29857 1 1 A ALA 90.480 1 +ATOM 4 O O . ALA 1 1 ? A 13.81100 7.95439 -12.22510 1 1 A ALA 90.480 1 +ATOM 5 C CB . ALA 1 1 ? A 16.09140 6.00276 -13.35566 1 1 A ALA 90.480 1 +ATOM 6 N N . PRO 2 2 ? A 13.03724 6.78993 -14.03393 1 1 A PRO 95.150 1 +ATOM 7 C CA . PRO 2 2 ? A 11.67039 6.87048 -13.52398 1 1 A PRO 95.150 1 +ATOM 8 C C . PRO 2 2 ? A 11.47168 6.02193 -12.26050 1 1 A PRO 95.150 1 +ATOM 9 O O . PRO 2 2 ? A 12.29778 5.16224 -11.94203 1 1 A PRO 95.150 1 +ATOM 10 C CB . PRO 2 2 ? A 10.85425 6.28755 -14.68696 1 1 A PRO 95.150 1 +ATOM 11 C CG . PRO 2 2 ? A 11.80758 5.33994 -15.35851 1 1 A PRO 95.150 1 +ATOM 12 C CD . PRO 2 2 ? A 13.16583 6.00462 -15.23790 1 1 A PRO 95.150 1 +ATOM 13 N N . VAL 3 3 ? A 10.39374 6.30123 -11.58415 1 1 A VAL 98.670 1 +ATOM 14 C CA . VAL 3 3 ? A 10.02526 5.43979 -10.46152 1 1 A VAL 98.670 1 +ATOM 15 C C . VAL 3 3 ? A 9.55748 4.08512 -10.98415 1 1 A VAL 98.670 1 +ATOM 16 O O . VAL 3 3 ? A 8.87024 4.00052 -12.00502 1 1 A VAL 98.670 1 +ATOM 17 C CB . VAL 3 3 ? A 8.96631 6.13327 -9.57048 1 1 A VAL 98.670 1 +ATOM 18 C CG1 . VAL 3 3 ? A 7.67284 6.33848 -10.31494 1 1 A VAL 98.670 1 +ATOM 19 C CG2 . VAL 3 3 ? A 8.71435 5.32525 -8.32080 1 1 A VAL 98.670 1 +ATOM 20 N N . ARG 4 4 ? A 9.96011 3.01462 -10.28329 1 1 A ARG 98.440 1 +ATOM 21 C CA . ARG 4 4 ? A 9.55152 1.67288 -10.67362 1 1 A ARG 98.440 1 +ATOM 22 C C . ARG 4 4 ? A 8.30130 1.26466 -9.91086 1 1 A ARG 98.440 1 +ATOM 23 O O . ARG 4 4 ? A 8.17004 1.56391 -8.70848 1 1 A ARG 98.440 1 +ATOM 24 C CB . ARG 4 4 ? A 10.68116 0.67410 -10.42383 1 1 A ARG 98.440 1 +ATOM 25 C CG . ARG 4 4 ? A 11.83821 0.89212 -11.40426 1 1 A ARG 98.440 1 +ATOM 26 C CD . ARG 4 4 ? A 12.84155 -0.22915 -11.32219 1 1 A ARG 98.440 1 +ATOM 27 N NE . ARG 4 4 ? A 13.55032 -0.20521 -10.03446 1 1 A ARG 98.440 1 +ATOM 28 C CZ . ARG 4 4 ? A 14.26721 -1.22873 -9.56035 1 1 A ARG 98.440 1 +ATOM 29 N NH1 . ARG 4 4 ? A 14.39925 -2.35622 -10.25426 1 1 A ARG 98.440 1 +ATOM 30 N NH2 . ARG 4 4 ? A 14.89623 -1.09908 -8.39309 1 1 A ARG 98.440 1 +ATOM 31 N N . SER 5 5 ? A 7.39153 0.60579 -10.58001 1 1 A SER 98.660 1 +ATOM 32 C CA . SER 5 5 ? A 6.10298 0.24465 -10.02197 1 1 A SER 98.660 1 +ATOM 33 C C . SER 5 5 ? A 5.68659 -1.14145 -10.46409 1 1 A SER 98.660 1 +ATOM 34 O O . SER 5 5 ? A 6.08392 -1.59968 -11.53973 1 1 A SER 98.660 1 +ATOM 35 C CB . SER 5 5 ? A 5.02506 1.23464 -10.46348 1 1 A SER 98.660 1 +ATOM 36 O OG . SER 5 5 ? A 5.33500 2.54760 -10.04171 1 1 A SER 98.660 1 +ATOM 37 N N . LEU 6 6 ? A 4.87749 -1.78967 -9.65107 1 1 A LEU 98.160 1 +ATOM 38 C CA . LEU 6 6 ? A 4.27064 -3.06511 -9.98525 1 1 A LEU 98.160 1 +ATOM 39 C C . LEU 6 6 ? A 2.76906 -2.98831 -9.73574 1 1 A LEU 98.160 1 +ATOM 40 O O . LEU 6 6 ? A 2.34956 -2.38462 -8.73909 1 1 A LEU 98.160 1 +ATOM 41 C CB . LEU 6 6 ? A 4.84882 -4.20130 -9.13316 1 1 A LEU 98.160 1 +ATOM 42 C CG . LEU 6 6 ? A 6.27546 -4.61548 -9.43163 1 1 A LEU 98.160 1 +ATOM 43 C CD1 . LEU 6 6 ? A 6.75007 -5.61765 -8.37518 1 1 A LEU 98.160 1 +ATOM 44 C CD2 . LEU 6 6 ? A 6.37098 -5.21048 -10.83894 1 1 A LEU 98.160 1 +ATOM 45 N N . ASN 7 7 ? A 1.99049 -3.64952 -10.58578 1 1 A ASN 98.960 1 +ATOM 46 C CA . ASN 7 7 ? A 0.56851 -3.77451 -10.32681 1 1 A ASN 98.960 1 +ATOM 47 C C . ASN 7 7 ? A 0.32992 -4.96967 -9.41568 1 1 A ASN 98.960 1 +ATOM 48 O O . ASN 7 7 ? A 0.97998 -6.01761 -9.59004 1 1 A ASN 98.960 1 +ATOM 49 C CB . ASN 7 7 ? A -0.21803 -3.95061 -11.62461 1 1 A ASN 98.960 1 +ATOM 50 C CG . ASN 7 7 ? A -0.16210 -2.71662 -12.50481 1 1 A ASN 98.960 1 +ATOM 51 O OD1 . ASN 7 7 ? A 0.03946 -1.59607 -12.02821 1 1 A ASN 98.960 1 +ATOM 52 N ND2 . ASN 7 7 ? A -0.32788 -2.91869 -13.79829 1 1 A ASN 98.960 1 +ATOM 53 N N . CYS 8 8 ? A -0.57167 -4.80243 -8.46315 1 1 A CYS 98.960 1 +ATOM 54 C CA . CYS 8 8 ? A -0.81570 -5.88189 -7.52055 1 1 A CYS 98.960 1 +ATOM 55 C C . CYS 8 8 ? A -2.16145 -5.70756 -6.83308 1 1 A CYS 98.960 1 +ATOM 56 O O . CYS 8 8 ? A -2.73202 -4.60047 -6.83144 1 1 A CYS 98.960 1 +ATOM 57 C CB . CYS 8 8 ? A 0.29167 -5.93795 -6.45988 1 1 A CYS 98.960 1 +ATOM 58 S SG . CYS 8 8 ? A 0.37567 -4.45458 -5.43587 1 1 A CYS 98.960 1 +ATOM 59 N N . THR 9 9 ? A -2.64953 -6.77688 -6.25912 1 1 A THR 98.960 1 +ATOM 60 C CA . THR 9 9 ? A -3.79276 -6.73588 -5.36885 1 1 A THR 98.960 1 +ATOM 61 C C . THR 9 9 ? A -3.34417 -7.15869 -3.97818 1 1 A THR 98.960 1 +ATOM 62 O O . THR 9 9 ? A -2.31323 -7.83465 -3.83323 1 1 A THR 98.960 1 +ATOM 63 C CB . THR 9 9 ? A -4.95497 -7.62768 -5.82966 1 1 A THR 98.960 1 +ATOM 64 O OG1 . THR 9 9 ? A -4.52960 -8.99397 -5.83269 1 1 A THR 98.960 1 +ATOM 65 C CG2 . THR 9 9 ? A -5.42992 -7.21691 -7.21773 1 1 A THR 98.960 1 +ATOM 66 N N . LEU 10 10 ? A -4.10030 -6.76276 -2.98326 1 1 A LEU 98.980 1 +ATOM 67 C CA . LEU 10 10 ? A -3.84339 -7.12491 -1.59909 1 1 A LEU 98.980 1 +ATOM 68 C C . LEU 10 10 ? A -5.05750 -7.84787 -1.02653 1 1 A LEU 98.980 1 +ATOM 69 O O . LEU 10 10 ? A -6.20047 -7.49967 -1.35817 1 1 A LEU 98.980 1 +ATOM 70 C CB . LEU 10 10 ? A -3.55711 -5.88531 -0.74506 1 1 A LEU 98.980 1 +ATOM 71 C CG . LEU 10 10 ? A -2.35644 -5.04545 -1.13164 1 1 A LEU 98.980 1 +ATOM 72 C CD1 . LEU 10 10 ? A -2.31737 -3.77866 -0.28293 1 1 A LEU 98.980 1 +ATOM 73 C CD2 . LEU 10 10 ? A -1.06485 -5.82817 -0.96077 1 1 A LEU 98.980 1 +ATOM 74 N N . ARG 11 11 ? A -4.80542 -8.83920 -0.19972 1 1 A ARG 98.930 1 +ATOM 75 C CA . ARG 11 11 ? A -5.83512 -9.50397 0.57409 1 1 A ARG 98.930 1 +ATOM 76 C C . ARG 11 11 ? A -5.35527 -9.58655 2.01490 1 1 A ARG 98.930 1 +ATOM 77 O O . ARG 11 11 ? A -4.17772 -9.88043 2.26171 1 1 A ARG 98.930 1 +ATOM 78 C CB . ARG 11 11 ? A -6.16572 -10.89317 0.02520 1 1 A ARG 98.930 1 +ATOM 79 C CG . ARG 11 11 ? A -7.18929 -10.80950 -1.10477 1 1 A ARG 98.930 1 +ATOM 80 C CD . ARG 11 11 ? A -7.78785 -12.18655 -1.41174 1 1 A ARG 98.930 1 +ATOM 81 N NE . ARG 11 11 ? A -6.93211 -12.93703 -2.29503 1 1 A ARG 98.930 1 +ATOM 82 C CZ . ARG 11 11 ? A -6.83745 -12.77535 -3.59812 1 1 A ARG 98.930 1 +ATOM 83 N NH1 . ARG 11 11 ? A -7.60629 -11.85452 -4.21071 1 1 A ARG 98.930 1 +ATOM 84 N NH2 . ARG 11 11 ? A -5.98553 -13.49141 -4.28614 1 1 A ARG 98.930 1 +ATOM 85 N N . ASP 12 12 ? A -6.26424 -9.32866 2.96494 1 1 A ASP 98.870 1 +ATOM 86 C CA . ASP 12 12 ? A -5.84066 -9.41077 4.36132 1 1 A ASP 98.870 1 +ATOM 87 C C . ASP 12 12 ? A -5.59458 -10.87403 4.75052 1 1 A ASP 98.870 1 +ATOM 88 O O . ASP 12 12 ? A -5.88390 -11.79731 3.95352 1 1 A ASP 98.870 1 +ATOM 89 C CB . ASP 12 12 ? A -6.82114 -8.68225 5.28506 1 1 A ASP 98.870 1 +ATOM 90 C CG . ASP 12 12 ? A -8.16000 -9.35824 5.43094 1 1 A ASP 98.870 1 +ATOM 91 O OD1 . ASP 12 12 ? A -8.29814 -10.53267 5.09403 1 1 A ASP 98.870 1 +ATOM 92 O OD2 . ASP 12 12 ? A -9.09349 -8.67069 5.91214 1 1 A ASP 98.870 1 +ATOM 93 N N . SER 13 13 ? A -5.08130 -11.09136 5.93389 1 1 A SER 97.630 1 +ATOM 94 C CA . SER 13 13 ? A -4.70876 -12.44350 6.35964 1 1 A SER 97.630 1 +ATOM 95 C C . SER 13 13 ? A -5.90013 -13.38761 6.51857 1 1 A SER 97.630 1 +ATOM 96 O O . SER 13 13 ? A -5.70718 -14.60061 6.61069 1 1 A SER 97.630 1 +ATOM 97 C CB . SER 13 13 ? A -3.87597 -12.39726 7.63710 1 1 A SER 97.630 1 +ATOM 98 O OG . SER 13 13 ? A -4.64306 -11.85822 8.70408 1 1 A SER 97.630 1 +ATOM 99 N N . GLN 14 14 ? A -7.11988 -12.81959 6.52249 1 1 A GLN 97.420 1 +ATOM 100 C CA . GLN 14 14 ? A -8.30445 -13.65996 6.47206 1 1 A GLN 97.420 1 +ATOM 101 C C . GLN 14 14 ? A -8.82971 -13.77264 5.04569 1 1 A GLN 97.420 1 +ATOM 102 O O . GLN 14 14 ? A -9.95026 -14.24629 4.82278 1 1 A GLN 97.420 1 +ATOM 103 C CB . GLN 14 14 ? A -9.38303 -13.13557 7.42503 1 1 A GLN 97.420 1 +ATOM 104 C CG . GLN 14 14 ? A -9.07117 -13.40733 8.89880 1 1 A GLN 97.420 1 +ATOM 105 C CD . GLN 14 14 ? A -8.73038 -14.85649 9.19270 1 1 A GLN 97.420 1 +ATOM 106 O OE1 . GLN 14 14 ? A -9.42453 -15.76011 8.73548 1 1 A GLN 97.420 1 +ATOM 107 N NE2 . GLN 14 14 ? A -7.66405 -15.06923 9.95587 1 1 A GLN 97.420 1 +ATOM 108 N N . GLN 15 15 ? A -8.02686 -13.33159 4.08401 1 1 A GLN 98.680 1 +ATOM 109 C CA . GLN 15 15 ? A -8.27262 -13.46458 2.65292 1 1 A GLN 98.680 1 +ATOM 110 C C . GLN 15 15 ? A -9.41765 -12.58191 2.14908 1 1 A GLN 98.680 1 +ATOM 111 O O . GLN 15 15 ? A -10.01478 -12.88005 1.11362 1 1 A GLN 98.680 1 +ATOM 112 C CB . GLN 15 15 ? A -8.49358 -14.92438 2.25658 1 1 A GLN 98.680 1 +ATOM 113 C CG . GLN 15 15 ? A -7.29925 -15.82169 2.59721 1 1 A GLN 98.680 1 +ATOM 114 C CD . GLN 15 15 ? A -6.30243 -15.95637 1.47424 1 1 A GLN 98.680 1 +ATOM 115 O OE1 . GLN 15 15 ? A -5.94104 -14.96548 0.84557 1 1 A GLN 98.680 1 +ATOM 116 N NE2 . GLN 15 15 ? A -5.89440 -17.18007 1.16014 1 1 A GLN 98.680 1 +ATOM 117 N N . LYS 16 16 ? A -9.73075 -11.48137 2.87220 1 1 A LYS 98.930 1 +ATOM 118 C CA . LYS 16 16 ? A -10.70171 -10.54338 2.34215 1 1 A LYS 98.930 1 +ATOM 119 C C . LYS 16 16 ? A -10.02355 -9.65605 1.31443 1 1 A LYS 98.930 1 +ATOM 120 O O . LYS 16 16 ? A -8.88099 -9.22016 1.50865 1 1 A LYS 98.930 1 +ATOM 121 C CB . LYS 16 16 ? A -11.30611 -9.67919 3.45727 1 1 A LYS 98.930 1 +ATOM 122 C CG . LYS 16 16 ? A -12.09833 -10.48622 4.47884 1 1 A LYS 98.930 1 +ATOM 123 C CD . LYS 16 16 ? A -13.06532 -9.58603 5.26642 1 1 A LYS 98.930 1 +ATOM 124 C CE . LYS 16 16 ? A -12.33635 -8.57119 6.14240 1 1 A LYS 98.930 1 +ATOM 125 N NZ . LYS 16 16 ? A -11.49432 -9.31271 7.15001 1 1 A LYS 98.930 1 +ATOM 126 N N . SER 17 17 ? A -10.71306 -9.39259 0.20750 1 1 A SER 98.940 1 +ATOM 127 C CA . SER 17 17 ? A -10.25796 -8.51264 -0.86026 1 1 A SER 98.940 1 +ATOM 128 C C . SER 17 17 ? A -10.57936 -7.06567 -0.53435 1 1 A SER 98.940 1 +ATOM 129 O O . SER 17 17 ? A -11.40308 -6.77908 0.34765 1 1 A SER 98.940 1 +ATOM 130 C CB . SER 17 17 ? A -10.89272 -8.91477 -2.18701 1 1 A SER 98.940 1 +ATOM 131 O OG . SER 17 17 ? A -10.51231 -10.23042 -2.54613 1 1 A SER 98.940 1 +ATOM 132 N N . LEU 18 18 ? A -9.91763 -6.15799 -1.23910 1 1 A LEU 98.900 1 +ATOM 133 C CA . LEU 18 18 ? A -10.16402 -4.74300 -1.06734 1 1 A LEU 98.900 1 +ATOM 134 C C . LEU 18 18 ? A -10.89780 -4.20236 -2.28371 1 1 A LEU 98.900 1 +ATOM 135 O O . LEU 18 18 ? A -10.50204 -4.50532 -3.42160 1 1 A LEU 98.900 1 +ATOM 136 C CB . LEU 18 18 ? A -8.85932 -3.98113 -0.84771 1 1 A LEU 98.900 1 +ATOM 137 C CG . LEU 18 18 ? A -7.93878 -4.54972 0.23318 1 1 A LEU 98.900 1 +ATOM 138 C CD1 . LEU 18 18 ? A -6.70924 -3.68120 0.40690 1 1 A LEU 98.900 1 +ATOM 139 C CD2 . LEU 18 18 ? A -8.66809 -4.67239 1.56368 1 1 A LEU 98.900 1 +ATOM 140 N N . VAL 19 19 ? A -11.96659 -3.44506 -2.08245 1 1 A VAL 98.430 1 +ATOM 141 C CA . VAL 19 19 ? A -12.76657 -2.88874 -3.16862 1 1 A VAL 98.430 1 +ATOM 142 C C . VAL 19 19 ? A -13.08723 -1.42122 -2.88770 1 1 A VAL 98.430 1 +ATOM 143 O O . VAL 19 19 ? A -13.10663 -0.98470 -1.72553 1 1 A VAL 98.430 1 +ATOM 144 C CB . VAL 19 19 ? A -14.07967 -3.67140 -3.39622 1 1 A VAL 98.430 1 +ATOM 145 C CG1 . VAL 19 19 ? A -13.81430 -5.13939 -3.67937 1 1 A VAL 98.430 1 +ATOM 146 C CG2 . VAL 19 19 ? A -15.03667 -3.53824 -2.21935 1 1 A VAL 98.430 1 +ATOM 147 N N . MET 20 20 ? A -13.34438 -0.63364 -3.95751 1 1 A MET 95.980 1 +ATOM 148 C CA . MET 20 20 ? A -13.82839 0.72644 -3.79892 1 1 A MET 95.980 1 +ATOM 149 C C . MET 20 20 ? A -15.25437 0.68679 -3.27457 1 1 A MET 95.980 1 +ATOM 150 O O . MET 20 20 ? A -16.06674 -0.11879 -3.74776 1 1 A MET 95.980 1 +ATOM 151 C CB . MET 20 20 ? A -13.79533 1.49435 -5.10725 1 1 A MET 95.980 1 +ATOM 152 C CG . MET 20 20 ? A -12.40475 1.67461 -5.67103 1 1 A MET 95.980 1 +ATOM 153 S SD . MET 20 20 ? A -11.37137 2.75090 -4.65817 1 1 A MET 95.980 1 +ATOM 154 C CE . MET 20 20 ? A -12.18413 4.30786 -4.89910 1 1 A MET 95.980 1 +ATOM 155 N N . SER 21 21 ? A -15.54439 1.55138 -2.32959 1 1 A SER 86.010 1 +ATOM 156 C CA . SER 21 21 ? A -16.88160 1.60322 -1.76890 1 1 A SER 86.010 1 +ATOM 157 C C . SER 21 21 ? A -17.44904 3.01218 -1.80124 1 1 A SER 86.010 1 +ATOM 158 O O . SER 21 21 ? A -18.43951 3.30622 -1.13846 1 1 A SER 86.010 1 +ATOM 159 C CB . SER 21 21 ? A -16.86415 1.08225 -0.32950 1 1 A SER 86.010 1 +ATOM 160 O OG . SER 21 21 ? A -16.10599 1.91485 0.51226 1 1 A SER 86.010 1 +ATOM 161 N N . GLY 22 22 ? A -16.87170 3.80900 -2.54701 1 1 A GLY 89.680 1 +ATOM 162 C CA . GLY 22 22 ? A -17.24713 5.19815 -2.70112 1 1 A GLY 89.680 1 +ATOM 163 C C . GLY 22 22 ? A -16.05577 5.95523 -3.27727 1 1 A GLY 89.680 1 +ATOM 164 O O . GLY 22 22 ? A -14.97683 5.36090 -3.45370 1 1 A GLY 89.680 1 +ATOM 165 N N . PRO 23 23 ? A -16.20492 7.21915 -3.57264 1 1 A PRO 85.970 1 +ATOM 166 C CA . PRO 23 23 ? A -15.11980 7.96482 -4.23297 1 1 A PRO 85.970 1 +ATOM 167 C C . PRO 23 23 ? A -13.77160 7.87824 -3.52429 1 1 A PRO 85.970 1 +ATOM 168 O O . PRO 23 23 ? A -12.74627 7.77333 -4.18737 1 1 A PRO 85.970 1 +ATOM 169 C CB . PRO 23 23 ? A -15.63405 9.40879 -4.22995 1 1 A PRO 85.970 1 +ATOM 170 C CG . PRO 23 23 ? A -17.11744 9.27292 -4.16063 1 1 A PRO 85.970 1 +ATOM 171 C CD . PRO 23 23 ? A -17.36283 8.06838 -3.30562 1 1 A PRO 85.970 1 +ATOM 172 N N . TYR 24 24 ? A -13.79422 7.88850 -2.23570 1 1 A TYR 91.890 1 +ATOM 173 C CA . TYR 24 24 ? A -12.55782 7.92358 -1.46280 1 1 A TYR 91.890 1 +ATOM 174 C C . TYR 24 24 ? A -12.55904 6.92387 -0.30443 1 1 A TYR 91.890 1 +ATOM 175 O O . TYR 24 24 ? A -11.96709 7.17605 0.73871 1 1 A TYR 91.890 1 +ATOM 176 C CB . TYR 24 24 ? A -12.32473 9.33232 -0.91971 1 1 A TYR 91.890 1 +ATOM 177 C CG . TYR 24 24 ? A -12.09905 10.36833 -1.98560 1 1 A TYR 91.890 1 +ATOM 178 C CD1 . TYR 24 24 ? A -10.85062 10.52151 -2.56501 1 1 A TYR 91.890 1 +ATOM 179 C CD2 . TYR 24 24 ? A -13.13723 11.16680 -2.42120 1 1 A TYR 91.890 1 +ATOM 180 C CE1 . TYR 24 24 ? A -10.64186 11.45851 -3.56824 1 1 A TYR 91.890 1 +ATOM 181 C CE2 . TYR 24 24 ? A -12.94003 12.11089 -3.41883 1 1 A TYR 91.890 1 +ATOM 182 C CZ . TYR 24 24 ? A -11.68074 12.25298 -3.99093 1 1 A TYR 91.890 1 +ATOM 183 O OH . TYR 24 24 ? A -11.47795 13.19339 -4.97257 1 1 A TYR 91.890 1 +ATOM 184 N N . GLU 25 25 ? A -13.20853 5.78479 -0.47427 1 1 A GLU 89.580 1 +ATOM 185 C CA . GLU 25 25 ? A -13.26699 4.80055 0.59305 1 1 A GLU 89.580 1 +ATOM 186 C C . GLU 25 25 ? A -13.02509 3.40661 0.03098 1 1 A GLU 89.580 1 +ATOM 187 O O . GLU 25 25 ? A -13.57522 3.04309 -0.99966 1 1 A GLU 89.580 1 +ATOM 188 C CB . GLU 25 25 ? A -14.62552 4.85485 1.29411 1 1 A GLU 89.580 1 +ATOM 189 C CG . GLU 25 25 ? A -14.69190 3.98665 2.56241 1 1 A GLU 89.580 1 +ATOM 190 C CD . GLU 25 25 ? A -16.00526 4.11262 3.28533 1 1 A GLU 89.580 1 +ATOM 191 O OE1 . GLU 25 25 ? A -17.03431 4.40515 2.65477 1 1 A GLU 89.580 1 +ATOM 192 O OE2 . GLU 25 25 ? A -15.98900 3.89871 4.48043 1 1 A GLU 89.580 1 +ATOM 193 N N . LEU 26 26 ? A -12.18647 2.64803 0.72243 1 1 A LEU 95.170 1 +ATOM 194 C CA . LEU 26 26 ? A -11.94931 1.24090 0.44546 1 1 A LEU 95.170 1 +ATOM 195 C C . LEU 26 26 ? A -12.62669 0.41398 1.52492 1 1 A LEU 95.170 1 +ATOM 196 O O . LEU 26 26 ? A -12.65350 0.82111 2.69275 1 1 A LEU 95.170 1 +ATOM 197 C CB . LEU 26 26 ? A -10.45818 0.91876 0.45251 1 1 A LEU 95.170 1 +ATOM 198 C CG . LEU 26 26 ? A -9.60064 1.49092 -0.64899 1 1 A LEU 95.170 1 +ATOM 199 C CD1 . LEU 26 26 ? A -8.15279 1.04839 -0.45222 1 1 A LEU 95.170 1 +ATOM 200 C CD2 . LEU 26 26 ? A -10.08811 1.06724 -2.01614 1 1 A LEU 95.170 1 +ATOM 201 N N . LYS 27 27 ? A -13.15169 -0.74707 1.15482 1 1 A LYS 98.110 1 +ATOM 202 C CA . LYS 27 27 ? A -13.68991 -1.68196 2.13369 1 1 A LYS 98.110 1 +ATOM 203 C C . LYS 27 27 ? A -13.13172 -3.06461 1.86329 1 1 A LYS 98.110 1 +ATOM 204 O O . LYS 27 27 ? A -12.61391 -3.32851 0.75899 1 1 A LYS 98.110 1 +ATOM 205 C CB . LYS 27 27 ? A -15.22587 -1.67550 2.11155 1 1 A LYS 98.110 1 +ATOM 206 C CG . LYS 27 27 ? A -15.83654 -2.14579 0.80141 1 1 A LYS 98.110 1 +ATOM 207 C CD . LYS 27 27 ? A -17.36752 -2.05143 0.84392 1 1 A LYS 98.110 1 +ATOM 208 C CE . LYS 27 27 ? A -18.00311 -2.61678 -0.38710 1 1 A LYS 98.110 1 +ATOM 209 N NZ . LYS 27 27 ? A -19.48620 -2.53148 -0.31113 1 1 A LYS 98.110 1 +ATOM 210 N N . ALA 28 28 ? A -13.21376 -3.92537 2.85887 1 1 A ALA 98.900 1 +ATOM 211 C CA . ALA 28 28 ? A -12.67930 -5.27314 2.74100 1 1 A ALA 98.900 1 +ATOM 212 C C . ALA 28 28 ? A -13.80090 -6.28883 2.87463 1 1 A ALA 98.900 1 +ATOM 213 O O . ALA 28 28 ? A -14.62839 -6.18564 3.79317 1 1 A ALA 98.900 1 +ATOM 214 C CB . ALA 28 28 ? A -11.61311 -5.51959 3.80872 1 1 A ALA 98.900 1 +ATOM 215 N N . LEU 29 29 ? A -13.81812 -7.22764 1.93827 1 1 A LEU 98.710 1 +ATOM 216 C CA . LEU 29 29 ? A -14.84149 -8.26109 1.99820 1 1 A LEU 98.710 1 +ATOM 217 C C . LEU 29 29 ? A -14.34681 -9.52759 1.32175 1 1 A LEU 98.710 1 +ATOM 218 O O . LEU 29 29 ? A -13.43855 -9.48249 0.48031 1 1 A LEU 98.710 1 +ATOM 219 C CB . LEU 29 29 ? A -16.15830 -7.76815 1.38043 1 1 A LEU 98.710 1 +ATOM 220 C CG . LEU 29 29 ? A -16.24171 -7.71127 -0.13633 1 1 A LEU 98.710 1 +ATOM 221 C CD1 . LEU 29 29 ? A -17.69689 -7.41672 -0.55632 1 1 A LEU 98.710 1 +ATOM 222 C CD2 . LEU 29 29 ? A -15.33212 -6.64841 -0.70403 1 1 A LEU 98.710 1 +ATOM 223 N N . HIS 30 30 ? A -14.97505 -10.63564 1.67225 1 1 A HIS 98.900 1 +ATOM 224 C CA . HIS 30 30 ? A -14.65584 -11.88647 0.99997 1 1 A HIS 98.900 1 +ATOM 225 C C . HIS 30 30 ? A -15.25797 -11.88418 -0.38219 1 1 A HIS 98.900 1 +ATOM 226 O O . HIS 30 30 ? A -16.42613 -11.56934 -0.56009 1 1 A HIS 98.900 1 +ATOM 227 C CB . HIS 30 30 ? A -15.17349 -13.07427 1.79927 1 1 A HIS 98.900 1 +ATOM 228 C CG . HIS 30 30 ? A -14.34292 -13.41824 2.98252 1 1 A HIS 98.900 1 +ATOM 229 N ND1 . HIS 30 30 ? A -14.63426 -12.95853 4.23749 1 1 A HIS 98.900 1 +ATOM 230 C CD2 . HIS 30 30 ? A -13.19488 -14.11986 3.09794 1 1 A HIS 98.900 1 +ATOM 231 C CE1 . HIS 30 30 ? A -13.73186 -13.38276 5.08132 1 1 A HIS 98.900 1 +ATOM 232 N NE2 . HIS 30 30 ? A -12.83407 -14.10262 4.40867 1 1 A HIS 98.900 1 +ATOM 233 N N . LEU 31 31 ? A -14.47355 -12.16270 -1.37030 1 1 A LEU 98.750 1 +ATOM 234 C CA . LEU 31 31 ? A -14.87142 -12.26267 -2.77282 1 1 A LEU 98.750 1 +ATOM 235 C C . LEU 31 31 ? A -14.45297 -13.60162 -3.33846 1 1 A LEU 98.750 1 +ATOM 236 O O . LEU 31 31 ? A -13.42143 -14.15655 -2.92800 1 1 A LEU 98.750 1 +ATOM 237 C CB . LEU 31 31 ? A -14.21415 -11.16127 -3.61160 1 1 A LEU 98.750 1 +ATOM 238 C CG . LEU 31 31 ? A -14.73027 -9.76059 -3.45971 1 1 A LEU 98.750 1 +ATOM 239 C CD1 . LEU 31 31 ? A -13.89519 -8.81040 -4.31704 1 1 A LEU 98.750 1 +ATOM 240 C CD2 . LEU 31 31 ? A -16.20855 -9.65917 -3.85292 1 1 A LEU 98.750 1 +ATOM 241 N N . GLN 32 32 ? A -15.16689 -14.07341 -4.26726 1 1 A GLN 97.700 1 +ATOM 242 C CA . GLN 32 32 ? A -14.81672 -15.27531 -5.02002 1 1 A GLN 97.700 1 +ATOM 243 C C . GLN 32 32 ? A -15.49002 -15.21833 -6.37926 1 1 A GLN 97.700 1 +ATOM 244 O O . GLN 32 32 ? A -16.57533 -14.61930 -6.52700 1 1 A GLN 97.700 1 +ATOM 245 C CB . GLN 32 32 ? A -15.22632 -16.52081 -4.24327 1 1 A GLN 97.700 1 +ATOM 246 C CG . GLN 32 32 ? A -14.48051 -17.77981 -4.68124 1 1 A GLN 97.700 1 +ATOM 247 C CD . GLN 32 32 ? A -14.77870 -18.96962 -3.78198 1 1 A GLN 97.700 1 +ATOM 248 O OE1 . GLN 32 32 ? A -15.86318 -19.57417 -3.89126 1 1 A GLN 97.700 1 +ATOM 249 N NE2 . GLN 32 32 ? A -13.90346 -19.23804 -2.87079 1 1 A GLN 97.700 1 +ATOM 250 N N . GLY 33 33 ? A -14.91044 -15.82438 -7.34515 1 1 A GLY 98.740 1 +ATOM 251 C CA . GLY 33 33 ? A -15.51004 -15.92505 -8.66191 1 1 A GLY 98.740 1 +ATOM 252 C C . GLY 33 33 ? A -15.54586 -14.61893 -9.41974 1 1 A GLY 98.740 1 +ATOM 253 O O . GLY 33 33 ? A -14.62446 -13.80044 -9.34443 1 1 A GLY 98.740 1 +ATOM 254 N N . GLN 34 34 ? A -16.61444 -14.40257 -10.11059 1 1 A GLN 98.680 1 +ATOM 255 C CA . GLN 34 34 ? A -16.81404 -13.24224 -10.97603 1 1 A GLN 98.680 1 +ATOM 256 C C . GLN 34 34 ? A -16.68466 -11.92346 -10.23438 1 1 A GLN 98.680 1 +ATOM 257 O O . GLN 34 34 ? A -16.21978 -10.93295 -10.79849 1 1 A GLN 98.680 1 +ATOM 258 C CB . GLN 34 34 ? A -18.17273 -13.29685 -11.64448 1 1 A GLN 98.680 1 +ATOM 259 C CG . GLN 34 34 ? A -18.36181 -14.38553 -12.67082 1 1 A GLN 98.680 1 +ATOM 260 C CD . GLN 34 34 ? A -17.70285 -14.03317 -14.00546 1 1 A GLN 98.680 1 +ATOM 261 O OE1 . GLN 34 34 ? A -17.16901 -14.86959 -14.67634 1 1 A GLN 98.680 1 +ATOM 262 N NE2 . GLN 34 34 ? A -17.69976 -12.76756 -14.36455 1 1 A GLN 98.680 1 +ATOM 263 N N . ASP 35 35 ? A -17.09451 -11.91741 -8.97346 1 1 A ASP 98.150 1 +ATOM 264 C CA . ASP 35 35 ? A -17.02931 -10.67553 -8.20942 1 1 A ASP 98.150 1 +ATOM 265 C C . ASP 35 35 ? A -15.61380 -10.24636 -7.90032 1 1 A ASP 98.150 1 +ATOM 266 O O . ASP 35 35 ? A -15.41132 -9.11824 -7.41430 1 1 A ASP 98.150 1 +ATOM 267 C CB . ASP 35 35 ? A -17.84621 -10.80628 -6.91662 1 1 A ASP 98.150 1 +ATOM 268 C CG . ASP 35 35 ? A -19.32493 -10.50989 -7.10317 1 1 A ASP 98.150 1 +ATOM 269 O OD1 . ASP 35 35 ? A -19.75282 -10.23367 -8.24196 1 1 A ASP 98.150 1 +ATOM 270 O OD2 . ASP 35 35 ? A -20.05522 -10.57720 -6.08842 1 1 A ASP 98.150 1 +ATOM 271 N N . MET 36 36 ? A -14.59372 -11.11294 -8.19991 1 1 A MET 98.320 1 +ATOM 272 C CA . MET 36 36 ? A -13.20771 -10.76612 -7.95600 1 1 A MET 98.320 1 +ATOM 273 C C . MET 36 36 ? A -12.73565 -9.60240 -8.81314 1 1 A MET 98.320 1 +ATOM 274 O O . MET 36 36 ? A -11.76146 -8.94063 -8.46490 1 1 A MET 98.320 1 +ATOM 275 C CB . MET 36 36 ? A -12.29215 -11.97949 -8.17555 1 1 A MET 98.320 1 +ATOM 276 C CG . MET 36 36 ? A -12.36666 -12.98940 -7.06411 1 1 A MET 98.320 1 +ATOM 277 S SD . MET 36 36 ? A -11.11897 -12.67756 -5.85085 1 1 A MET 98.320 1 +ATOM 278 C CE . MET 36 36 ? A -9.75232 -13.54854 -6.58901 1 1 A MET 98.320 1 +ATOM 279 N N . GLU 37 37 ? A -13.42920 -9.33144 -9.95890 1 1 A GLU 97.200 1 +ATOM 280 C CA . GLU 37 37 ? A -13.12199 -8.20465 -10.82338 1 1 A GLU 97.200 1 +ATOM 281 C C . GLU 37 37 ? A -13.27608 -6.87713 -10.09072 1 1 A GLU 97.200 1 +ATOM 282 O O . GLU 37 37 ? A -12.75444 -5.85952 -10.54036 1 1 A GLU 97.200 1 +ATOM 283 C CB . GLU 37 37 ? A -14.00646 -8.22061 -12.06840 1 1 A GLU 97.200 1 +ATOM 284 C CG . GLU 37 37 ? A -15.50847 -8.10059 -11.74002 1 1 A GLU 97.200 1 +ATOM 285 C CD . GLU 37 37 ? A -16.37934 -8.13796 -12.99683 1 1 A GLU 97.200 1 +ATOM 286 O OE1 . GLU 37 37 ? A -15.84732 -8.13543 -14.09025 1 1 A GLU 97.200 1 +ATOM 287 O OE2 . GLU 37 37 ? A -17.63562 -8.17342 -12.80498 1 1 A GLU 97.200 1 +ATOM 288 N N . GLN 38 38 ? A -14.00901 -6.88147 -8.97164 1 1 A GLN 96.980 1 +ATOM 289 C CA . GLN 38 38 ? A -14.25146 -5.68808 -8.18025 1 1 A GLN 96.980 1 +ATOM 290 C C . GLN 38 38 ? A -13.04423 -5.28422 -7.34435 1 1 A GLN 96.980 1 +ATOM 291 O O . GLN 38 38 ? A -13.00894 -4.15203 -6.86062 1 1 A GLN 96.980 1 +ATOM 292 C CB . GLN 38 38 ? A -15.43456 -5.90506 -7.23316 1 1 A GLN 96.980 1 +ATOM 293 C CG . GLN 38 38 ? A -16.73643 -6.21004 -7.91755 1 1 A GLN 96.980 1 +ATOM 294 C CD . GLN 38 38 ? A -17.83485 -6.53066 -6.91064 1 1 A GLN 96.980 1 +ATOM 295 O OE1 . GLN 38 38 ? A -17.94497 -5.88797 -5.87410 1 1 A GLN 96.980 1 +ATOM 296 N NE2 . GLN 38 38 ? A -18.63564 -7.55795 -7.22549 1 1 A GLN 96.980 1 +ATOM 297 N N . GLN 39 39 ? A -12.06035 -6.18623 -7.13187 1 1 A GLN 98.510 1 +ATOM 298 C CA . GLN 39 39 ? A -10.97190 -5.82316 -6.24262 1 1 A GLN 98.510 1 +ATOM 299 C C . GLN 39 39 ? A -10.14083 -4.69038 -6.82211 1 1 A GLN 98.510 1 +ATOM 300 O O . GLN 39 39 ? A -9.98592 -4.59075 -8.04590 1 1 A GLN 98.510 1 +ATOM 301 C CB . GLN 39 39 ? A -10.10939 -7.03644 -5.90885 1 1 A GLN 98.510 1 +ATOM 302 C CG . GLN 39 39 ? A -9.39976 -7.66751 -7.08343 1 1 A GLN 98.510 1 +ATOM 303 C CD . GLN 39 39 ? A -8.63277 -8.91868 -6.65147 1 1 A GLN 98.510 1 +ATOM 304 O OE1 . GLN 39 39 ? A -8.22632 -9.08055 -5.52383 1 1 A GLN 98.510 1 +ATOM 305 N NE2 . GLN 39 39 ? A -8.48261 -9.82358 -7.58988 1 1 A GLN 98.510 1 +ATOM 306 N N . VAL 40 40 ? A -9.64217 -3.83956 -5.97521 1 1 A VAL 98.630 1 +ATOM 307 C CA . VAL 40 40 ? A -8.79639 -2.75506 -6.44698 1 1 A VAL 98.630 1 +ATOM 308 C C . VAL 40 40 ? A -7.44561 -3.32271 -6.83959 1 1 A VAL 98.630 1 +ATOM 309 O O . VAL 40 40 ? A -6.90439 -4.22112 -6.18632 1 1 A VAL 98.630 1 +ATOM 310 C CB . VAL 40 40 ? A -8.63472 -1.62893 -5.40954 1 1 A VAL 98.630 1 +ATOM 311 C CG1 . VAL 40 40 ? A -9.98905 -1.01736 -5.04354 1 1 A VAL 98.630 1 +ATOM 312 C CG2 . VAL 40 40 ? A -7.91777 -2.10145 -4.15752 1 1 A VAL 98.630 1 +ATOM 313 N N . VAL 41 41 ? A -6.94235 -2.79912 -7.89997 1 1 A VAL 98.910 1 +ATOM 314 C CA . VAL 41 41 ? A -5.59742 -3.10326 -8.34140 1 1 A VAL 98.910 1 +ATOM 315 C C . VAL 41 41 ? A -4.73433 -1.89690 -8.00521 1 1 A VAL 98.910 1 +ATOM 316 O O . VAL 41 41 ? A -5.05462 -0.76886 -8.40021 1 1 A VAL 98.910 1 +ATOM 317 C CB . VAL 41 41 ? A -5.55475 -3.41514 -9.85285 1 1 A VAL 98.910 1 +ATOM 318 C CG1 . VAL 41 41 ? A -4.12977 -3.71311 -10.29412 1 1 A VAL 98.910 1 +ATOM 319 C CG2 . VAL 41 41 ? A -6.44448 -4.60126 -10.17656 1 1 A VAL 98.910 1 +ATOM 320 N N . PHE 42 42 ? A -3.68912 -2.13807 -7.24758 1 1 A PHE 98.990 1 +ATOM 321 C CA . PHE 42 42 ? A -2.76450 -1.08234 -6.88106 1 1 A PHE 98.990 1 +ATOM 322 C C . PHE 42 42 ? A -1.58864 -1.02697 -7.83188 1 1 A PHE 98.990 1 +ATOM 323 O O . PHE 42 42 ? A -1.19614 -2.05487 -8.38582 1 1 A PHE 98.990 1 +ATOM 324 C CB . PHE 42 42 ? A -2.22837 -1.32226 -5.45652 1 1 A PHE 98.990 1 +ATOM 325 C CG . PHE 42 42 ? A -3.26015 -1.21930 -4.38045 1 1 A PHE 98.990 1 +ATOM 326 C CD1 . PHE 42 42 ? A -3.57996 0.01340 -3.84628 1 1 A PHE 98.990 1 +ATOM 327 C CD2 . PHE 42 42 ? A -3.88389 -2.35192 -3.89163 1 1 A PHE 98.990 1 +ATOM 328 C CE1 . PHE 42 42 ? A -4.53501 0.12724 -2.84527 1 1 A PHE 98.990 1 +ATOM 329 C CE2 . PHE 42 42 ? A -4.84854 -2.24059 -2.88818 1 1 A PHE 98.990 1 +ATOM 330 C CZ . PHE 42 42 ? A -5.15987 -0.99833 -2.37284 1 1 A PHE 98.990 1 +ATOM 331 N N . SER 43 43 ? A -1.07015 0.14956 -8.02875 1 1 A SER 98.940 1 +ATOM 332 C CA . SER 43 43 ? A 0.25665 0.33499 -8.55977 1 1 A SER 98.940 1 +ATOM 333 C C . SER 43 43 ? A 1.15610 0.62816 -7.36170 1 1 A SER 98.940 1 +ATOM 334 O O . SER 43 43 ? A 1.02630 1.68177 -6.74308 1 1 A SER 98.940 1 +ATOM 335 C CB . SER 43 43 ? A 0.30223 1.47626 -9.57199 1 1 A SER 98.940 1 +ATOM 336 O OG . SER 43 43 ? A 1.61210 1.62784 -10.05598 1 1 A SER 98.940 1 +ATOM 337 N N . MET 44 44 ? A 2.01450 -0.32887 -7.00770 1 1 A MET 98.990 1 +ATOM 338 C CA . MET 44 44 ? A 2.91953 -0.15235 -5.88659 1 1 A MET 98.990 1 +ATOM 339 C C . MET 44 44 ? A 4.23552 0.41335 -6.40458 1 1 A MET 98.990 1 +ATOM 340 O O . MET 44 44 ? A 4.91369 -0.25789 -7.18882 1 1 A MET 98.990 1 +ATOM 341 C CB . MET 44 44 ? A 3.16151 -1.48850 -5.17684 1 1 A MET 98.990 1 +ATOM 342 C CG . MET 44 44 ? A 4.08255 -1.38756 -3.97445 1 1 A MET 98.990 1 +ATOM 343 S SD . MET 44 44 ? A 4.42699 -2.97748 -3.19466 1 1 A MET 98.990 1 +ATOM 344 C CE . MET 44 44 ? A 2.83757 -3.48497 -2.67515 1 1 A MET 98.990 1 +ATOM 345 N N . SER 45 45 ? A 4.53099 1.63096 -6.00723 1 1 A SER 98.970 1 +ATOM 346 C CA . SER 45 45 ? A 5.76498 2.28231 -6.43693 1 1 A SER 98.970 1 +ATOM 347 C C . SER 45 45 ? A 6.81908 2.12195 -5.34940 1 1 A SER 98.970 1 +ATOM 348 O O . SER 45 45 ? A 6.50232 2.22851 -4.15569 1 1 A SER 98.970 1 +ATOM 349 C CB . SER 45 45 ? A 5.52556 3.76751 -6.69546 1 1 A SER 98.970 1 +ATOM 350 O OG . SER 45 45 ? A 4.64518 3.94531 -7.77335 1 1 A SER 98.970 1 +ATOM 351 N N . PHE 46 46 ? A 8.03547 1.88833 -5.76226 1 1 A PHE 98.960 1 +ATOM 352 C CA . PHE 46 46 ? A 9.14473 1.73656 -4.85103 1 1 A PHE 98.960 1 +ATOM 353 C C . PHE 46 46 ? A 9.83662 3.08632 -4.71014 1 1 A PHE 98.960 1 +ATOM 354 O O . PHE 46 46 ? A 10.46552 3.55317 -5.64160 1 1 A PHE 98.960 1 +ATOM 355 C CB . PHE 46 46 ? A 10.06210 0.61992 -5.32360 1 1 A PHE 98.960 1 +ATOM 356 C CG . PHE 46 46 ? A 9.34948 -0.70031 -5.30734 1 1 A PHE 98.960 1 +ATOM 357 C CD1 . PHE 46 46 ? A 8.54505 -1.09743 -6.36416 1 1 A PHE 98.960 1 +ATOM 358 C CD2 . PHE 46 46 ? A 9.41254 -1.52617 -4.19525 1 1 A PHE 98.960 1 +ATOM 359 C CE1 . PHE 46 46 ? A 7.82845 -2.28344 -6.32214 1 1 A PHE 98.960 1 +ATOM 360 C CE2 . PHE 46 46 ? A 8.69724 -2.71639 -4.15330 1 1 A PHE 98.960 1 +ATOM 361 C CZ . PHE 46 46 ? A 7.91554 -3.08262 -5.21577 1 1 A PHE 98.960 1 +ATOM 362 N N . VAL 47 47 ? A 9.69288 3.67777 -3.53758 1 1 A VAL 98.990 1 +ATOM 363 C CA . VAL 47 47 ? A 10.00389 5.07824 -3.30857 1 1 A VAL 98.990 1 +ATOM 364 C C . VAL 47 47 ? A 11.17715 5.25399 -2.35381 1 1 A VAL 98.990 1 +ATOM 365 O O . VAL 47 47 ? A 11.68340 4.27967 -1.78532 1 1 A VAL 98.990 1 +ATOM 366 C CB . VAL 47 47 ? A 8.77007 5.82758 -2.76306 1 1 A VAL 98.990 1 +ATOM 367 C CG1 . VAL 47 47 ? A 7.59143 5.70807 -3.68895 1 1 A VAL 98.990 1 +ATOM 368 C CG2 . VAL 47 47 ? A 8.36842 5.30299 -1.38129 1 1 A VAL 98.990 1 +ATOM 369 N N . GLN 48 48 ? A 11.59661 6.50769 -2.20213 1 1 A GLN 98.720 1 +ATOM 370 C CA . GLN 48 48 ? A 12.69796 6.88336 -1.33202 1 1 A GLN 98.720 1 +ATOM 371 C C . GLN 48 48 ? A 12.27652 6.73246 0.12755 1 1 A GLN 98.720 1 +ATOM 372 O O . GLN 48 48 ? A 11.16409 7.09826 0.50110 1 1 A GLN 98.720 1 +ATOM 373 C CB . GLN 48 48 ? A 13.10717 8.31929 -1.62724 1 1 A GLN 98.720 1 +ATOM 374 C CG . GLN 48 48 ? A 14.17971 8.90460 -0.73221 1 1 A GLN 98.720 1 +ATOM 375 C CD . GLN 48 48 ? A 14.48077 10.34815 -1.04818 1 1 A GLN 98.720 1 +ATOM 376 O OE1 . GLN 48 48 ? A 14.61609 10.68915 -2.22570 1 1 A GLN 98.720 1 +ATOM 377 N NE2 . GLN 48 48 ? A 14.61100 11.19313 -0.03655 1 1 A GLN 98.720 1 +ATOM 378 N N . GLY 49 49 ? A 13.16281 6.21727 0.94752 1 1 A GLY 98.810 1 +ATOM 379 C CA . GLY 49 49 ? A 12.94492 6.09417 2.37460 1 1 A GLY 98.810 1 +ATOM 380 C C . GLY 49 49 ? A 13.87034 5.06605 2.98778 1 1 A GLY 98.810 1 +ATOM 381 O O . GLY 49 49 ? A 14.65007 4.41300 2.27993 1 1 A GLY 98.810 1 +ATOM 382 N N . GLU 50 50 ? A 13.80948 4.87548 4.30735 1 1 A GLU 97.370 1 +ATOM 383 C CA . GLU 50 50 ? A 14.63373 3.91466 5.01869 1 1 A GLU 97.370 1 +ATOM 384 C C . GLU 50 50 ? A 14.27046 2.50108 4.57341 1 1 A GLU 97.370 1 +ATOM 385 O O . GLU 50 50 ? A 13.08971 2.16159 4.47295 1 1 A GLU 97.370 1 +ATOM 386 C CB . GLU 50 50 ? A 14.43674 4.07760 6.52982 1 1 A GLU 97.370 1 +ATOM 387 C CG . GLU 50 50 ? A 15.08139 3.01967 7.41256 1 1 A GLU 97.370 1 +ATOM 388 C CD . GLU 50 50 ? A 16.57840 2.92739 7.28385 1 1 A GLU 97.370 1 +ATOM 389 O OE1 . GLU 50 50 ? A 17.12404 1.82100 7.56305 1 1 A GLU 97.370 1 +ATOM 390 O OE2 . GLU 50 50 ? A 17.20181 3.93940 6.91716 1 1 A GLU 97.370 1 +ATOM 391 N N . GLU 51 51 ? A 15.25211 1.67100 4.29747 1 1 A GLU 98.230 1 +ATOM 392 C CA . GLU 51 51 ? A 15.05115 0.37036 3.68153 1 1 A GLU 98.230 1 +ATOM 393 C C . GLU 51 51 ? A 15.95760 -0.68481 4.29324 1 1 A GLU 98.230 1 +ATOM 394 O O . GLU 51 51 ? A 17.06469 -0.38039 4.71263 1 1 A GLU 98.230 1 +ATOM 395 C CB . GLU 51 51 ? A 15.32031 0.51060 2.18166 1 1 A GLU 98.230 1 +ATOM 396 C CG . GLU 51 51 ? A 15.06118 -0.74473 1.37448 1 1 A GLU 98.230 1 +ATOM 397 C CD . GLU 51 51 ? A 15.07224 -0.46626 -0.13273 1 1 A GLU 98.230 1 +ATOM 398 O OE1 . GLU 51 51 ? A 15.05571 0.70699 -0.53912 1 1 A GLU 98.230 1 +ATOM 399 O OE2 . GLU 51 51 ? A 15.13196 -1.44461 -0.91052 1 1 A GLU 98.230 1 +ATOM 400 N N . SER 52 52 ? A 15.53378 -1.94866 4.37233 1 1 A SER 97.900 1 +ATOM 401 C CA . SER 52 52 ? A 16.29468 -3.12115 4.79153 1 1 A SER 97.900 1 +ATOM 402 C C . SER 52 52 ? A 15.78488 -4.32852 4.02156 1 1 A SER 97.900 1 +ATOM 403 O O . SER 52 52 ? A 14.86987 -4.19338 3.19853 1 1 A SER 97.900 1 +ATOM 404 C CB . SER 52 52 ? A 16.17432 -3.33874 6.29926 1 1 A SER 97.900 1 +ATOM 405 O OG . SER 52 52 ? A 14.89406 -3.82067 6.63976 1 1 A SER 97.900 1 +ATOM 406 N N . ASN 53 53 ? A 16.31945 -5.52097 4.32364 1 1 A ASN 98.020 1 +ATOM 407 C CA . ASN 53 53 ? A 15.87315 -6.73295 3.63708 1 1 A ASN 98.020 1 +ATOM 408 C C . ASN 53 53 ? A 14.37052 -6.96554 3.75146 1 1 A ASN 98.020 1 +ATOM 409 O O . ASN 53 53 ? A 13.74273 -7.40307 2.79595 1 1 A ASN 98.020 1 +ATOM 410 C CB . ASN 53 53 ? A 16.61830 -7.94909 4.15873 1 1 A ASN 98.020 1 +ATOM 411 C CG . ASN 53 53 ? A 18.02856 -8.07120 3.60741 1 1 A ASN 98.020 1 +ATOM 412 O OD1 . ASN 53 53 ? A 18.34370 -7.47358 2.58563 1 1 A ASN 98.020 1 +ATOM 413 N ND2 . ASN 53 53 ? A 18.86535 -8.81541 4.28446 1 1 A ASN 98.020 1 +ATOM 414 N N . ASP 54 54 ? A 13.79775 -6.66286 4.90036 1 1 A ASP 97.730 1 +ATOM 415 C CA . ASP 54 54 ? A 12.40147 -6.96826 5.15742 1 1 A ASP 97.730 1 +ATOM 416 C C . ASP 54 54 ? A 11.52905 -5.73362 5.28413 1 1 A ASP 97.730 1 +ATOM 417 O O . ASP 54 54 ? A 10.32978 -5.86669 5.63217 1 1 A ASP 97.730 1 +ATOM 418 C CB . ASP 54 54 ? A 12.27011 -7.83047 6.42433 1 1 A ASP 97.730 1 +ATOM 419 C CG . ASP 54 54 ? A 13.15423 -9.06991 6.36384 1 1 A ASP 97.730 1 +ATOM 420 O OD1 . ASP 54 54 ? A 13.22737 -9.68991 5.29480 1 1 A ASP 97.730 1 +ATOM 421 O OD2 . ASP 54 54 ? A 13.78094 -9.39543 7.40193 1 1 A ASP 97.730 1 +ATOM 422 N N . LYS 55 55 ? A 12.05479 -4.53906 4.99439 1 1 A LYS 97.660 1 +ATOM 423 C CA . LYS 55 55 ? A 11.29593 -3.30353 5.07596 1 1 A LYS 97.660 1 +ATOM 424 C C . LYS 55 55 ? A 11.58400 -2.45581 3.85566 1 1 A LYS 97.660 1 +ATOM 425 O O . LYS 55 55 ? A 12.71386 -2.02242 3.66258 1 1 A LYS 97.660 1 +ATOM 426 C CB . LYS 55 55 ? A 11.67050 -2.53979 6.35936 1 1 A LYS 97.660 1 +ATOM 427 C CG . LYS 55 55 ? A 10.93118 -1.22036 6.55576 1 1 A LYS 97.660 1 +ATOM 428 C CD . LYS 55 55 ? A 11.14893 -0.68530 7.97389 1 1 A LYS 97.660 1 +ATOM 429 C CE . LYS 55 55 ? A 12.48133 0.00410 8.08728 1 1 A LYS 97.660 1 +ATOM 430 N NZ . LYS 55 55 ? A 12.55127 1.21501 7.22647 1 1 A LYS 97.660 1 +ATOM 431 N N . ILE 56 56 ? A 10.58915 -2.23646 3.05161 1 1 A ILE 98.810 1 +ATOM 432 C CA . ILE 56 56 ? A 10.71137 -1.54744 1.77664 1 1 A ILE 98.810 1 +ATOM 433 C C . ILE 56 56 ? A 9.72929 -0.37223 1.74314 1 1 A ILE 98.810 1 +ATOM 434 O O . ILE 56 56 ? A 8.51636 -0.58855 1.87940 1 1 A ILE 98.810 1 +ATOM 435 C CB . ILE 56 56 ? A 10.39390 -2.48576 0.59910 1 1 A ILE 98.810 1 +ATOM 436 C CG1 . ILE 56 56 ? A 11.21255 -3.76299 0.66053 1 1 A ILE 98.810 1 +ATOM 437 C CG2 . ILE 56 56 ? A 10.55468 -1.76200 -0.72467 1 1 A ILE 98.810 1 +ATOM 438 C CD1 . ILE 56 56 ? A 12.67932 -3.56678 0.53367 1 1 A ILE 98.810 1 +ATOM 439 N N . PRO 57 57 ? A 10.19741 0.85947 1.52866 1 1 A PRO 98.980 1 +ATOM 440 C CA . PRO 57 57 ? A 9.26965 1.97868 1.42714 1 1 A PRO 98.980 1 +ATOM 441 C C . PRO 57 57 ? A 8.53995 1.97331 0.09232 1 1 A PRO 98.980 1 +ATOM 442 O O . PRO 57 57 ? A 9.18235 1.86580 -0.96140 1 1 A PRO 98.980 1 +ATOM 443 C CB . PRO 57 57 ? A 10.16471 3.20833 1.57256 1 1 A PRO 98.980 1 +ATOM 444 C CG . PRO 57 57 ? A 11.49935 2.74165 1.10081 1 1 A PRO 98.980 1 +ATOM 445 C CD . PRO 57 57 ? A 11.58747 1.27754 1.47298 1 1 A PRO 98.980 1 +ATOM 446 N N . VAL 58 58 ? A 7.21567 2.07323 0.13684 1 1 A VAL 99.000 1 +ATOM 447 C CA . VAL 58 58 ? A 6.40393 2.05158 -1.07077 1 1 A VAL 99.000 1 +ATOM 448 C C . VAL 58 58 ? A 5.30101 3.09688 -0.99141 1 1 A VAL 99.000 1 +ATOM 449 O O . VAL 58 58 ? A 4.96146 3.58358 0.09536 1 1 A VAL 99.000 1 +ATOM 450 C CB . VAL 58 58 ? A 5.76355 0.67166 -1.32623 1 1 A VAL 99.000 1 +ATOM 451 C CG1 . VAL 58 58 ? A 6.80778 -0.40762 -1.46049 1 1 A VAL 99.000 1 +ATOM 452 C CG2 . VAL 58 58 ? A 4.77433 0.29578 -0.21123 1 1 A VAL 99.000 1 +ATOM 453 N N . ALA 59 59 ? A 4.74130 3.42608 -2.12278 1 1 A ALA 98.990 1 +ATOM 454 C CA . ALA 59 59 ? A 3.51582 4.18142 -2.23012 1 1 A ALA 98.990 1 +ATOM 455 C C . ALA 59 59 ? A 2.47256 3.29114 -2.89125 1 1 A ALA 98.990 1 +ATOM 456 O O . ALA 59 59 ? A 2.82368 2.47763 -3.75204 1 1 A ALA 98.990 1 +ATOM 457 C CB . ALA 59 59 ? A 3.71583 5.46022 -3.03176 1 1 A ALA 98.990 1 +ATOM 458 N N . LEU 60 60 ? A 1.23571 3.42933 -2.49068 1 1 A LEU 98.990 1 +ATOM 459 C CA . LEU 60 60 ? A 0.15912 2.62327 -3.03215 1 1 A LEU 98.990 1 +ATOM 460 C C . LEU 60 60 ? A -0.84081 3.50797 -3.74623 1 1 A LEU 98.990 1 +ATOM 461 O O . LEU 60 60 ? A -1.68917 4.14462 -3.11361 1 1 A LEU 98.990 1 +ATOM 462 C CB . LEU 60 60 ? A -0.53318 1.81839 -1.91939 1 1 A LEU 98.990 1 +ATOM 463 C CG . LEU 60 60 ? A 0.34515 0.80330 -1.21177 1 1 A LEU 98.990 1 +ATOM 464 C CD1 . LEU 60 60 ? A -0.36216 0.26566 0.02454 1 1 A LEU 98.990 1 +ATOM 465 C CD2 . LEU 60 60 ? A 0.71386 -0.33432 -2.14968 1 1 A LEU 98.990 1 +ATOM 466 N N . GLY 61 61 ? A -0.72225 3.56140 -5.06823 1 1 A GLY 98.960 1 +ATOM 467 C CA . GLY 61 61 ? A -1.67199 4.27316 -5.88501 1 1 A GLY 98.960 1 +ATOM 468 C C . GLY 61 61 ? A -2.66595 3.29588 -6.47474 1 1 A GLY 98.960 1 +ATOM 469 O O . GLY 61 61 ? A -2.36765 2.10849 -6.62946 1 1 A GLY 98.960 1 +ATOM 470 N N . LEU 62 62 ? A -3.83300 3.79987 -6.83044 1 1 A LEU 98.480 1 +ATOM 471 C CA . LEU 62 62 ? A -4.79281 2.95188 -7.51978 1 1 A LEU 98.480 1 +ATOM 472 C C . LEU 62 62 ? A -4.40888 2.92007 -8.99586 1 1 A LEU 98.480 1 +ATOM 473 O O . LEU 62 62 ? A -4.13708 3.96736 -9.58380 1 1 A LEU 98.480 1 +ATOM 474 C CB . LEU 62 62 ? A -6.21078 3.46766 -7.33642 1 1 A LEU 98.480 1 +ATOM 475 C CG . LEU 62 62 ? A -6.93495 3.04464 -6.06484 1 1 A LEU 98.480 1 +ATOM 476 C CD1 . LEU 62 62 ? A -6.08824 3.24982 -4.81695 1 1 A LEU 98.480 1 +ATOM 477 C CD2 . LEU 62 62 ? A -8.24530 3.78501 -5.93996 1 1 A LEU 98.480 1 +ATOM 478 N N . LYS 63 63 ? A -4.37526 1.75415 -9.60037 1 1 A LYS 98.610 1 +ATOM 479 C CA . LYS 63 63 ? A -3.92501 1.58754 -10.96622 1 1 A LYS 98.610 1 +ATOM 480 C C . LYS 63 63 ? A -4.66356 2.54110 -11.89434 1 1 A LYS 98.610 1 +ATOM 481 O O . LYS 63 63 ? A -5.89663 2.58373 -11.90386 1 1 A LYS 98.610 1 +ATOM 482 C CB . LYS 63 63 ? A -4.13866 0.14857 -11.40660 1 1 A LYS 98.610 1 +ATOM 483 C CG . LYS 63 63 ? A -3.74838 -0.12283 -12.86031 1 1 A LYS 98.610 1 +ATOM 484 C CD . LYS 63 63 ? A -4.11302 -1.54127 -13.28706 1 1 A LYS 98.610 1 +ATOM 485 C CE . LYS 63 63 ? A -3.92531 -1.77844 -14.76051 1 1 A LYS 98.610 1 +ATOM 486 N NZ . LYS 63 63 ? A -2.49928 -1.61052 -15.16834 1 1 A LYS 98.610 1 +ATOM 487 N N . GLU 64 64 ? A -3.91938 3.29257 -12.66552 1 1 A GLU 95.440 1 +ATOM 488 C CA . GLU 64 64 ? A -4.39925 4.23400 -13.66570 1 1 A GLU 95.440 1 +ATOM 489 C C . GLU 64 64 ? A -5.43767 5.22508 -13.13341 1 1 A GLU 95.440 1 +ATOM 490 O O . GLU 64 64 ? A -6.39403 5.58455 -13.79844 1 1 A GLU 95.440 1 +ATOM 491 C CB . GLU 64 64 ? A -4.87937 3.49772 -14.91271 1 1 A GLU 95.440 1 +ATOM 492 C CG . GLU 64 64 ? A -3.72116 2.72959 -15.57057 1 1 A GLU 95.440 1 +ATOM 493 C CD . GLU 64 64 ? A -4.12068 1.78392 -16.66812 1 1 A GLU 95.440 1 +ATOM 494 O OE1 . GLU 64 64 ? A -5.30663 1.37863 -16.75435 1 1 A GLU 95.440 1 +ATOM 495 O OE2 . GLU 64 64 ? A -3.24660 1.40527 -17.46250 1 1 A GLU 95.440 1 +ATOM 496 N N . LYS 65 65 ? A -5.21669 5.64850 -11.90492 1 1 A LYS 97.220 1 +ATOM 497 C CA . LYS 65 65 ? A -5.98416 6.69888 -11.26819 1 1 A LYS 97.220 1 +ATOM 498 C C . LYS 65 65 ? A -5.01570 7.62084 -10.53833 1 1 A LYS 97.220 1 +ATOM 499 O O . LYS 65 65 ? A -3.94811 7.18176 -10.10230 1 1 A LYS 97.220 1 +ATOM 500 C CB . LYS 65 65 ? A -6.99283 6.11645 -10.28194 1 1 A LYS 97.220 1 +ATOM 501 C CG . LYS 65 65 ? A -8.14104 5.39574 -10.94866 1 1 A LYS 97.220 1 +ATOM 502 C CD . LYS 65 65 ? A -9.15507 4.86219 -9.94826 1 1 A LYS 97.220 1 +ATOM 503 C CE . LYS 65 65 ? A -10.35246 4.29915 -10.66459 1 1 A LYS 97.220 1 +ATOM 504 N NZ . LYS 65 65 ? A -11.07128 5.31236 -11.42546 1 1 A LYS 97.220 1 +ATOM 505 N N . ASN 66 66 ? A -5.38579 8.85985 -10.41464 1 1 A ASN 97.530 1 +ATOM 506 C CA . ASN 66 66 ? A -4.53761 9.77901 -9.67973 1 1 A ASN 97.530 1 +ATOM 507 C C . ASN 66 66 ? A -4.90535 9.80422 -8.19717 1 1 A ASN 97.530 1 +ATOM 508 O O . ASN 66 66 ? A -5.02813 10.87251 -7.59844 1 1 A ASN 97.530 1 +ATOM 509 C CB . ASN 66 66 ? A -4.58594 11.16234 -10.31281 1 1 A ASN 97.530 1 +ATOM 510 C CG . ASN 66 66 ? A -5.95720 11.78571 -10.29777 1 1 A ASN 97.530 1 +ATOM 511 O OD1 . ASN 66 66 ? A -6.95320 11.08324 -10.41374 1 1 A ASN 97.530 1 +ATOM 512 N ND2 . ASN 66 66 ? A -6.00251 13.08099 -10.19783 1 1 A ASN 97.530 1 +ATOM 513 N N . LEU 67 67 ? A -5.07918 8.64671 -7.63454 1 1 A LEU 98.330 1 +ATOM 514 C CA . LEU 67 67 ? A -5.43203 8.46194 -6.23898 1 1 A LEU 98.330 1 +ATOM 515 C C . LEU 67 67 ? A -4.38796 7.60047 -5.54664 1 1 A LEU 98.330 1 +ATOM 516 O O . LEU 67 67 ? A -3.97336 6.57835 -6.08871 1 1 A LEU 98.330 1 +ATOM 517 C CB . LEU 67 67 ? A -6.79442 7.77034 -6.10138 1 1 A LEU 98.330 1 +ATOM 518 C CG . LEU 67 67 ? A -8.01593 8.58838 -6.42756 1 1 A LEU 98.330 1 +ATOM 519 C CD1 . LEU 67 67 ? A -9.23833 7.68302 -6.49692 1 1 A LEU 98.330 1 +ATOM 520 C CD2 . LEU 67 67 ? A -8.21495 9.68771 -5.40044 1 1 A LEU 98.330 1 +ATOM 521 N N . TYR 68 68 ? A -3.97118 8.02731 -4.34525 1 1 A TYR 98.940 1 +ATOM 522 C CA . TYR 68 68 ? A -3.01986 7.29895 -3.52813 1 1 A TYR 98.940 1 +ATOM 523 C C . TYR 68 68 ? A -3.53426 7.15836 -2.10952 1 1 A TYR 98.940 1 +ATOM 524 O O . TYR 68 68 ? A -4.21699 8.05296 -1.60397 1 1 A TYR 98.940 1 +ATOM 525 C CB . TYR 68 68 ? A -1.66778 8.01531 -3.50938 1 1 A TYR 98.940 1 +ATOM 526 C CG . TYR 68 68 ? A -0.89654 7.89325 -4.79204 1 1 A TYR 98.940 1 +ATOM 527 C CD1 . TYR 68 68 ? A -1.20828 8.69953 -5.86532 1 1 A TYR 98.940 1 +ATOM 528 C CD2 . TYR 68 68 ? A 0.10529 6.95279 -4.92197 1 1 A TYR 98.940 1 +ATOM 529 C CE1 . TYR 68 68 ? A -0.52052 8.57597 -7.05871 1 1 A TYR 98.940 1 +ATOM 530 C CE2 . TYR 68 68 ? A 0.80020 6.82275 -6.11070 1 1 A TYR 98.940 1 +ATOM 531 C CZ . TYR 68 68 ? A 0.48395 7.64501 -7.18346 1 1 A TYR 98.940 1 +ATOM 532 O OH . TYR 68 68 ? A 1.17261 7.52045 -8.36311 1 1 A TYR 98.940 1 +ATOM 533 N N . LEU 69 69 ? A -3.18832 6.03983 -1.48090 1 1 A LEU 98.910 1 +ATOM 534 C CA . LEU 69 69 ? A -3.43154 5.92447 -0.06268 1 1 A LEU 98.910 1 +ATOM 535 C C . LEU 69 69 ? A -2.50517 6.90206 0.64851 1 1 A LEU 98.910 1 +ATOM 536 O O . LEU 69 69 ? A -1.32251 7.00856 0.29938 1 1 A LEU 98.910 1 +ATOM 537 C CB . LEU 69 69 ? A -3.19007 4.50060 0.43575 1 1 A LEU 98.910 1 +ATOM 538 C CG . LEU 69 69 ? A -4.22601 3.47746 0.00938 1 1 A LEU 98.910 1 +ATOM 539 C CD1 . LEU 69 69 ? A -3.80942 2.08707 0.46265 1 1 A LEU 98.910 1 +ATOM 540 C CD2 . LEU 69 69 ? A -5.58967 3.80967 0.56342 1 1 A LEU 98.910 1 +ATOM 541 N N . SER 70 70 ? A -3.05847 7.61183 1.61092 1 1 A SER 97.980 1 +ATOM 542 C CA . SER 70 70 ? A -2.34753 8.66773 2.31295 1 1 A SER 97.980 1 +ATOM 543 C C . SER 70 70 ? A -2.66185 8.60607 3.79930 1 1 A SER 97.980 1 +ATOM 544 O O . SER 70 70 ? A -3.77781 8.23106 4.18180 1 1 A SER 97.980 1 +ATOM 545 C CB . SER 70 70 ? A -2.79051 10.01535 1.73130 1 1 A SER 97.980 1 +ATOM 546 O OG . SER 70 70 ? A -2.30609 11.10743 2.48126 1 1 A SER 97.980 1 +ATOM 547 N N . CYS 71 71 ? A -1.73317 9.01167 4.64647 1 1 A CYS 98.970 1 +ATOM 548 C CA . CYS 71 71 ? A -1.90861 9.04610 6.08624 1 1 A CYS 98.970 1 +ATOM 549 C C . CYS 71 71 ? A -1.82491 10.48426 6.55899 1 1 A CYS 98.970 1 +ATOM 550 O O . CYS 71 71 ? A -0.81139 11.15484 6.32542 1 1 A CYS 98.970 1 +ATOM 551 C CB . CYS 71 71 ? A -0.84808 8.20086 6.78159 1 1 A CYS 98.970 1 +ATOM 552 S SG . CYS 71 71 ? A -0.84009 6.47822 6.23384 1 1 A CYS 98.970 1 +ATOM 553 N N . VAL 72 72 ? A -2.88111 10.95530 7.20784 1 1 A VAL 98.750 1 +ATOM 554 C CA . VAL 72 72 ? A -2.96458 12.32457 7.69261 1 1 A VAL 98.750 1 +ATOM 555 C C . VAL 72 72 ? A -3.58895 12.33707 9.08470 1 1 A VAL 98.750 1 +ATOM 556 O O . VAL 72 72 ? A -4.15433 11.32502 9.53050 1 1 A VAL 98.750 1 +ATOM 557 C CB . VAL 72 72 ? A -3.78595 13.22655 6.74283 1 1 A VAL 98.750 1 +ATOM 558 C CG1 . VAL 72 72 ? A -3.15719 13.28718 5.37131 1 1 A VAL 98.750 1 +ATOM 559 C CG2 . VAL 72 72 ? A -5.23391 12.74383 6.65152 1 1 A VAL 98.750 1 +ATOM 560 N N . LEU 73 73 ? A -3.49437 13.49182 9.74598 1 1 A LEU 98.880 1 +ATOM 561 C CA . LEU 73 73 ? A -4.24650 13.67855 10.96920 1 1 A LEU 98.880 1 +ATOM 562 C C . LEU 73 73 ? A -5.63640 14.18436 10.62565 1 1 A LEU 98.880 1 +ATOM 563 O O . LEU 73 73 ? A -5.77001 15.12948 9.85802 1 1 A LEU 98.880 1 +ATOM 564 C CB . LEU 73 73 ? A -3.55836 14.66966 11.89907 1 1 A LEU 98.880 1 +ATOM 565 C CG . LEU 73 73 ? A -2.26478 14.20695 12.54431 1 1 A LEU 98.880 1 +ATOM 566 C CD1 . LEU 73 73 ? A -1.65116 15.31377 13.36146 1 1 A LEU 98.880 1 +ATOM 567 C CD2 . LEU 73 73 ? A -2.51313 12.99296 13.41890 1 1 A LEU 98.880 1 +ATOM 568 N N . LYS 74 74 ? A -6.63647 13.53452 11.13673 1 1 A LYS 97.260 1 +ATOM 569 C CA . LYS 74 74 ? A -7.99836 13.98185 10.97055 1 1 A LYS 97.260 1 +ATOM 570 C C . LYS 74 74 ? A -8.68792 13.92732 12.32305 1 1 A LYS 97.260 1 +ATOM 571 O O . LYS 74 74 ? A -8.72511 12.86930 12.96538 1 1 A LYS 97.260 1 +ATOM 572 C CB . LYS 74 74 ? A -8.72959 13.10177 9.96141 1 1 A LYS 97.260 1 +ATOM 573 C CG . LYS 74 74 ? A -10.11597 13.62154 9.61113 1 1 A LYS 97.260 1 +ATOM 574 C CD . LYS 74 74 ? A -10.69524 12.89519 8.41273 1 1 A LYS 97.260 1 +ATOM 575 C CE . LYS 74 74 ? A -11.92783 13.60094 7.90471 1 1 A LYS 97.260 1 +ATOM 576 N NZ . LYS 74 74 ? A -12.36298 13.06039 6.57633 1 1 A LYS 97.260 1 +ATOM 577 N N . ASP 75 75 ? A -9.20039 15.05864 12.71170 1 1 A ASP 98.510 1 +ATOM 578 C CA . ASP 75 75 ? A -9.75497 15.15001 14.05017 1 1 A ASP 98.510 1 +ATOM 579 C C . ASP 75 75 ? A -8.76089 14.60236 15.07429 1 1 A ASP 98.510 1 +ATOM 580 O O . ASP 75 75 ? A -9.11037 13.82246 15.95061 1 1 A ASP 98.510 1 +ATOM 581 C CB . ASP 75 75 ? A -11.11269 14.41853 14.11924 1 1 A ASP 98.510 1 +ATOM 582 C CG . ASP 75 75 ? A -11.90564 14.74325 15.36317 1 1 A ASP 98.510 1 +ATOM 583 O OD1 . ASP 75 75 ? A -11.91650 15.91998 15.75262 1 1 A ASP 98.510 1 +ATOM 584 O OD2 . ASP 75 75 ? A -12.50838 13.81424 15.93256 1 1 A ASP 98.510 1 +ATOM 585 N N . ASP 76 76 ? A -7.48937 15.01202 14.90441 1 1 A ASP 98.650 1 +ATOM 586 C CA . ASP 76 76 ? A -6.37432 14.72949 15.79329 1 1 A ASP 98.650 1 +ATOM 587 C C . ASP 76 76 ? A -6.02110 13.24892 15.88920 1 1 A ASP 98.650 1 +ATOM 588 O O . ASP 76 76 ? A -5.43787 12.79394 16.89104 1 1 A ASP 98.650 1 +ATOM 589 C CB . ASP 76 76 ? A -6.62453 15.30979 17.19612 1 1 A ASP 98.650 1 +ATOM 590 C CG . ASP 76 76 ? A -6.87528 16.79888 17.15165 1 1 A ASP 98.650 1 +ATOM 591 O OD1 . ASP 76 76 ? A -6.02775 17.50804 16.55741 1 1 A ASP 98.650 1 +ATOM 592 O OD2 . ASP 76 76 ? A -7.90383 17.26050 17.67107 1 1 A ASP 98.650 1 +ATOM 593 N N . LYS 77 77 ? A -6.33703 12.45793 14.86975 1 1 A LYS 98.250 1 +ATOM 594 C CA . LYS 77 77 ? A -6.05296 11.03274 14.84988 1 1 A LYS 98.250 1 +ATOM 595 C C . LYS 77 77 ? A -5.40919 10.65640 13.52177 1 1 A LYS 98.250 1 +ATOM 596 O O . LYS 77 77 ? A -5.86536 11.12156 12.46945 1 1 A LYS 98.250 1 +ATOM 597 C CB . LYS 77 77 ? A -7.35356 10.24736 15.04360 1 1 A LYS 98.250 1 +ATOM 598 C CG . LYS 77 77 ? A -7.17746 8.74125 15.04417 1 1 A LYS 98.250 1 +ATOM 599 C CD . LYS 77 77 ? A -8.53094 8.02765 15.11254 1 1 A LYS 98.250 1 +ATOM 600 C CE . LYS 77 77 ? A -8.39672 6.54791 14.89664 1 1 A LYS 98.250 1 +ATOM 601 N NZ . LYS 77 77 ? A -7.70077 5.89802 16.05517 1 1 A LYS 98.250 1 +ATOM 602 N N . PRO 78 78 ? A -4.36246 9.84922 13.55225 1 1 A PRO 98.830 1 +ATOM 603 C CA . PRO 78 78 ? A -3.83115 9.31724 12.29388 1 1 A PRO 98.830 1 +ATOM 604 C C . PRO 78 78 ? A -4.91399 8.54338 11.55028 1 1 A PRO 98.830 1 +ATOM 605 O O . PRO 78 78 ? A -5.54039 7.65074 12.12986 1 1 A PRO 98.830 1 +ATOM 606 C CB . PRO 78 78 ? A -2.70859 8.38181 12.72932 1 1 A PRO 98.830 1 +ATOM 607 C CG . PRO 78 78 ? A -2.28022 8.92309 14.06902 1 1 A PRO 98.830 1 +ATOM 608 C CD . PRO 78 78 ? A -3.57202 9.35886 14.69979 1 1 A PRO 98.830 1 +ATOM 609 N N . THR 79 79 ? A -5.16618 8.90919 10.28651 1 1 A THR 97.560 1 +ATOM 610 C CA . THR 79 79 ? A -6.19597 8.24537 9.50046 1 1 A THR 97.560 1 +ATOM 611 C C . THR 79 79 ? A -5.67130 7.93829 8.10909 1 1 A THR 97.560 1 +ATOM 612 O O . THR 79 79 ? A -4.77524 8.62352 7.60001 1 1 A THR 97.560 1 +ATOM 613 C CB . THR 79 79 ? A -7.49414 9.06585 9.39249 1 1 A THR 97.560 1 +ATOM 614 O OG1 . THR 79 79 ? A -7.26167 10.23741 8.63325 1 1 A THR 97.560 1 +ATOM 615 C CG2 . THR 79 79 ? A -8.05238 9.43708 10.75124 1 1 A THR 97.560 1 +ATOM 616 N N . LEU 80 80 ? A -6.24617 6.92127 7.54196 1 1 A LEU 98.580 1 +ATOM 617 C CA . LEU 80 80 ? A -5.97701 6.53438 6.16489 1 1 A LEU 98.580 1 +ATOM 618 C C . LEU 80 80 ? A -6.98228 7.21464 5.25520 1 1 A LEU 98.580 1 +ATOM 619 O O . LEU 80 80 ? A -8.17974 7.25274 5.57263 1 1 A LEU 98.580 1 +ATOM 620 C CB . LEU 80 80 ? A -6.09683 5.00618 6.03616 1 1 A LEU 98.580 1 +ATOM 621 C CG . LEU 80 80 ? A -5.69168 4.39143 4.70623 1 1 A LEU 98.580 1 +ATOM 622 C CD1 . LEU 80 80 ? A -4.19208 4.47160 4.50353 1 1 A LEU 98.580 1 +ATOM 623 C CD2 . LEU 80 80 ? A -6.13742 2.94012 4.66194 1 1 A LEU 98.580 1 +ATOM 624 N N . GLN 81 81 ? A -6.54051 7.75716 4.16776 1 1 A GLN 98.040 1 +ATOM 625 C CA . GLN 81 81 ? A -7.43652 8.34825 3.18508 1 1 A GLN 98.040 1 +ATOM 626 C C . GLN 81 81 ? A -6.96528 8.00187 1.77841 1 1 A GLN 98.040 1 +ATOM 627 O O . GLN 81 81 ? A -5.81027 7.59990 1.58059 1 1 A GLN 98.040 1 +ATOM 628 C CB . GLN 81 81 ? A -7.53736 9.85828 3.37683 1 1 A GLN 98.040 1 +ATOM 629 C CG . GLN 81 81 ? A -6.26350 10.61527 3.02308 1 1 A GLN 98.040 1 +ATOM 630 C CD . GLN 81 81 ? A -6.41733 12.12590 3.19847 1 1 A GLN 98.040 1 +ATOM 631 O OE1 . GLN 81 81 ? A -7.34027 12.59066 3.84934 1 1 A GLN 98.040 1 +ATOM 632 N NE2 . GLN 81 81 ? A -5.48294 12.87401 2.62854 1 1 A GLN 98.040 1 +ATOM 633 N N . LEU 82 82 ? A -7.84690 8.14400 0.82430 1 1 A LEU 98.370 1 +ATOM 634 C CA . LEU 82 82 ? A -7.48735 8.17342 -0.57984 1 1 A LEU 98.370 1 +ATOM 635 C C . LEU 82 82 ? A -7.37410 9.63424 -0.97619 1 1 A LEU 98.370 1 +ATOM 636 O O . LEU 82 82 ? A -8.29864 10.40797 -0.72398 1 1 A LEU 98.370 1 +ATOM 637 C CB . LEU 82 82 ? A -8.51111 7.45490 -1.45470 1 1 A LEU 98.370 1 +ATOM 638 C CG . LEU 82 82 ? A -8.39221 5.94340 -1.44661 1 1 A LEU 98.370 1 +ATOM 639 C CD1 . LEU 82 82 ? A -9.60673 5.31024 -2.12205 1 1 A LEU 98.370 1 +ATOM 640 C CD2 . LEU 82 82 ? A -7.12744 5.49828 -2.15292 1 1 A LEU 98.370 1 +ATOM 641 N N . GLU 83 83 ? A -6.26359 10.02588 -1.53132 1 1 A GLU 98.640 1 +ATOM 642 C CA . GLU 83 83 ? A -5.97394 11.41220 -1.84321 1 1 A GLU 98.640 1 +ATOM 643 C C . GLU 83 83 ? A -5.72568 11.58396 -3.32881 1 1 A GLU 98.640 1 +ATOM 644 O O . GLU 83 83 ? A -5.01112 10.78550 -3.95132 1 1 A GLU 98.640 1 +ATOM 645 C CB . GLU 83 83 ? A -4.73735 11.87161 -1.06328 1 1 A GLU 98.640 1 +ATOM 646 C CG . GLU 83 83 ? A -4.33940 13.31025 -1.31473 1 1 A GLU 98.640 1 +ATOM 647 C CD . GLU 83 83 ? A -3.24874 13.79851 -0.34800 1 1 A GLU 98.640 1 +ATOM 648 O OE1 . GLU 83 83 ? A -3.06878 13.21411 0.71304 1 1 A GLU 98.640 1 +ATOM 649 O OE2 . GLU 83 83 ? A -2.58006 14.78455 -0.71225 1 1 A GLU 98.640 1 +ATOM 650 N N . SER 84 84 ? A -6.34993 12.61901 -3.89135 1 1 A SER 98.110 1 +ATOM 651 C CA . SER 84 84 ? A -6.13826 12.96705 -5.28676 1 1 A SER 98.110 1 +ATOM 652 C C . SER 84 84 ? A -4.80633 13.68283 -5.45443 1 1 A SER 98.110 1 +ATOM 653 O O . SER 84 84 ? A -4.40534 14.45813 -4.56475 1 1 A SER 98.110 1 +ATOM 654 C CB . SER 84 84 ? A -7.24431 13.87463 -5.80164 1 1 A SER 98.110 1 +ATOM 655 O OG . SER 84 84 ? A -8.49623 13.20541 -5.77619 1 1 A SER 98.110 1 +ATOM 656 N N . VAL 85 85 ? A -4.12451 13.44651 -6.54974 1 1 A VAL 98.880 1 +ATOM 657 C CA . VAL 85 85 ? A -2.86300 14.10631 -6.86437 1 1 A VAL 98.880 1 +ATOM 658 C C . VAL 85 85 ? A -2.87039 14.57143 -8.31287 1 1 A VAL 98.880 1 +ATOM 659 O O . VAL 85 85 ? A -3.68338 14.09064 -9.11802 1 1 A VAL 98.880 1 +ATOM 660 C CB . VAL 85 85 ? A -1.64375 13.19169 -6.62415 1 1 A VAL 98.880 1 +ATOM 661 C CG1 . VAL 85 85 ? A -1.60818 12.69753 -5.17198 1 1 A VAL 98.880 1 +ATOM 662 C CG2 . VAL 85 85 ? A -1.64426 12.00866 -7.57993 1 1 A VAL 98.880 1 +ATOM 663 N N . ASP 86 86 ? A -1.96423 15.48619 -8.64790 1 1 A ASP 98.850 1 +ATOM 664 C CA . ASP 86 86 ? A -1.80179 15.94300 -10.02602 1 1 A ASP 98.850 1 +ATOM 665 C C . ASP 86 86 ? A -1.17933 14.81833 -10.84723 1 1 A ASP 98.850 1 +ATOM 666 O O . ASP 86 86 ? A -0.02015 14.42531 -10.59978 1 1 A ASP 98.850 1 +ATOM 667 C CB . ASP 86 86 ? A -0.89734 17.18154 -10.05480 1 1 A ASP 98.850 1 +ATOM 668 C CG . ASP 86 86 ? A -0.73981 17.79549 -11.43248 1 1 A ASP 98.850 1 +ATOM 669 O OD1 . ASP 86 86 ? A -0.96798 17.10308 -12.43239 1 1 A ASP 98.850 1 +ATOM 670 O OD2 . ASP 86 86 ? A -0.36992 18.99940 -11.47950 1 1 A ASP 98.850 1 +ATOM 671 N N . PRO 87 87 ? A -1.91400 14.28538 -11.81650 1 1 A PRO 97.490 1 +ATOM 672 C CA . PRO 87 87 ? A -1.39535 13.14891 -12.59424 1 1 A PRO 97.490 1 +ATOM 673 C C . PRO 87 87 ? A -0.14858 13.47234 -13.40135 1 1 A PRO 97.490 1 +ATOM 674 O O . PRO 87 87 ? A 0.52318 12.54496 -13.86819 1 1 A PRO 97.490 1 +ATOM 675 C CB . PRO 87 87 ? A -2.55632 12.77085 -13.50200 1 1 A PRO 97.490 1 +ATOM 676 C CG . PRO 87 87 ? A -3.34407 14.03918 -13.62324 1 1 A PRO 97.490 1 +ATOM 677 C CD . PRO 87 87 ? A -3.21358 14.73295 -12.29822 1 1 A PRO 97.490 1 +ATOM 678 N N . LYS 88 88 ? A 0.16390 14.73736 -13.56999 1 1 A LYS 98.390 1 +ATOM 679 C CA . LYS 88 88 ? A 1.37025 15.13786 -14.26338 1 1 A LYS 98.390 1 +ATOM 680 C C . LYS 88 88 ? A 2.63065 14.84684 -13.45205 1 1 A LYS 98.390 1 +ATOM 681 O O . LYS 88 88 ? A 3.70909 14.68284 -14.02282 1 1 A LYS 98.390 1 +ATOM 682 C CB . LYS 88 88 ? A 1.30385 16.63070 -14.59123 1 1 A LYS 98.390 1 +ATOM 683 C CG . LYS 88 88 ? A 2.50957 17.17257 -15.33059 1 1 A LYS 98.390 1 +ATOM 684 C CD . LYS 88 88 ? A 2.38600 18.66055 -15.58865 1 1 A LYS 98.390 1 +ATOM 685 C CE . LYS 88 88 ? A 3.62097 19.23315 -16.22997 1 1 A LYS 98.390 1 +ATOM 686 N NZ . LYS 88 88 ? A 3.49338 20.65576 -16.60077 1 1 A LYS 98.390 1 +ATOM 687 N N . ASN 89 89 ? A 2.47883 14.77192 -12.10798 1 1 A ASN 98.700 1 +ATOM 688 C CA . ASN 89 89 ? A 3.62933 14.66764 -11.21880 1 1 A ASN 98.700 1 +ATOM 689 C C . ASN 89 89 ? A 3.77995 13.33499 -10.50110 1 1 A ASN 98.700 1 +ATOM 690 O O . ASN 89 89 ? A 4.74799 13.15420 -9.75803 1 1 A ASN 98.700 1 +ATOM 691 C CB . ASN 89 89 ? A 3.60264 15.79173 -10.18883 1 1 A ASN 98.700 1 +ATOM 692 C CG . ASN 89 89 ? A 3.65737 17.15948 -10.81207 1 1 A ASN 98.700 1 +ATOM 693 O OD1 . ASN 89 89 ? A 4.37098 17.36703 -11.78992 1 1 A ASN 98.700 1 +ATOM 694 N ND2 . ASN 89 89 ? A 2.92226 18.09063 -10.24373 1 1 A ASN 98.700 1 +ATOM 695 N N . TYR 90 90 ? A 2.85469 12.38631 -10.70788 1 1 A TYR 98.890 1 +ATOM 696 C CA . TYR 90 90 ? A 2.86217 11.12870 -9.97968 1 1 A TYR 98.890 1 +ATOM 697 C C . TYR 90 90 ? A 2.77042 9.94706 -10.90607 1 1 A TYR 98.890 1 +ATOM 698 O O . TYR 90 90 ? A 2.16418 10.06623 -11.97427 1 1 A TYR 98.890 1 +ATOM 699 C CB . TYR 90 90 ? A 1.70812 11.10646 -8.95063 1 1 A TYR 98.890 1 +ATOM 700 C CG . TYR 90 90 ? A 1.91977 12.08881 -7.82611 1 1 A TYR 98.890 1 +ATOM 701 C CD1 . TYR 90 90 ? A 1.57959 13.41597 -7.97679 1 1 A TYR 98.890 1 +ATOM 702 C CD2 . TYR 90 90 ? A 2.47656 11.67555 -6.62491 1 1 A TYR 98.890 1 +ATOM 703 C CE1 . TYR 90 90 ? A 1.79728 14.32963 -6.95190 1 1 A TYR 98.890 1 +ATOM 704 C CE2 . TYR 90 90 ? A 2.69472 12.57364 -5.59543 1 1 A TYR 98.890 1 +ATOM 705 C CZ . TYR 90 90 ? A 2.35454 13.92038 -5.76705 1 1 A TYR 98.890 1 +ATOM 706 O OH . TYR 90 90 ? A 2.58317 14.81131 -4.74860 1 1 A TYR 98.890 1 +ATOM 707 N N . PRO 91 91 ? A 3.34067 8.79984 -10.55469 1 1 A PRO 98.680 1 +ATOM 708 C CA . PRO 91 91 ? A 4.13183 8.57424 -9.36301 1 1 A PRO 98.680 1 +ATOM 709 C C . PRO 91 91 ? A 5.50378 9.22249 -9.45189 1 1 A PRO 98.680 1 +ATOM 710 O O . PRO 91 91 ? A 5.97175 9.53283 -10.54822 1 1 A PRO 98.680 1 +ATOM 711 C CB . PRO 91 91 ? A 4.24246 7.04644 -9.30764 1 1 A PRO 98.680 1 +ATOM 712 C CG . PRO 91 91 ? A 4.20895 6.63986 -10.72475 1 1 A PRO 98.680 1 +ATOM 713 C CD . PRO 91 91 ? A 3.25508 7.60084 -11.38568 1 1 A PRO 98.680 1 +ATOM 714 N N . LYS 92 92 ? A 6.16296 9.39404 -8.37259 1 1 A LYS 98.870 1 +ATOM 715 C CA . LYS 92 92 ? A 7.51072 9.94088 -8.32680 1 1 A LYS 98.870 1 +ATOM 716 C C . LYS 92 92 ? A 8.33087 9.19649 -7.29551 1 1 A LYS 98.870 1 +ATOM 717 O O . LYS 92 92 ? A 7.77359 8.56368 -6.38788 1 1 A LYS 98.870 1 +ATOM 718 C CB . LYS 92 92 ? A 7.47427 11.44193 -8.04481 1 1 A LYS 98.870 1 +ATOM 719 C CG . LYS 92 92 ? A 6.86369 11.86243 -6.74694 1 1 A LYS 98.870 1 +ATOM 720 C CD . LYS 92 92 ? A 6.78644 13.39701 -6.65491 1 1 A LYS 98.870 1 +ATOM 721 C CE . LYS 92 92 ? A 6.31162 13.83049 -5.29446 1 1 A LYS 98.870 1 +ATOM 722 N NZ . LYS 92 92 ? A 6.23510 15.30005 -5.19351 1 1 A LYS 98.870 1 +ATOM 723 N N . LYS 93 93 ? A 9.64138 9.23422 -7.44442 1 1 A LYS 98.780 1 +ATOM 724 C CA . LYS 93 93 ? A 10.52264 8.55175 -6.51064 1 1 A LYS 98.780 1 +ATOM 725 C C . LYS 93 93 ? A 10.44095 9.13925 -5.10558 1 1 A LYS 98.780 1 +ATOM 726 O O . LYS 93 93 ? A 10.37436 8.39963 -4.12772 1 1 A LYS 98.780 1 +ATOM 727 C CB . LYS 93 93 ? A 11.95717 8.54747 -7.02910 1 1 A LYS 98.780 1 +ATOM 728 C CG . LYS 93 93 ? A 12.92930 7.74130 -6.20868 1 1 A LYS 98.780 1 +ATOM 729 C CD . LYS 93 93 ? A 12.64717 6.24261 -6.34329 1 1 A LYS 98.780 1 +ATOM 730 C CE . LYS 93 93 ? A 13.66790 5.42109 -5.57328 1 1 A LYS 98.780 1 +ATOM 731 N NZ . LYS 93 93 ? A 13.71432 4.00912 -6.01835 1 1 A LYS 98.780 1 +ATOM 732 N N . LYS 94 94 ? A 10.44546 10.46113 -5.05530 1 1 A LYS 98.850 1 +ATOM 733 C CA . LYS 94 94 ? A 10.39811 11.14169 -3.76681 1 1 A LYS 98.850 1 +ATOM 734 C C . LYS 94 94 ? A 8.95553 11.51447 -3.42768 1 1 A LYS 98.850 1 +ATOM 735 O O . LYS 94 94 ? A 8.53726 12.65890 -3.60872 1 1 A LYS 98.850 1 +ATOM 736 C CB . LYS 94 94 ? A 11.27661 12.38851 -3.79035 1 1 A LYS 98.850 1 +ATOM 737 C CG . LYS 94 94 ? A 12.75073 12.08449 -3.99833 1 1 A LYS 98.850 1 +ATOM 738 C CD . LYS 94 94 ? A 13.60275 13.34875 -4.04000 1 1 A LYS 98.850 1 +ATOM 739 C CE . LYS 94 94 ? A 15.08085 13.01776 -4.22494 1 1 A LYS 98.850 1 +ATOM 740 N NZ . LYS 94 94 ? A 15.93184 14.23032 -4.14787 1 1 A LYS 98.850 1 +ATOM 741 N N . MET 95 95 ? A 8.19613 10.52359 -2.98375 1 1 A MET 98.990 1 +ATOM 742 C CA . MET 95 95 ? A 6.81786 10.73029 -2.55407 1 1 A MET 98.990 1 +ATOM 743 C C . MET 95 95 ? A 6.81638 11.44151 -1.21062 1 1 A MET 98.990 1 +ATOM 744 O O . MET 95 95 ? A 7.69423 11.20560 -0.36893 1 1 A MET 98.990 1 +ATOM 745 C CB . MET 95 95 ? A 6.06900 9.41395 -2.43723 1 1 A MET 98.990 1 +ATOM 746 C CG . MET 95 95 ? A 5.83187 8.72046 -3.76697 1 1 A MET 98.990 1 +ATOM 747 S SD . MET 95 95 ? A 4.59096 9.51353 -4.79161 1 1 A MET 98.990 1 +ATOM 748 C CE . MET 95 95 ? A 3.11562 8.91695 -3.98884 1 1 A MET 98.990 1 +ATOM 749 N N . GLU 96 96 ? A 5.86463 12.30120 -1.01397 1 1 A GLU 98.980 1 +ATOM 750 C CA . GLU 96 96 ? A 5.69028 12.97885 0.26631 1 1 A GLU 98.980 1 +ATOM 751 C C . GLU 96 96 ? A 5.41283 11.94374 1.34949 1 1 A GLU 98.980 1 +ATOM 752 O O . GLU 96 96 ? A 4.78042 10.92502 1.06946 1 1 A GLU 98.980 1 +ATOM 753 C CB . GLU 96 96 ? A 4.55128 14.00427 0.17695 1 1 A GLU 98.980 1 +ATOM 754 C CG . GLU 96 96 ? A 4.84435 15.18381 -0.73941 1 1 A GLU 98.980 1 +ATOM 755 C CD . GLU 96 96 ? A 4.59169 14.95192 -2.20401 1 1 A GLU 98.980 1 +ATOM 756 O OE1 . GLU 96 96 ? A 4.25874 13.84180 -2.61121 1 1 A GLU 98.980 1 +ATOM 757 O OE2 . GLU 96 96 ? A 4.75717 15.92168 -2.96956 1 1 A GLU 98.980 1 +ATOM 758 N N . LYS 97 97 ? A 5.87007 12.19128 2.55118 1 1 A LYS 98.980 1 +ATOM 759 C CA . LYS 97 97 ? A 5.82628 11.20501 3.60707 1 1 A LYS 98.980 1 +ATOM 760 C C . LYS 97 97 ? A 4.44579 10.62502 3.85300 1 1 A LYS 98.980 1 +ATOM 761 O O . LYS 97 97 ? A 4.33289 9.45299 4.18641 1 1 A LYS 98.980 1 +ATOM 762 C CB . LYS 97 97 ? A 6.41520 11.76991 4.91003 1 1 A LYS 98.980 1 +ATOM 763 C CG . LYS 97 97 ? A 6.47994 10.77328 6.04077 1 1 A LYS 98.980 1 +ATOM 764 C CD . LYS 97 97 ? A 7.78645 10.73232 6.82564 1 1 A LYS 98.980 1 +ATOM 765 C CE . LYS 97 97 ? A 9.08703 11.04747 6.23048 1 1 A LYS 98.980 1 +ATOM 766 N NZ . LYS 97 97 ? A 10.01161 11.60588 7.28030 1 1 A LYS 98.980 1 +ATOM 767 N N . ARG 98 98 ? A 3.40862 11.42862 3.72846 1 1 A ARG 98.990 1 +ATOM 768 C CA . ARG 98 98 ? A 2.06162 10.92454 3.97204 1 1 A ARG 98.990 1 +ATOM 769 C C . ARG 98 98 ? A 1.68943 9.78296 3.03870 1 1 A ARG 98.990 1 +ATOM 770 O O . ARG 98 98 ? A 0.77530 9.00495 3.36749 1 1 A ARG 98.990 1 +ATOM 771 C CB . ARG 98 98 ? A 1.04295 12.03484 3.89533 1 1 A ARG 98.990 1 +ATOM 772 C CG . ARG 98 98 ? A 0.87091 12.64569 2.50677 1 1 A ARG 98.990 1 +ATOM 773 C CD . ARG 98 98 ? A -0.10112 13.82285 2.57875 1 1 A ARG 98.990 1 +ATOM 774 N NE . ARG 98 98 ? A -0.30620 14.43524 1.26084 1 1 A ARG 98.990 1 +ATOM 775 C CZ . ARG 98 98 ? A 0.47455 15.35330 0.71836 1 1 A ARG 98.990 1 +ATOM 776 N NH1 . ARG 98 98 ? A 1.56353 15.75122 1.34237 1 1 A ARG 98.990 1 +ATOM 777 N NH2 . ARG 98 98 ? A 0.16917 15.84456 -0.47756 1 1 A ARG 98.990 1 +ATOM 778 N N . PHE 99 99 ? A 2.31922 9.67582 1.88000 1 1 A PHE 99.000 1 +ATOM 779 C CA . PHE 99 99 ? A 2.06013 8.60972 0.91209 1 1 A PHE 99.000 1 +ATOM 780 C C . PHE 99 99 ? A 2.91061 7.36251 1.14466 1 1 A PHE 99.000 1 +ATOM 781 O O . PHE 99 99 ? A 2.66054 6.35298 0.50253 1 1 A PHE 99.000 1 +ATOM 782 C CB . PHE 99 99 ? A 2.30773 9.09659 -0.52048 1 1 A PHE 99.000 1 +ATOM 783 C CG . PHE 99 99 ? A 1.44618 10.24626 -0.95351 1 1 A PHE 99.000 1 +ATOM 784 C CD1 . PHE 99 99 ? A 0.06977 10.10654 -1.00718 1 1 A PHE 99.000 1 +ATOM 785 C CD2 . PHE 99 99 ? A 2.01796 11.43312 -1.35378 1 1 A PHE 99.000 1 +ATOM 786 C CE1 . PHE 99 99 ? A -0.72106 11.16437 -1.43472 1 1 A PHE 99.000 1 +ATOM 787 C CE2 . PHE 99 99 ? A 1.23051 12.49549 -1.78208 1 1 A PHE 99.000 1 +ATOM 788 C CZ . PHE 99 99 ? A -0.12875 12.34985 -1.82250 1 1 A PHE 99.000 1 +ATOM 789 N N . VAL 100 100 ? A 3.88385 7.42169 2.00526 1 1 A VAL 99.000 1 +ATOM 790 C CA . VAL 100 100 ? A 4.86174 6.34666 2.11217 1 1 A VAL 99.000 1 +ATOM 791 C C . VAL 100 100 ? A 4.46045 5.37387 3.20646 1 1 A VAL 99.000 1 +ATOM 792 O O . VAL 100 100 ? A 4.12731 5.76598 4.33487 1 1 A VAL 99.000 1 +ATOM 793 C CB . VAL 100 100 ? A 6.26636 6.91064 2.38837 1 1 A VAL 99.000 1 +ATOM 794 C CG1 . VAL 100 100 ? A 7.28055 5.80283 2.52327 1 1 A VAL 99.000 1 +ATOM 795 C CG2 . VAL 100 100 ? A 6.67826 7.86074 1.28295 1 1 A VAL 99.000 1 +ATOM 796 N N . PHE 101 101 ? A 4.50342 4.09682 2.84532 1 1 A PHE 98.990 1 +ATOM 797 C CA . PHE 101 101 ? A 4.30652 2.99355 3.76835 1 1 A PHE 98.990 1 +ATOM 798 C C . PHE 101 101 ? A 5.56922 2.14408 3.77046 1 1 A PHE 98.990 1 +ATOM 799 O O . PHE 101 101 ? A 6.17687 1.95391 2.72130 1 1 A PHE 98.990 1 +ATOM 800 C CB . PHE 101 101 ? A 3.10802 2.13642 3.35690 1 1 A PHE 98.990 1 +ATOM 801 C CG . PHE 101 101 ? A 1.79431 2.87091 3.39786 1 1 A PHE 98.990 1 +ATOM 802 C CD1 . PHE 101 101 ? A 1.36767 3.60686 2.31200 1 1 A PHE 98.990 1 +ATOM 803 C CD2 . PHE 101 101 ? A 1.00449 2.84162 4.54705 1 1 A PHE 98.990 1 +ATOM 804 C CE1 . PHE 101 101 ? A 0.16730 4.30459 2.34512 1 1 A PHE 98.990 1 +ATOM 805 C CE2 . PHE 101 101 ? A -0.19736 3.53735 4.58834 1 1 A PHE 98.990 1 +ATOM 806 C CZ . PHE 101 101 ? A -0.60509 4.25912 3.47942 1 1 A PHE 98.990 1 +ATOM 807 N N . ASN 102 102 ? A 5.92910 1.66970 4.91291 1 1 A ASN 98.940 1 +ATOM 808 C CA . ASN 102 102 ? A 7.00438 0.68704 5.00344 1 1 A ASN 98.940 1 +ATOM 809 C C . ASN 102 102 ? A 6.38515 -0.69132 4.85108 1 1 A ASN 98.940 1 +ATOM 810 O O . ASN 102 102 ? A 5.62010 -1.10670 5.71718 1 1 A ASN 98.940 1 +ATOM 811 C CB . ASN 102 102 ? A 7.74578 0.81490 6.32175 1 1 A ASN 98.940 1 +ATOM 812 C CG . ASN 102 102 ? A 8.37577 2.18070 6.50094 1 1 A ASN 98.940 1 +ATOM 813 O OD1 . ASN 102 102 ? A 9.10913 2.63296 5.62387 1 1 A ASN 98.940 1 +ATOM 814 N ND2 . ASN 102 102 ? A 8.08233 2.82671 7.61787 1 1 A ASN 98.940 1 +ATOM 815 N N . LYS 103 103 ? A 6.64323 -1.34071 3.73685 1 1 A LYS 98.980 1 +ATOM 816 C CA . LYS 103 103 ? A 6.17134 -2.67988 3.48139 1 1 A LYS 98.980 1 +ATOM 817 C C . LYS 103 103 ? A 7.11814 -3.62849 4.21308 1 1 A LYS 98.980 1 +ATOM 818 O O . LYS 103 103 ? A 8.29482 -3.68169 3.89947 1 1 A LYS 98.980 1 +ATOM 819 C CB . LYS 103 103 ? A 6.16792 -2.96181 1.97073 1 1 A LYS 98.980 1 +ATOM 820 C CG . LYS 103 103 ? A 5.66400 -4.35017 1.60451 1 1 A LYS 98.980 1 +ATOM 821 C CD . LYS 103 103 ? A 5.52126 -4.49697 0.10730 1 1 A LYS 98.980 1 +ATOM 822 C CE . LYS 103 103 ? A 6.85977 -4.49766 -0.59638 1 1 A LYS 98.980 1 +ATOM 823 N NZ . LYS 103 103 ? A 7.61868 -5.72757 -0.29900 1 1 A LYS 98.980 1 +ATOM 824 N N . ILE 104 104 ? A 6.59598 -4.31648 5.22090 1 1 A ILE 98.700 1 +ATOM 825 C CA . ILE 104 104 ? A 7.38621 -5.14030 6.12032 1 1 A ILE 98.700 1 +ATOM 826 C C . ILE 104 104 ? A 6.96281 -6.59020 5.99604 1 1 A ILE 98.700 1 +ATOM 827 O O . ILE 104 104 ? A 5.77217 -6.90708 6.09390 1 1 A ILE 98.700 1 +ATOM 828 C CB . ILE 104 104 ? A 7.20381 -4.66613 7.57167 1 1 A ILE 98.700 1 +ATOM 829 C CG1 . ILE 104 104 ? A 7.57770 -3.19145 7.69898 1 1 A ILE 98.700 1 +ATOM 830 C CG2 . ILE 104 104 ? A 8.02388 -5.52534 8.52719 1 1 A ILE 98.700 1 +ATOM 831 C CD1 . ILE 104 104 ? A 7.08842 -2.53738 8.96327 1 1 A ILE 98.700 1 +ATOM 832 N N . GLU 105 105 ? A 7.91413 -7.49412 5.76038 1 1 A GLU 98.400 1 +ATOM 833 C CA . GLU 105 105 ? A 7.61814 -8.90972 5.69043 1 1 A GLU 98.400 1 +ATOM 834 C C . GLU 105 105 ? A 7.88848 -9.57280 7.04436 1 1 A GLU 98.400 1 +ATOM 835 O O . GLU 105 105 ? A 8.99363 -9.44959 7.57531 1 1 A GLU 98.400 1 +ATOM 836 C CB . GLU 105 105 ? A 8.46143 -9.58431 4.61650 1 1 A GLU 98.400 1 +ATOM 837 C CG . GLU 105 105 ? A 8.12759 -11.07445 4.46489 1 1 A GLU 98.400 1 +ATOM 838 C CD . GLU 105 105 ? A 9.05821 -11.78872 3.49454 1 1 A GLU 98.400 1 +ATOM 839 O OE1 . GLU 105 105 ? A 9.47287 -11.17293 2.49267 1 1 A GLU 98.400 1 +ATOM 840 O OE2 . GLU 105 105 ? A 9.37170 -12.97243 3.73659 1 1 A GLU 98.400 1 +ATOM 841 N N . ILE 106 106 ? A 6.88888 -10.19591 7.55982 1 1 A ILE 96.330 1 +ATOM 842 C CA . ILE 106 106 ? A 7.01309 -10.94230 8.79850 1 1 A ILE 96.330 1 +ATOM 843 C C . ILE 106 106 ? A 6.26001 -12.24804 8.66715 1 1 A ILE 96.330 1 +ATOM 844 O O . ILE 106 106 ? A 5.07254 -12.25048 8.33334 1 1 A ILE 96.330 1 +ATOM 845 C CB . ILE 106 106 ? A 6.46250 -10.13396 9.99448 1 1 A ILE 96.330 1 +ATOM 846 C CG1 . ILE 106 106 ? A 7.28488 -8.86379 10.21239 1 1 A ILE 96.330 1 +ATOM 847 C CG2 . ILE 106 106 ? A 6.46899 -10.99833 11.25934 1 1 A ILE 96.330 1 +ATOM 848 C CD1 . ILE 106 106 ? A 6.71596 -7.93639 11.26091 1 1 A ILE 96.330 1 +ATOM 849 N N . ASN 107 107 ? A 6.94733 -13.35900 8.90579 1 1 A ASN 96.430 1 +ATOM 850 C CA . ASN 107 107 ? A 6.33557 -14.68387 8.84083 1 1 A ASN 96.430 1 +ATOM 851 C C . ASN 107 107 ? A 5.50519 -14.87738 7.58937 1 1 A ASN 96.430 1 +ATOM 852 O O . ASN 107 107 ? A 4.33589 -15.26221 7.63911 1 1 A ASN 96.430 1 +ATOM 853 C CB . ASN 107 107 ? A 5.51179 -14.96578 10.09754 1 1 A ASN 96.430 1 +ATOM 854 C CG . ASN 107 107 ? A 6.35427 -14.91269 11.35365 1 1 A ASN 96.430 1 +ATOM 855 O OD1 . ASN 107 107 ? A 6.03056 -14.18604 12.27804 1 1 A ASN 96.430 1 +ATOM 856 N ND2 . ASN 107 107 ? A 7.41151 -15.68662 11.38068 1 1 A ASN 96.430 1 +ATOM 857 N N . ASN 108 108 ? A 6.12431 -14.57047 6.44712 1 1 A ASN 96.790 1 +ATOM 858 C CA . ASN 108 108 ? A 5.53744 -14.76114 5.11921 1 1 A ASN 96.790 1 +ATOM 859 C C . ASN 108 108 ? A 4.27681 -13.94787 4.88108 1 1 A ASN 96.790 1 +ATOM 860 O O . ASN 108 108 ? A 3.46631 -14.28489 4.03412 1 1 A ASN 96.790 1 +ATOM 861 C CB . ASN 108 108 ? A 5.26087 -16.23935 4.85992 1 1 A ASN 96.790 1 +ATOM 862 C CG . ASN 108 108 ? A 6.49632 -17.09454 5.03269 1 1 A ASN 96.790 1 +ATOM 863 O OD1 . ASN 108 108 ? A 6.69875 -17.65548 6.09779 1 1 A ASN 96.790 1 +ATOM 864 N ND2 . ASN 108 108 ? A 7.31338 -17.14754 4.03173 1 1 A ASN 96.790 1 +ATOM 865 N N . LYS 109 109 ? A 4.06097 -12.89958 5.62223 1 1 A LYS 97.800 1 +ATOM 866 C CA . LYS 109 109 ? A 2.96930 -11.93894 5.45678 1 1 A LYS 97.800 1 +ATOM 867 C C . LYS 109 109 ? A 3.53711 -10.53690 5.31626 1 1 A LYS 97.800 1 +ATOM 868 O O . LYS 109 109 ? A 4.71518 -10.31561 5.58808 1 1 A LYS 97.800 1 +ATOM 869 C CB . LYS 109 109 ? A 2.00429 -11.99799 6.62411 1 1 A LYS 97.800 1 +ATOM 870 C CG . LYS 109 109 ? A 1.39458 -13.37140 6.88452 1 1 A LYS 97.800 1 +ATOM 871 C CD . LYS 109 109 ? A 0.47899 -13.78301 5.75331 1 1 A LYS 97.800 1 +ATOM 872 C CE . LYS 109 109 ? A -0.74840 -12.91429 5.78654 1 1 A LYS 97.800 1 +ATOM 873 N NZ . LYS 109 109 ? A -1.66104 -13.15068 4.64653 1 1 A LYS 97.800 1 +ATOM 874 N N . LEU 110 110 ? A 2.70407 -9.60908 4.90390 1 1 A LEU 98.840 1 +ATOM 875 C CA . LEU 110 110 ? A 3.11967 -8.21814 4.75376 1 1 A LEU 98.840 1 +ATOM 876 C C . LEU 110 110 ? A 2.33208 -7.33999 5.71624 1 1 A LEU 98.840 1 +ATOM 877 O O . LEU 110 110 ? A 1.12352 -7.52521 5.86876 1 1 A LEU 98.840 1 +ATOM 878 C CB . LEU 110 110 ? A 2.88680 -7.71583 3.33136 1 1 A LEU 98.840 1 +ATOM 879 C CG . LEU 110 110 ? A 3.66539 -8.42226 2.24044 1 1 A LEU 98.840 1 +ATOM 880 C CD1 . LEU 110 110 ? A 3.18310 -7.92915 0.87703 1 1 A LEU 98.840 1 +ATOM 881 C CD2 . LEU 110 110 ? A 5.15501 -8.20868 2.40768 1 1 A LEU 98.840 1 +ATOM 882 N N . GLU 111 111 ? A 2.99149 -6.38217 6.27490 1 1 A GLU 98.630 1 +ATOM 883 C CA . GLU 111 111 ? A 2.36589 -5.28496 6.99415 1 1 A GLU 98.630 1 +ATOM 884 C C . GLU 111 111 ? A 2.71726 -4.01689 6.26623 1 1 A GLU 98.630 1 +ATOM 885 O O . GLU 111 111 ? A 3.78841 -3.93205 5.63433 1 1 A GLU 98.630 1 +ATOM 886 C CB . GLU 111 111 ? A 2.87546 -5.19945 8.42652 1 1 A GLU 98.630 1 +ATOM 887 C CG . GLU 111 111 ? A 2.60662 -6.43085 9.27242 1 1 A GLU 98.630 1 +ATOM 888 C CD . GLU 111 111 ? A 3.31672 -6.33227 10.63093 1 1 A GLU 98.630 1 +ATOM 889 O OE1 . GLU 111 111 ? A 4.41545 -5.68375 10.70287 1 1 A GLU 98.630 1 +ATOM 890 O OE2 . GLU 111 111 ? A 2.78070 -6.90078 11.58633 1 1 A GLU 98.630 1 +ATOM 891 N N . PHE 112 112 ? A 1.85935 -3.03343 6.30247 1 1 A PHE 98.970 1 +ATOM 892 C CA . PHE 112 112 ? A 2.11038 -1.73077 5.70687 1 1 A PHE 98.970 1 +ATOM 893 C C . PHE 112 112 ? A 2.01294 -0.66969 6.79146 1 1 A PHE 98.970 1 +ATOM 894 O O . PHE 112 112 ? A 0.91328 -0.25889 7.15104 1 1 A PHE 98.970 1 +ATOM 895 C CB . PHE 112 112 ? A 1.12116 -1.44369 4.56829 1 1 A PHE 98.970 1 +ATOM 896 C CG . PHE 112 112 ? A 1.29502 -2.37146 3.40735 1 1 A PHE 98.970 1 +ATOM 897 C CD1 . PHE 112 112 ? A 2.20968 -2.05836 2.40542 1 1 A PHE 98.970 1 +ATOM 898 C CD2 . PHE 112 112 ? A 0.56696 -3.54068 3.31919 1 1 A PHE 98.970 1 +ATOM 899 C CE1 . PHE 112 112 ? A 2.40046 -2.92419 1.33062 1 1 A PHE 98.970 1 +ATOM 900 C CE2 . PHE 112 112 ? A 0.75637 -4.40847 2.24489 1 1 A PHE 98.970 1 +ATOM 901 C CZ . PHE 112 112 ? A 1.66934 -4.09243 1.25463 1 1 A PHE 98.970 1 +ATOM 902 N N . GLU 113 113 ? A 3.16111 -0.26499 7.30382 1 1 A GLU 98.820 1 +ATOM 903 C CA . GLU 113 113 ? A 3.25025 0.72663 8.36364 1 1 A GLU 98.820 1 +ATOM 904 C C . GLU 113 113 ? A 3.35902 2.12226 7.76567 1 1 A GLU 98.820 1 +ATOM 905 O O . GLU 113 113 ? A 4.11768 2.31810 6.80174 1 1 A GLU 98.820 1 +ATOM 906 C CB . GLU 113 113 ? A 4.47239 0.43004 9.21978 1 1 A GLU 98.820 1 +ATOM 907 C CG . GLU 113 113 ? A 4.66059 1.38902 10.37818 1 1 A GLU 98.820 1 +ATOM 908 C CD . GLU 113 113 ? A 6.09046 1.40794 10.90775 1 1 A GLU 98.820 1 +ATOM 909 O OE1 . GLU 113 113 ? A 7.02909 1.37929 10.06548 1 1 A GLU 98.820 1 +ATOM 910 O OE2 . GLU 113 113 ? A 6.24882 1.48565 12.13875 1 1 A GLU 98.820 1 +ATOM 911 N N . SER 114 114 ? A 2.63275 3.04032 8.30473 1 1 A SER 98.960 1 +ATOM 912 C CA . SER 114 114 ? A 2.75148 4.42532 7.87538 1 1 A SER 98.960 1 +ATOM 913 C C . SER 114 114 ? A 4.15067 4.94810 8.18876 1 1 A SER 98.960 1 +ATOM 914 O O . SER 114 114 ? A 4.59035 4.86288 9.34167 1 1 A SER 98.960 1 +ATOM 915 C CB . SER 114 114 ? A 1.69250 5.27068 8.59207 1 1 A SER 98.960 1 +ATOM 916 O OG . SER 114 114 ? A 1.91527 6.64863 8.33601 1 1 A SER 98.960 1 +ATOM 917 N N . ALA 115 115 ? A 4.83020 5.49468 7.16556 1 1 A ALA 98.950 1 +ATOM 918 C CA . ALA 115 115 ? A 6.10479 6.14594 7.42384 1 1 A ALA 98.950 1 +ATOM 919 C C . ALA 115 115 ? A 5.89310 7.42136 8.24050 1 1 A ALA 98.950 1 +ATOM 920 O O . ALA 115 115 ? A 6.73918 7.77626 9.06065 1 1 A ALA 98.950 1 +ATOM 921 C CB . ALA 115 115 ? A 6.82264 6.45374 6.12454 1 1 A ALA 98.950 1 +ATOM 922 N N . GLN 116 116 ? A 4.73769 8.08134 8.01667 1 1 A GLN 98.970 1 +ATOM 923 C CA . GLN 116 116 ? A 4.39370 9.31182 8.69937 1 1 A GLN 98.970 1 +ATOM 924 C C . GLN 116 116 ? A 4.06571 9.07828 10.17764 1 1 A GLN 98.970 1 +ATOM 925 O O . GLN 116 116 ? A 4.43492 9.90087 11.02447 1 1 A GLN 98.970 1 +ATOM 926 C CB . GLN 116 116 ? A 3.21594 9.97658 7.98348 1 1 A GLN 98.970 1 +ATOM 927 C CG . GLN 116 116 ? A 2.79983 11.32449 8.54430 1 1 A GLN 98.970 1 +ATOM 928 C CD . GLN 116 116 ? A 3.76753 12.41583 8.10575 1 1 A GLN 98.970 1 +ATOM 929 O OE1 . GLN 116 116 ? A 4.88137 12.48926 8.60980 1 1 A GLN 98.970 1 +ATOM 930 N NE2 . GLN 116 116 ? A 3.34779 13.28303 7.17575 1 1 A GLN 98.970 1 +ATOM 931 N N . PHE 117 117 ? A 3.40919 7.99839 10.46244 1 1 A PHE 98.910 1 +ATOM 932 C CA . PHE 117 117 ? A 2.95484 7.69623 11.81072 1 1 A PHE 98.910 1 +ATOM 933 C C . PHE 117 117 ? A 3.44243 6.30608 12.21497 1 1 A PHE 98.910 1 +ATOM 934 O O . PHE 117 117 ? A 2.75946 5.30775 11.96743 1 1 A PHE 98.910 1 +ATOM 935 C CB . PHE 117 117 ? A 1.42350 7.77959 11.90580 1 1 A PHE 98.910 1 +ATOM 936 C CG . PHE 117 117 ? A 0.87741 9.10398 11.47003 1 1 A PHE 98.910 1 +ATOM 937 C CD1 . PHE 117 117 ? A 0.98916 10.20071 12.31235 1 1 A PHE 98.910 1 +ATOM 938 C CD2 . PHE 117 117 ? A 0.27608 9.26632 10.24557 1 1 A PHE 98.910 1 +ATOM 939 C CE1 . PHE 117 117 ? A 0.50531 11.43863 11.91572 1 1 A PHE 98.910 1 +ATOM 940 C CE2 . PHE 117 117 ? A -0.20650 10.50233 9.84362 1 1 A PHE 98.910 1 +ATOM 941 C CZ . PHE 117 117 ? A -0.08581 11.57313 10.68329 1 1 A PHE 98.910 1 +ATOM 942 N N . PRO 118 118 ? A 4.63540 6.23200 12.81305 1 1 A PRO 97.610 1 +ATOM 943 C CA . PRO 118 118 ? A 5.20316 4.92906 13.18558 1 1 A PRO 97.610 1 +ATOM 944 C C . PRO 118 118 ? A 4.25397 4.09667 14.04160 1 1 A PRO 97.610 1 +ATOM 945 O O . PRO 118 118 ? A 3.53734 4.62746 14.89435 1 1 A PRO 97.610 1 +ATOM 946 C CB . PRO 118 118 ? A 6.46158 5.29353 13.95338 1 1 A PRO 97.610 1 +ATOM 947 C CG . PRO 118 118 ? A 6.86539 6.61000 13.35680 1 1 A PRO 97.610 1 +ATOM 948 C CD . PRO 118 118 ? A 5.56238 7.32231 13.12221 1 1 A PRO 97.610 1 +ATOM 949 N N . ASN 119 119 ? A 4.21374 2.82069 13.78218 1 1 A ASN 97.690 1 +ATOM 950 C CA . ASN 119 119 ? A 3.40545 1.82929 14.48202 1 1 A ASN 97.690 1 +ATOM 951 C C . ASN 119 119 ? A 1.91396 1.96551 14.21358 1 1 A ASN 97.690 1 +ATOM 952 O O . ASN 119 119 ? A 1.09908 1.41784 14.95711 1 1 A ASN 97.690 1 +ATOM 953 C CB . ASN 119 119 ? A 3.71725 1.84022 15.98175 1 1 A ASN 97.690 1 +ATOM 954 C CG . ASN 119 119 ? A 5.19381 1.59041 16.24835 1 1 A ASN 97.690 1 +ATOM 955 O OD1 . ASN 119 119 ? A 5.74380 0.57987 15.81151 1 1 A ASN 97.690 1 +ATOM 956 N ND2 . ASN 119 119 ? A 5.85182 2.52454 16.91801 1 1 A ASN 97.690 1 +ATOM 957 N N . TRP 120 120 ? A 1.54549 2.67488 13.14719 1 1 A TRP 98.750 1 +ATOM 958 C CA . TRP 120 120 ? A 0.19577 2.70848 12.61681 1 1 A TRP 98.750 1 +ATOM 959 C C . TRP 120 120 ? A 0.19866 1.97399 11.28646 1 1 A TRP 98.750 1 +ATOM 960 O O . TRP 120 120 ? A 1.09384 2.21321 10.45650 1 1 A TRP 98.750 1 +ATOM 961 C CB . TRP 120 120 ? A -0.30089 4.13770 12.46138 1 1 A TRP 98.750 1 +ATOM 962 C CG . TRP 120 120 ? A -0.62021 4.78942 13.77206 1 1 A TRP 98.750 1 +ATOM 963 C CD1 . TRP 120 120 ? A 0.25256 5.28693 14.68999 1 1 A TRP 98.750 1 +ATOM 964 C CD2 . TRP 120 120 ? A -1.91788 4.98490 14.32997 1 1 A TRP 98.750 1 +ATOM 965 N NE1 . TRP 120 120 ? A -0.41628 5.77650 15.77341 1 1 A TRP 98.750 1 +ATOM 966 C CE2 . TRP 120 120 ? A -1.75181 5.60918 15.59208 1 1 A TRP 98.750 1 +ATOM 967 C CE3 . TRP 120 120 ? A -3.21816 4.70520 13.88705 1 1 A TRP 98.750 1 +ATOM 968 C CZ2 . TRP 120 120 ? A -2.81870 5.96380 16.41324 1 1 A TRP 98.750 1 +ATOM 969 C CZ3 . TRP 120 120 ? A -4.28404 5.05543 14.70950 1 1 A TRP 98.750 1 +ATOM 970 C CH2 . TRP 120 120 ? A -4.08300 5.66606 15.96616 1 1 A TRP 98.750 1 +ATOM 971 N N . TYR 121 121 ? A -0.77793 1.09649 11.09503 1 1 A TYR 98.820 1 +ATOM 972 C CA . TYR 121 121 ? A -0.75675 0.14041 9.99237 1 1 A TYR 98.820 1 +ATOM 973 C C . TYR 121 121 ? A -2.03023 0.17472 9.16929 1 1 A TYR 98.820 1 +ATOM 974 O O . TYR 121 121 ? A -3.10706 0.40352 9.72943 1 1 A TYR 98.820 1 +ATOM 975 C CB . TYR 121 121 ? A -0.56451 -1.27961 10.53392 1 1 A TYR 98.820 1 +ATOM 976 C CG . TYR 121 121 ? A 0.76195 -1.51115 11.19994 1 1 A TYR 98.820 1 +ATOM 977 C CD1 . TYR 121 121 ? A 0.92833 -1.20180 12.54233 1 1 A TYR 98.820 1 +ATOM 978 C CD2 . TYR 121 121 ? A 1.84238 -2.00579 10.47591 1 1 A TYR 98.820 1 +ATOM 979 C CE1 . TYR 121 121 ? A 2.15997 -1.39373 13.16627 1 1 A TYR 98.820 1 +ATOM 980 C CE2 . TYR 121 121 ? A 3.07232 -2.20070 11.08707 1 1 A TYR 98.820 1 +ATOM 981 C CZ . TYR 121 121 ? A 3.22363 -1.89243 12.43997 1 1 A TYR 98.820 1 +ATOM 982 O OH . TYR 121 121 ? A 4.43656 -2.08974 13.04012 1 1 A TYR 98.820 1 +ATOM 983 N N . ILE 122 122 ? A -1.90342 -0.07207 7.88753 1 1 A ILE 98.940 1 +ATOM 984 C CA . ILE 122 122 ? A -3.09595 -0.33779 7.09127 1 1 A ILE 98.940 1 +ATOM 985 C C . ILE 122 122 ? A -3.79602 -1.52327 7.75804 1 1 A ILE 98.940 1 +ATOM 986 O O . ILE 122 122 ? A -3.14772 -2.55677 8.03289 1 1 A ILE 98.940 1 +ATOM 987 C CB . ILE 122 122 ? A -2.75389 -0.65004 5.62701 1 1 A ILE 98.940 1 +ATOM 988 C CG1 . ILE 122 122 ? A -2.15382 0.59774 4.95890 1 1 A ILE 98.940 1 +ATOM 989 C CG2 . ILE 122 122 ? A -3.98537 -1.13444 4.87402 1 1 A ILE 98.940 1 +ATOM 990 C CD1 . ILE 122 122 ? A -1.70057 0.36632 3.51725 1 1 A ILE 98.940 1 +ATOM 991 N N . SER 123 123 ? A -5.06543 -1.37792 8.02582 1 1 A SER 98.780 1 +ATOM 992 C CA . SER 123 123 ? A -5.80964 -2.35068 8.81224 1 1 A SER 98.780 1 +ATOM 993 C C . SER 123 123 ? A -7.17079 -2.65297 8.21176 1 1 A SER 98.780 1 +ATOM 994 O O . SER 123 123 ? A -7.75708 -1.80990 7.51914 1 1 A SER 98.780 1 +ATOM 995 C CB . SER 123 123 ? A -6.01796 -1.83530 10.23311 1 1 A SER 98.780 1 +ATOM 996 O OG . SER 123 123 ? A -4.77700 -1.65728 10.90210 1 1 A SER 98.780 1 +ATOM 997 N N . THR 124 124 ? A -7.69962 -3.85549 8.47554 1 1 A THR 98.840 1 +ATOM 998 C CA . THR 124 124 ? A -9.07056 -4.21795 8.16629 1 1 A THR 98.840 1 +ATOM 999 C C . THR 124 124 ? A -9.72685 -4.79949 9.40670 1 1 A THR 98.840 1 +ATOM 1000 O O . THR 124 124 ? A -9.03756 -5.29836 10.31245 1 1 A THR 98.840 1 +ATOM 1001 C CB . THR 124 124 ? A -9.18799 -5.21202 7.00215 1 1 A THR 98.840 1 +ATOM 1002 O OG1 . THR 124 124 ? A -8.53660 -6.45060 7.36692 1 1 A THR 98.840 1 +ATOM 1003 C CG2 . THR 124 124 ? A -8.54946 -4.65088 5.73391 1 1 A THR 98.840 1 +ATOM 1004 N N . SER 125 125 ? A -11.06211 -4.72675 9.44770 1 1 A SER 98.340 1 +ATOM 1005 C CA . SER 125 125 ? A -11.85917 -5.32665 10.50911 1 1 A SER 98.340 1 +ATOM 1006 C C . SER 125 125 ? A -12.09433 -6.80006 10.24417 1 1 A SER 98.340 1 +ATOM 1007 O O . SER 125 125 ? A -12.01876 -7.25165 9.09592 1 1 A SER 98.340 1 +ATOM 1008 C CB . SER 125 125 ? A -13.21430 -4.62312 10.62359 1 1 A SER 98.340 1 +ATOM 1009 O OG . SER 125 125 ? A -13.04018 -3.27340 10.99103 1 1 A SER 98.340 1 +ATOM 1010 N N . GLN 126 126 ? A -12.39640 -7.55694 11.27200 1 1 A GLN 97.750 1 +ATOM 1011 C CA . GLN 126 126 ? A -12.83641 -8.93728 11.09653 1 1 A GLN 97.750 1 +ATOM 1012 C C . GLN 126 126 ? A -14.19125 -8.99326 10.39130 1 1 A GLN 97.750 1 +ATOM 1013 O O . GLN 126 126 ? A -14.45589 -9.95252 9.66326 1 1 A GLN 97.750 1 +ATOM 1014 C CB . GLN 126 126 ? A -12.93501 -9.67016 12.43679 1 1 A GLN 97.750 1 +ATOM 1015 C CG . GLN 126 126 ? A -11.61281 -9.85786 13.14699 1 1 A GLN 97.750 1 +ATOM 1016 C CD . GLN 126 126 ? A -10.75278 -10.91874 12.51452 1 1 A GLN 97.750 1 +ATOM 1017 O OE1 . GLN 126 126 ? A -11.23593 -11.76980 11.77313 1 1 A GLN 97.750 +1 +ATOM 1018 N NE2 . GLN 126 126 ? A -9.45280 -10.87854 12.79126 1 1 A GLN 97.750 1 +ATOM 1019 N N . ALA 127 127 ? A -15.05828 -7.97505 10.60274 1 1 A ALA 98.270 1 +ATOM 1020 C CA . ALA 127 127 ? A -16.37767 -7.95319 9.98574 1 1 A ALA 98.270 1 +ATOM 1021 C C . ALA 127 127 ? A -16.26195 -7.68876 8.48834 1 1 A ALA 98.270 1 +ATOM 1022 O O . ALA 127 127 ? A -15.33208 -7.01643 8.02807 1 1 A ALA 98.270 1 +ATOM 1023 C CB . ALA 127 127 ? A -17.24281 -6.88873 10.64090 1 1 A ALA 98.270 1 +ATOM 1024 N N . GLU 128 128 ? A -17.21825 -8.20494 7.77228 1 1 A GLU 98.020 1 +ATOM 1025 C CA . GLU 128 128 ? A -17.30550 -8.08082 6.30647 1 1 A GLU 98.020 1 +ATOM 1026 C C . GLU 128 128 ? A -17.75624 -6.68950 5.91211 1 1 A GLU 98.020 1 +ATOM 1027 O O . GLU 128 128 ? A -18.58602 -6.07882 6.57770 1 1 A GLU 98.020 1 +ATOM 1028 C CB . GLU 128 128 ? A -18.31184 -9.10531 5.79913 1 1 A GLU 98.020 1 +ATOM 1029 C CG . GLU 128 128 ? A -18.27421 -9.38667 4.31174 1 1 A GLU 98.020 1 +ATOM 1030 C CD . GLU 128 128 ? A -17.25413 -10.45843 3.94598 1 1 A GLU 98.020 1 +ATOM 1031 O OE1 . GLU 128 128 ? A -16.50047 -10.88914 4.83062 1 1 A GLU 98.020 1 +ATOM 1032 O OE2 . GLU 128 128 ? A -17.21424 -10.85147 2.75546 1 1 A GLU 98.020 1 +ATOM 1033 N N . ASN 129 129 ? A -17.21831 -6.19602 4.79312 1 1 A ASN 97.800 1 +ATOM 1034 C CA . ASN 129 129 ? A -17.72104 -4.96640 4.18152 1 1 A ASN 97.800 1 +ATOM 1035 C C . ASN 129 129 ? A -17.51378 -3.73618 5.08593 1 1 A ASN 97.800 1 +ATOM 1036 O O . ASN 129 129 ? A -18.37977 -2.87056 5.15988 1 1 A ASN 97.800 1 +ATOM 1037 C CB . ASN 129 129 ? A -19.20067 -5.13981 3.82271 1 1 A ASN 97.800 1 +ATOM 1038 C CG . ASN 129 129 ? A -19.63172 -4.29264 2.64649 1 1 A ASN 97.800 1 +ATOM 1039 O OD1 . ASN 129 129 ? A -20.51527 -3.44675 2.75116 1 1 A ASN 97.800 1 +ATOM 1040 N ND2 . ASN 129 129 ? A -19.01747 -4.53264 1.52058 1 1 A ASN 97.800 1 +ATOM 1041 N N . MET 130 130 ? A -16.41901 -3.67525 5.70343 1 1 A MET 98.330 1 +ATOM 1042 C CA . MET 130 130 ? A -16.05214 -2.55753 6.56480 1 1 A MET 98.330 1 +ATOM 1043 C C . MET 130 130 ? A -14.87462 -1.80146 5.97571 1 1 A MET 98.330 1 +ATOM 1044 O O . MET 130 130 ? A -14.09574 -2.37217 5.19184 1 1 A MET 98.330 1 +ATOM 1045 C CB . MET 130 130 ? A -15.70250 -3.05159 7.97472 1 1 A MET 98.330 1 +ATOM 1046 C CG . MET 130 130 ? A -16.86110 -3.70303 8.70494 1 1 A MET 98.330 1 +ATOM 1047 S SD . MET 130 130 ? A -18.25648 -2.56122 8.99383 1 1 A MET 98.330 1 +ATOM 1048 C CE . MET 130 130 ? A -17.52187 -1.42227 10.13463 1 1 A MET 98.330 1 +ATOM 1049 N N . PRO 131 131 ? A -14.70366 -0.52564 6.33968 1 1 A PRO 97.680 1 +ATOM 1050 C CA . PRO 131 131 ? A -13.62879 0.28976 5.77019 1 1 A PRO 97.680 1 +ATOM 1051 C C . PRO 131 131 ? A -12.23915 -0.28454 6.02683 1 1 A PRO 97.680 1 +ATOM 1052 O O . PRO 131 131 ? A -11.99774 -0.93772 7.05143 1 1 A PRO 97.680 1 +ATOM 1053 C CB . PRO 131 131 ? A -13.77522 1.62856 6.48961 1 1 A PRO 97.680 1 +ATOM 1054 C CG . PRO 131 131 ? A -15.19518 1.68701 6.90868 1 1 A PRO 97.680 1 +ATOM 1055 C CD . PRO 131 131 ? A -15.52854 0.24593 7.27692 1 1 A PRO 97.680 1 +ATOM 1056 N N . VAL 132 132 ? A -11.35934 -0.05455 5.10926 1 1 A VAL 98.750 1 +ATOM 1057 C CA . VAL 132 132 ? A -9.93490 -0.18329 5.30539 1 1 A VAL 98.750 1 +ATOM 1058 C C . VAL 132 132 ? A -9.50402 1.07359 6.05860 1 1 A VAL 98.750 1 +ATOM 1059 O O . VAL 132 132 ? A -9.94121 2.17716 5.70545 1 1 A VAL 98.750 1 +ATOM 1060 C CB . VAL 132 132 ? A -9.17998 -0.29686 3.97405 1 1 A VAL 98.750 1 +ATOM 1061 C CG1 . VAL 132 132 ? A -7.69464 -0.42196 4.19373 1 1 A VAL 98.750 1 +ATOM 1062 C CG2 . VAL 132 132 ? A -9.71034 -1.47620 3.17206 1 1 A VAL 98.750 1 +ATOM 1063 N N . PHE 133 133 ? A -8.70494 0.93008 7.06973 1 1 A PHE 98.290 1 +ATOM 1064 C CA . PHE 133 133 ? A -8.37544 2.06502 7.92207 1 1 A PHE 98.290 1 +ATOM 1065 C C . PHE 133 133 ? A -6.93853 1.97689 8.42435 1 1 A PHE 98.290 1 +ATOM 1066 O O . PHE 133 133 ? A -6.23675 1.00216 8.15461 1 1 A PHE 98.290 1 +ATOM 1067 C CB . PHE 133 133 ? A -9.36006 2.15549 9.09383 1 1 A PHE 98.290 1 +ATOM 1068 C CG . PHE 133 133 ? A -9.28195 0.99618 10.05637 1 1 A PHE 98.290 1 +ATOM 1069 C CD1 . PHE 133 133 ? A -9.95232 -0.18879 9.79501 1 1 A PHE 98.290 1 +ATOM 1070 C CD2 . PHE 133 133 ? A -8.54250 1.08783 11.22652 1 1 A PHE 98.290 1 +ATOM 1071 C CE1 . PHE 133 133 ? A -9.89454 -1.25403 10.68057 1 1 A PHE 98.290 1 +ATOM 1072 C CE2 . PHE 133 133 ? A -8.49306 0.01403 12.10995 1 1 A PHE 98.290 1 +ATOM 1073 C CZ . PHE 133 133 ? A -9.15931 -1.14756 11.83779 1 1 A PHE 98.290 1 +ATOM 1074 N N . LEU 134 134 ? A -6.50214 3.02172 9.12380 1 1 A LEU 98.790 1 +ATOM 1075 C CA . LEU 134 134 ? A -5.19175 3.02759 9.77011 1 1 A LEU 98.790 1 +ATOM 1076 C C . LEU 134 134 ? A -5.39065 2.65071 11.23482 1 1 A LEU 98.790 1 +ATOM 1077 O O . LEU 134 134 ? A -6.10835 3.34231 11.94638 1 1 A LEU 98.790 1 +ATOM 1078 C CB . LEU 134 134 ? A -4.54715 4.40071 9.63410 1 1 A LEU 98.790 1 +ATOM 1079 C CG . LEU 134 134 ? A -3.02516 4.46011 9.72522 1 1 A LEU 98.790 1 +ATOM 1080 C CD1 . LEU 134 134 ? A -2.38304 3.75931 8.55458 1 1 A LEU 98.790 1 +ATOM 1081 C CD2 . LEU 134 134 ? A -2.56719 5.90419 9.75651 1 1 A LEU 98.790 1 +ATOM 1082 N N . GLY 135 135 ? A -4.78217 1.54059 11.66468 1 1 A GLY 98.650 1 +ATOM 1083 C CA . GLY 135 135 ? A -4.90938 1.07765 13.02997 1 1 A GLY 98.650 1 +ATOM 1084 C C . GLY 135 135 ? A -3.66254 1.36496 13.83081 1 1 A GLY 98.650 1 +ATOM 1085 O O . GLY 135 135 ? A -2.54067 1.25624 13.31617 1 1 A GLY 98.650 1 +ATOM 1086 N N . GLY 136 136 ? A -3.87955 1.72593 15.10079 1 1 A GLY 96.370 1 +ATOM 1087 C CA . GLY 136 136 ? A -2.79204 2.19790 15.91876 1 1 A GLY 96.370 1 +ATOM 1088 C C . GLY 136 136 ? A -1.93267 1.13540 16.56107 1 1 A GLY 96.370 1 +ATOM 1089 O O . GLY 136 136 ? A -1.01923 1.46700 17.32671 1 1 A GLY 96.370 1 +ATOM 1090 N N . THR 137 137 ? A -2.22393 -0.11417 16.24290 1 1 A THR 81.510 1 +ATOM 1091 C CA . THR 137 137 ? A -1.44667 -1.20299 16.78909 1 1 A THR 81.510 1 +ATOM 1092 C C . THR 137 137 ? A -1.66770 -2.45129 15.95844 1 1 A THR 81.510 1 +ATOM 1093 O O . THR 137 137 ? A -2.77233 -2.70668 15.48709 1 1 A THR 81.510 1 +ATOM 1094 C CB . THR 137 137 ? A -1.85080 -1.43786 18.26481 1 1 A THR 81.510 1 +ATOM 1095 O OG1 . THR 137 137 ? A -1.00094 -2.45641 18.81557 1 1 A THR 81.510 1 +ATOM 1096 C CG2 . THR 137 137 ? A -3.30648 -1.86613 18.36029 1 1 A THR 81.510 1 +ATOM 1097 N N . LYS 138 138 ? A -0.66006 -3.18960 15.75833 1 1 A LYS 87.780 1 +ATOM 1098 C CA . LYS 138 138 ? A -0.84189 -4.51790 15.20356 1 1 A LYS 87.780 1 +ATOM 1099 C C . LYS 138 138 ? A -1.12755 -5.46456 16.35933 1 1 A LYS 87.780 1 +ATOM 1100 O O . LYS 138 138 ? A -0.67127 -5.24825 17.48159 1 1 A LYS 87.780 1 +ATOM 1101 C CB . LYS 138 138 ? A 0.36036 -4.94563 14.37639 1 1 A LYS 87.780 1 +ATOM 1102 C CG . LYS 138 138 ? A 1.63587 -5.16737 15.13584 1 1 A LYS 87.780 1 +ATOM 1103 C CD . LYS 138 138 ? A 2.79147 -5.51346 14.20589 1 1 A LYS 87.780 1 +ATOM 1104 C CE . LYS 138 138 ? A 4.07248 -5.77277 15.00889 1 1 A LYS 87.780 1 +ATOM 1105 N NZ . LYS 138 138 ? A 5.13694 -6.35315 14.17078 1 1 A LYS 87.780 1 +ATOM 1106 N N . GLY 139 139 ? A -1.89485 -6.46602 16.08315 1 1 A GLY 86.420 1 +ATOM 1107 C CA . GLY 139 139 ? A -2.34182 -7.36798 17.14104 1 1 A GLY 86.420 1 +ATOM 1108 C C . GLY 139 139 ? A -3.78268 -7.05060 17.47886 1 1 A GLY 86.420 1 +ATOM 1109 O O . GLY 139 139 ? A -4.43867 -6.22485 16.84230 1 1 A GLY 86.420 1 +ATOM 1110 N N . GLY 140 140 ? A -4.30507 -7.74032 18.48781 1 1 A GLY 89.570 1 +ATOM 1111 C CA . GLY 140 140 ? A -5.69413 -7.51432 18.81258 1 1 A GLY 89.570 1 +ATOM 1112 C C . GLY 140 140 ? A -6.61111 -8.15041 17.78193 1 1 A GLY 89.570 1 +ATOM 1113 O O . GLY 140 140 ? A -6.23926 -9.11295 17.10768 1 1 A GLY 89.570 1 +ATOM 1114 N N . GLN 141 141 ? A -7.79729 -7.61239 17.62243 1 1 A GLN 92.150 1 +ATOM 1115 C CA . GLN 141 141 ? A -8.77106 -8.19759 16.71350 1 1 A GLN 92.150 1 +ATOM 1116 C C . GLN 141 141 ? A -8.73679 -7.61439 15.31237 1 1 A GLN 92.150 1 +ATOM 1117 O O . GLN 141 141 ? A -9.22383 -8.24938 14.37122 1 1 A GLN 92.150 1 +ATOM 1118 C CB . GLN 141 141 ? A -10.17108 -8.09366 17.31486 1 1 A GLN 92.150 1 +ATOM 1119 C CG . GLN 141 141 ? A -10.28083 -8.82783 18.65016 1 1 A GLN 92.150 1 +ATOM 1120 C CD . GLN 141 141 ? A -11.67938 -8.79856 19.23227 1 1 A GLN 92.150 1 +ATOM 1121 O OE1 . GLN 141 141 ? A -12.59881 -8.20220 18.67188 1 1 A GLN 92.150 1 +ATOM 1122 N NE2 . GLN 141 141 ? A -11.85183 -9.45830 20.38527 1 1 A GLN 92.150 1 +ATOM 1123 N N . ASP 142 142 ? A -8.18784 -6.46504 15.11171 1 1 A ASP 95.920 1 +ATOM 1124 C CA . ASP 142 142 ? A -8.06880 -5.89993 13.76963 1 1 A ASP 95.920 1 +ATOM 1125 C C . ASP 142 142 ? A -6.94657 -6.58903 13.01871 1 1 A ASP 95.920 1 +ATOM 1126 O O . ASP 142 142 ? A -5.99972 -7.11274 13.62961 1 1 A ASP 95.920 1 +ATOM 1127 C CB . ASP 142 142 ? A -7.82326 -4.39414 13.83934 1 1 A ASP 95.920 1 +ATOM 1128 C CG . ASP 142 142 ? A -8.99894 -3.63819 14.42037 1 1 A ASP 95.920 1 +ATOM 1129 O OD1 . ASP 142 142 ? A -10.12013 -4.16695 14.39283 1 1 A ASP 95.920 1 +ATOM 1130 O OD2 . ASP 142 142 ? A -8.77626 -2.50844 14.90891 1 1 A ASP 95.920 1 +ATOM 1131 N N . ILE 143 143 ? A -7.06866 -6.59595 11.71553 1 1 A ILE 98.640 1 +ATOM 1132 C CA . ILE 143 143 ? A -6.13215 -7.30084 10.84305 1 1 A ILE 98.640 1 +ATOM 1133 C C . ILE 143 143 ? A -5.12266 -6.33357 10.24828 1 1 A ILE 98.640 1 +ATOM 1134 O O . ILE 143 143 ? A -5.52414 -5.33486 9.64451 1 1 A ILE 98.640 1 +ATOM 1135 C CB . ILE 143 143 ? A -6.89884 -8.04879 9.73863 1 1 A ILE 98.640 1 +ATOM 1136 C CG1 . ILE 143 143 ? A -7.90648 -9.03040 10.36441 1 1 A ILE 98.640 1 +ATOM 1137 C CG2 . ILE 143 143 ? A -5.94536 -8.76360 8.81183 1 1 A ILE 98.640 1 +ATOM 1138 C CD1 . ILE 143 143 ? A -8.94397 -9.54203 9.39088 1 1 A ILE 98.640 1 +ATOM 1139 N N . THR 144 144 ? A -3.85025 -6.59340 10.43939 1 1 A THR 98.750 1 +ATOM 1140 C CA . THR 144 144 ? A -2.79031 -5.76581 9.90154 1 1 A THR 98.750 1 +ATOM 1141 C C . THR 144 144 ? A -1.87824 -6.51546 8.94811 1 1 A THR 98.750 1 +ATOM 1142 O O . THR 144 144 ? A -0.91801 -5.93565 8.42874 1 1 A THR 98.750 1 +ATOM 1143 C CB . THR 144 144 ? A -1.93604 -5.13736 11.00478 1 1 A THR 98.750 1 +ATOM 1144 O OG1 . THR 144 144 ? A -1.43413 -6.16564 11.85564 1 1 A THR 98.750 1 +ATOM 1145 C CG2 . THR 144 144 ? A -2.76746 -4.17305 11.84420 1 1 A THR 98.750 1 +ATOM 1146 N N . ASP 145 145 ? A -2.14921 -7.78088 8.70132 1 1 A ASP 98.350 1 +ATOM 1147 C CA . ASP 145 145 ? A -1.32620 -8.61971 7.82862 1 1 A ASP 98.350 1 +ATOM 1148 C C . ASP 145 145 ? A -2.00704 -8.83762 6.49248 1 1 A ASP 98.350 1 +ATOM 1149 O O . ASP 145 145 ? A -3.23368 -9.02168 6.43994 1 1 A ASP 98.350 1 +ATOM 1150 C CB . ASP 145 145 ? A -1.06096 -9.97880 8.46853 1 1 A ASP 98.350 1 +ATOM 1151 C CG . ASP 145 145 ? A -0.27110 -9.90608 9.74527 1 1 A ASP 98.350 1 +ATOM 1152 O OD1 . ASP 145 145 ? A 0.58287 -9.01853 9.87395 1 1 A ASP 98.350 1 +ATOM 1153 O OD2 . ASP 145 145 ? A -0.53363 -10.75333 10.63700 1 1 A ASP 98.350 1 +ATOM 1154 N N . PHE 146 146 ? A -1.24090 -8.83827 5.43361 1 1 A PHE 98.940 1 +ATOM 1155 C CA . PHE 146 146 ? A -1.74350 -9.00331 4.07761 1 1 A PHE 98.940 1 +ATOM 1156 C C . PHE 146 146 ? A -0.87877 -9.94137 3.26960 1 1 A PHE 98.940 1 +ATOM 1157 O O . PHE 146 146 ? A 0.29539 -10.15116 3.59826 1 1 A PHE 98.940 1 +ATOM 1158 C CB . PHE 146 146 ? A -1.78959 -7.64743 3.36835 1 1 A PHE 98.940 1 +ATOM 1159 C CG . PHE 146 146 ? A -2.70585 -6.65479 3.99097 1 1 A PHE 98.940 1 +ATOM 1160 C CD1 . PHE 146 146 ? A -2.26911 -5.88154 5.05192 1 1 A PHE 98.940 1 +ATOM 1161 C CD2 . PHE 146 146 ? A -4.00038 -6.48291 3.53260 1 1 A PHE 98.940 1 +ATOM 1162 C CE1 . PHE 146 146 ? A -3.10989 -4.95434 5.64307 1 1 A PHE 98.940 1 +ATOM 1163 C CE2 . PHE 146 146 ? A -4.84370 -5.55452 4.11789 1 1 A PHE 98.940 1 +ATOM 1164 C CZ . PHE 146 146 ? A -4.39381 -4.78999 5.17106 1 1 A PHE 98.940 1 +ATOM 1165 N N . THR 147 147 ? A -1.46313 -10.47759 2.20885 1 1 A THR 98.920 1 +ATOM 1166 C CA . THR 147 147 ? A -0.70941 -11.09479 1.13028 1 1 A THR 98.920 1 +ATOM 1167 C C . THR 147 147 ? A -0.86955 -10.24460 -0.10994 1 1 A THR 98.920 1 +ATOM 1168 O O . THR 147 147 ? A -1.87518 -9.54212 -0.26556 1 1 A THR 98.920 1 +ATOM 1169 C CB . THR 147 147 ? A -1.12542 -12.52704 0.84355 1 1 A THR 98.920 1 +ATOM 1170 O OG1 . THR 147 147 ? A -2.49132 -12.56153 0.45749 1 1 A THR 98.920 1 +ATOM 1171 C CG2 . THR 147 147 ? A -0.91142 -13.42515 2.04930 1 1 A THR 98.920 1 +ATOM 1172 N N . MET 148 148 ? A 0.06452 -10.29107 -0.97149 1 1 A MET 98.830 1 +ATOM 1173 C CA . MET 148 148 ? A 0.06280 -9.56140 -2.22334 1 1 A MET 98.830 1 +ATOM 1174 C C . MET 148 148 ? A -0.01255 -10.53933 -3.39335 1 1 A MET 98.830 1 +ATOM 1175 O O . MET 148 148 ? A 0.63844 -11.58995 -3.34588 1 1 A MET 98.830 1 +ATOM 1176 C CB . MET 148 148 ? A 1.32445 -8.72489 -2.34249 1 1 A MET 98.830 1 +ATOM 1177 C CG . MET 148 148 ? A 1.42230 -7.89576 -3.58674 1 1 A MET 98.830 1 +ATOM 1178 S SD . MET 148 148 ? A 2.82934 -6.76038 -3.57821 1 1 A MET 98.830 1 +ATOM 1179 C CE . MET 148 148 ? A 4.17582 -7.79589 -3.12386 1 1 A MET 98.830 1 +ATOM 1180 N N . GLN 149 149 ? A -0.78802 -10.20501 -4.40126 1 1 A GLN 98.560 1 +ATOM 1181 C CA . GLN 149 149 ? A -0.82362 -10.94365 -5.64908 1 1 A GLN 98.560 1 +ATOM 1182 C C . GLN 149 149 ? A -0.39643 -10.01924 -6.77557 1 1 A GLN 98.560 1 +ATOM 1183 O O . GLN 149 149 ? A -0.92476 -8.92015 -6.88609 1 1 A GLN 98.560 1 +ATOM 1184 C CB . GLN 149 149 ? A -2.23827 -11.48216 -5.91812 1 1 A GLN 98.560 1 +ATOM 1185 C CG . GLN 149 149 ? A -2.73926 -12.47988 -4.88041 1 1 A GLN 98.560 1 +ATOM 1186 C CD . GLN 149 149 ? A -3.22331 -11.82649 -3.61078 1 1 A GLN 98.560 1 +ATOM 1187 O OE1 . GLN 149 149 ? A -3.99955 -10.86297 -3.66921 1 1 A GLN 98.560 1 +ATOM 1188 N NE2 . GLN 149 149 ? A -2.76643 -12.28830 -2.45715 1 1 A GLN 98.560 1 +ATOM 1189 N N . PHE 150 150 ? A 0.52342 -10.44065 -7.55607 1 1 A PHE 98.570 1 +ATOM 1190 C CA . PHE 150 150 ? A 1.03672 -9.66799 -8.66672 1 1 A PHE 98.570 1 +ATOM 1191 C C . PHE 150 150 ? A 0.07312 -9.74892 -9.82392 1 1 A PHE 98.570 1 +ATOM 1192 O O . PHE 150 150 ? A -0.48303 -10.79155 -10.09510 1 1 A PHE 98.570 1 +ATOM 1193 C CB . PHE 150 150 ? A 2.41466 -10.14606 -9.05832 1 1 A PHE 98.570 1 +ATOM 1194 C CG . PHE 150 150 ? A 3.40956 -9.96496 -7.96642 1 1 A PHE 98.570 1 +ATOM 1195 C CD1 . PHE 150 150 ? A 3.50249 -10.85769 -6.93148 1 1 A PHE 98.570 1 +ATOM 1196 C CD2 . PHE 150 150 ? A 4.22387 -8.85613 -7.92547 1 1 A PHE 98.570 1 +ATOM 1197 C CE1 . PHE 150 150 ? A 4.38773 -10.67683 -5.88242 1 1 A PHE 98.570 1 +ATOM 1198 C CE2 . PHE 150 150 ? A 5.12231 -8.66591 -6.89163 1 1 A PHE 98.570 1 +ATOM 1199 C CZ . PHE 150 150 ? A 5.19222 -9.57255 -5.88188 1 1 A PHE 98.570 1 +ATOM 1200 N N . VAL 151 151 ? A -0.14083 -8.63272 -10.49158 1 1 A VAL 98.110 1 +ATOM 1201 C CA . VAL 151 151 ? A -1.07818 -8.51413 -11.59498 1 1 A VAL 98.110 1 +ATOM 1202 C C . VAL 151 151 ? A -0.32710 -8.10986 -12.85871 1 1 A VAL 98.110 1 +ATOM 1203 O O . VAL 151 151 ? A 0.57037 -7.24457 -12.79310 1 1 A VAL 98.110 1 +ATOM 1204 C CB . VAL 151 151 ? A -2.15392 -7.46405 -11.25450 1 1 A VAL 98.110 1 +ATOM 1205 C CG1 . VAL 151 151 ? A -3.10630 -7.26663 -12.41896 1 1 A VAL 98.110 1 +ATOM 1206 C CG2 . VAL 151 151 ? A -2.92690 -7.87830 -10.02184 1 1 A VAL 98.110 1 +ATOM 1207 N N . SER 152 152 ? A -0.65359 -8.66793 -14.01803 1 1 A SER 95.240 1 +ATOM 1208 C CA . SER 152 152 ? A -0.09186 -8.24936 -15.28429 1 1 A SER 95.240 1 +ATOM 1209 C C . SER 152 152 ? A -0.38093 -6.76052 -15.49967 1 1 A SER 95.240 1 +ATOM 1210 O O . SER 152 152 ? A -1.26624 -6.19732 -14.86434 1 1 A SER 95.240 1 +ATOM 1211 C CB . SER 152 152 ? A -0.67870 -9.04418 -16.42836 1 1 A SER 95.240 1 +ATOM 1212 O OG . SER 152 152 ? A -0.38728 -10.42175 -16.28940 1 1 A SER 95.240 1 +ATOM 1213 N N . SER 153 153 ? A 0.37385 -6.14801 -16.36173 1 1 A SER 77.090 1 +ATOM 1214 C CA . SER 153 153 ? A 0.18192 -4.75363 -16.63383 1 1 A SER 77.090 1 +ATOM 1215 C C . SER 153 153 ? A -1.17413 -4.49959 -17.23304 1 1 A SER 77.090 1 +ATOM 1216 O O . SER 153 153 ? A -1.82901 -3.53162 -16.91461 1 1 A SER 77.090 1 +ATOM 1217 C CB . SER 153 153 ? A 1.27981 -4.24577 -17.55792 1 1 A SER 77.090 1 +ATOM 1218 O OG . SER 153 153 ? A 1.35482 -5.07496 -18.70364 1 1 A SER 77.090 1 +HETATM 1219 C C53 . LIG . 1 ? B 2.84392 -13.33304 -0.41598 1 2 B LIG 24.770 1 +HETATM 1220 C C46 . LIG . 1 ? B 4.05271 -12.47614 -0.66796 1 2 B LIG 24.770 1 +HETATM 1221 C C36 . LIG . 1 ? B 3.90977 -11.06952 -0.74389 1 2 B LIG 24.770 1 +HETATM 1222 C C39 . LIG . 1 ? B 5.05191 -10.24938 -0.96486 1 2 B LIG 24.770 1 +HETATM 1223 C C48 . LIG . 1 ? B 6.32900 -10.85204 -1.07328 1 2 B LIG 24.770 1 +HETATM 1224 C C45 . LIG . 1 ? B 6.45099 -12.24959 -1.02949 1 2 B LIG 24.770 1 +HETATM 1225 C C37 . LIG . 1 ? B 5.33700 -13.05005 -0.84062 1 2 B LIG 24.770 1 +HETATM 1226 N N51 . LIG . 1 ? B 7.78158 -12.55481 -1.22903 1 2 B LIG 24.770 1 +HETATM 1227 C C29 . LIG . 1 ? B 8.51351 -11.45353 -1.37690 1 2 B LIG 24.770 1 +HETATM 1228 O O22 . LIG . 1 ? B 9.72615 -11.39458 -1.57927 1 2 B LIG 24.770 1 +HETATM 1229 C C54 . LIG . 1 ? B 7.64673 -10.20755 -1.33367 1 2 B LIG 24.770 1 +HETATM 1230 C C49 . LIG . 1 ? B 8.03475 -9.47420 -0.12324 1 2 B LIG 24.770 1 +HETATM 1231 C C30 . LIG . 1 ? B 7.24130 -8.60406 0.58576 1 2 B LIG 24.770 1 +HETATM 1232 N N23 . LIG . 1 ? B 7.92516 -8.13021 1.61132 1 2 B LIG 24.770 1 +HETATM 1233 N N52 . LIG . 1 ? B 9.16833 -8.60912 1.53384 1 2 B LIG 24.770 1 +HETATM 1234 C C50 . LIG . 1 ? B 9.27630 -9.38314 0.47611 1 2 B LIG 24.770 1 +HETATM 1235 C C47 . LIG . 1 ? B 7.77112 -9.38300 -2.58829 1 2 B LIG 24.770 1 +HETATM 1236 C C38 . LIG . 1 ? B 7.66493 -9.92285 -3.86452 1 2 B LIG 24.770 1 +HETATM 1237 C C43 . LIG . 1 ? B 7.78508 -9.21059 -5.05161 1 2 B LIG 24.770 1 +HETATM 1238 C C44 . LIG . 1 ? B 7.64496 -9.84158 -6.37117 1 2 B LIG 24.770 1 +HETATM 1239 C C35 . LIG . 1 ? B 7.58557 -9.00574 -7.51343 1 2 B LIG 24.770 1 +HETATM 1240 C C32 . LIG . 1 ? B 7.43733 -9.53436 -8.75695 1 2 B LIG 24.770 1 +HETATM 1241 C C41 . LIG . 1 ? B 7.33686 -10.89459 -8.93270 1 2 B LIG 24.770 1 +HETATM 1242 C C27 . LIG . 1 ? B 7.17368 -11.42347 -10.32585 1 2 B LIG 24.770 1 +HETATM 1243 O O20 . LIG . 1 ? B 6.92354 -12.59199 -10.51817 1 2 B LIG 24.770 1 +HETATM 1244 O O24 . LIG . 1 ? B 7.26266 -10.62312 -11.30770 1 2 B LIG 24.770 1 +HETATM 1245 C C33 . LIG . 1 ? B 7.40561 -11.72950 -7.86788 1 2 B LIG 24.770 1 +HETATM 1246 C C42 . LIG . 1 ? B 7.54926 -11.24312 -6.60991 1 2 B LIG 24.770 1 +HETATM 1247 C C28 . LIG . 1 ? B 7.62027 -12.21883 -5.47224 1 2 B LIG 24.770 1 +HETATM 1248 O O21 . LIG . 1 ? B 8.69765 -12.34953 -4.84133 1 2 B LIG 24.770 1 +HETATM 1249 O O25 . LIG . 1 ? B 6.60457 -12.89058 -5.19672 1 2 B LIG 24.770 1 +HETATM 1250 C C34 . LIG . 1 ? B 8.03174 -7.89566 -5.01661 1 2 B LIG 24.770 1 +HETATM 1251 C C31 . LIG . 1 ? B 8.14369 -7.28488 -3.83283 1 2 B LIG 24.770 1 +HETATM 1252 C C40 . LIG . 1 ? B 8.02555 -7.98146 -2.63128 1 2 B LIG 24.770 1 +HETATM 1253 O O26 . LIG . 1 ? B 8.14358 -7.32356 -1.52441 1 2 B LIG 24.770 1 +# +# +loop_ +_atom_type.symbol +C +N +O +S +# +# +loop_ +_ma_qa_metric.id +_ma_qa_metric.name +_ma_qa_metric.description +_ma_qa_metric.type +_ma_qa_metric.mode +_ma_qa_metric.type_other_details +_ma_qa_metric.software_group_id +1 pLDDT 'Predicted lddt' pLDDT local . . +# +# +loop_ +_ma_qa_metric_local.ordinal_id +_ma_qa_metric_local.model_id +_ma_qa_metric_local.label_asym_id +_ma_qa_metric_local.label_seq_id +_ma_qa_metric_local.label_comp_id +_ma_qa_metric_local.metric_id +_ma_qa_metric_local.metric_value +1 1 A 1 ALA 1 0.905 +2 1 A 2 PRO 1 0.952 +3 1 A 3 VAL 1 0.987 +4 1 A 4 ARG 1 0.984 +5 1 A 5 SER 1 0.987 +6 1 A 6 LEU 1 0.982 +7 1 A 7 ASN 1 0.990 +8 1 A 8 CYS 1 0.990 +9 1 A 9 THR 1 0.990 +10 1 A 10 LEU 1 0.990 +11 1 A 11 ARG 1 0.989 +12 1 A 12 ASP 1 0.989 +13 1 A 13 SER 1 0.976 +14 1 A 14 GLN 1 0.974 +15 1 A 15 GLN 1 0.987 +16 1 A 16 LYS 1 0.989 +17 1 A 17 SER 1 0.989 +18 1 A 18 LEU 1 0.989 +19 1 A 19 VAL 1 0.984 +20 1 A 20 MET 1 0.960 +21 1 A 21 SER 1 0.860 +22 1 A 22 GLY 1 0.897 +23 1 A 23 PRO 1 0.860 +24 1 A 24 TYR 1 0.919 +25 1 A 25 GLU 1 0.896 +26 1 A 26 LEU 1 0.952 +27 1 A 27 LYS 1 0.981 +28 1 A 28 ALA 1 0.989 +29 1 A 29 LEU 1 0.987 +30 1 A 30 HIS 1 0.989 +31 1 A 31 LEU 1 0.988 +32 1 A 32 GLN 1 0.977 +33 1 A 33 GLY 1 0.987 +34 1 A 34 GLN 1 0.987 +35 1 A 35 ASP 1 0.981 +36 1 A 36 MET 1 0.983 +37 1 A 37 GLU 1 0.972 +38 1 A 38 GLN 1 0.970 +39 1 A 39 GLN 1 0.985 +40 1 A 40 VAL 1 0.986 +41 1 A 41 VAL 1 0.989 +42 1 A 42 PHE 1 0.990 +43 1 A 43 SER 1 0.989 +44 1 A 44 MET 1 0.990 +45 1 A 45 SER 1 0.990 +46 1 A 46 PHE 1 0.990 +47 1 A 47 VAL 1 0.990 +48 1 A 48 GLN 1 0.987 +49 1 A 49 GLY 1 0.988 +50 1 A 50 GLU 1 0.974 +51 1 A 51 GLU 1 0.982 +52 1 A 52 SER 1 0.979 +53 1 A 53 ASN 1 0.980 +54 1 A 54 ASP 1 0.977 +55 1 A 55 LYS 1 0.977 +56 1 A 56 ILE 1 0.988 +57 1 A 57 PRO 1 0.990 +58 1 A 58 VAL 1 0.990 +59 1 A 59 ALA 1 0.990 +60 1 A 60 LEU 1 0.990 +61 1 A 61 GLY 1 0.990 +62 1 A 62 LEU 1 0.985 +63 1 A 63 LYS 1 0.986 +64 1 A 64 GLU 1 0.954 +65 1 A 65 LYS 1 0.972 +66 1 A 66 ASN 1 0.975 +67 1 A 67 LEU 1 0.983 +68 1 A 68 TYR 1 0.989 +69 1 A 69 LEU 1 0.989 +70 1 A 70 SER 1 0.980 +71 1 A 71 CYS 1 0.990 +72 1 A 72 VAL 1 0.988 +73 1 A 73 LEU 1 0.989 +74 1 A 74 LYS 1 0.973 +75 1 A 75 ASP 1 0.985 +76 1 A 76 ASP 1 0.986 +77 1 A 77 LYS 1 0.982 +78 1 A 78 PRO 1 0.988 +79 1 A 79 THR 1 0.976 +80 1 A 80 LEU 1 0.986 +81 1 A 81 GLN 1 0.980 +82 1 A 82 LEU 1 0.984 +83 1 A 83 GLU 1 0.986 +84 1 A 84 SER 1 0.981 +85 1 A 85 VAL 1 0.989 +86 1 A 86 ASP 1 0.989 +87 1 A 87 PRO 1 0.975 +88 1 A 88 LYS 1 0.984 +89 1 A 89 ASN 1 0.987 +90 1 A 90 TYR 1 0.989 +91 1 A 91 PRO 1 0.987 +92 1 A 92 LYS 1 0.989 +93 1 A 93 LYS 1 0.988 +94 1 A 94 LYS 1 0.989 +95 1 A 95 MET 1 0.990 +96 1 A 96 GLU 1 0.990 +97 1 A 97 LYS 1 0.990 +98 1 A 98 ARG 1 0.990 +99 1 A 99 PHE 1 0.990 +100 1 A 100 VAL 1 0.990 +101 1 A 101 PHE 1 0.990 +102 1 A 102 ASN 1 0.989 +103 1 A 103 LYS 1 0.990 +104 1 A 104 ILE 1 0.987 +105 1 A 105 GLU 1 0.984 +106 1 A 106 ILE 1 0.963 +107 1 A 107 ASN 1 0.964 +108 1 A 108 ASN 1 0.968 +109 1 A 109 LYS 1 0.978 +110 1 A 110 LEU 1 0.988 +111 1 A 111 GLU 1 0.986 +112 1 A 112 PHE 1 0.990 +113 1 A 113 GLU 1 0.988 +114 1 A 114 SER 1 0.990 +115 1 A 115 ALA 1 0.990 +116 1 A 116 GLN 1 0.990 +117 1 A 117 PHE 1 0.989 +118 1 A 118 PRO 1 0.976 +119 1 A 119 ASN 1 0.977 +120 1 A 120 TRP 1 0.987 +121 1 A 121 TYR 1 0.988 +122 1 A 122 ILE 1 0.989 +123 1 A 123 SER 1 0.988 +124 1 A 124 THR 1 0.988 +125 1 A 125 SER 1 0.983 +126 1 A 126 GLN 1 0.978 +127 1 A 127 ALA 1 0.983 +128 1 A 128 GLU 1 0.980 +129 1 A 129 ASN 1 0.978 +130 1 A 130 MET 1 0.983 +131 1 A 131 PRO 1 0.977 +132 1 A 132 VAL 1 0.988 +133 1 A 133 PHE 1 0.983 +134 1 A 134 LEU 1 0.988 +135 1 A 135 GLY 1 0.987 +136 1 A 136 GLY 1 0.964 +137 1 A 137 THR 1 0.815 +138 1 A 138 LYS 1 0.878 +139 1 A 139 GLY 1 0.864 +140 1 A 140 GLY 1 0.896 +141 1 A 141 GLN 1 0.921 +142 1 A 142 ASP 1 0.959 +143 1 A 143 ILE 1 0.986 +144 1 A 144 THR 1 0.987 +145 1 A 145 ASP 1 0.983 +146 1 A 146 PHE 1 0.989 +147 1 A 147 THR 1 0.989 +148 1 A 148 MET 1 0.988 +149 1 A 149 GLN 1 0.986 +150 1 A 150 PHE 1 0.986 +151 1 A 151 VAL 1 0.981 +152 1 A 152 SER 1 0.952 +153 1 A 153 SER 1 0.771 +154 1 B 1 LIG 1 0.248 +# diff --git a/tests/test_eval.py b/tests/test_eval.py index bdf955d1..11a25760 100644 --- a/tests/test_eval.py +++ b/tests/test_eval.py @@ -72,7 +72,7 @@ def test_single_protein_single_ligand_scoring_named_sdf( score_protein=False, score_posebusters=True, ).summarize_scores() - assert list(scores.keys())[0] == "00001_ligand_pose_0" + assert list(scores.keys())[0] == "00001_ligand_pose_0", list(scores.keys()) def test_single_protein_single_ligand_scoring( @@ -136,15 +136,6 @@ def test_single_protein_single_ligand_scoring( } } - # for k in true_scores: - # assert k in scores - # if type(true_scores[k]) == float: - # assert np.isclose( - # true_scores[k], scores[k] - # ), f"{k}: {true_scores[k]} != {scores[k]}" - # else: - # assert true_scores[k] == scores[k], f"{k}: {true_scores[k]} != {scores[k]}" - for l in true_scores: assert l in scores for k in true_scores[l]: @@ -302,7 +293,13 @@ def test_evaluate_stratify_plot_cmds(prediction_csv, mock_cpl_eval): plot_cmd(args=args) result_df = pd.read_csv(Path(prediction_csv.parent) / "plots" / "results.csv") truth = pd.read_csv(Path(cfg.data.plinder_dir) / "results.csv") - assert result_df.equals(truth) + assert result_df.select_dtypes(exclude="number").equals( + truth.select_dtypes(exclude="number") + ) + assert np.allclose( + result_df.select_dtypes(include="number").values, + truth.select_dtypes(include="number").values, + ) assert (Path(prediction_csv.parent) / "plots" / "merged.parquet").exists() assert ( Path(prediction_csv.parent) / "plots" / "delta_lDDT_PLI_topn1.html" diff --git a/tox.ini b/tox.ini index 6cd30236..aadcbafc 100644 --- a/tox.ini +++ b/tox.ini @@ -1,5 +1,5 @@ [tox] -envlist = py310-{lint,type,test} +envlist = py312-{lint,type,test} isolated_build = true requires = tox >= 4 @@ -8,21 +8,21 @@ requires = [gh-actions] python = - 3.10: py310 + 3.12: py312 [testenv] skip_sdist = true skip_install = true -[testenv:py310-lint] +[testenv:py312-lint] tox_extras=lint deps = ruff == 0.1.2 pre-commit == 2.21.0 commands = pre-commit run --all-files --show-diff-on-failure -[testenv:py310-type] +[testenv:py312-type] tox_extras=type deps = mypy == 1.2.0 @@ -31,7 +31,7 @@ deps = pydantic commands = mypy src -[testenv:py310-test] +[testenv:py312-test] setenv = PLINDER_LOG_LEVEL=10 PLINDER_OFFLINE=true