diff --git a/.github/workflows/python_ci.yml b/.github/workflows/python_ci.yml index dee943e6e..cf97bd75d 100644 --- a/.github/workflows/python_ci.yml +++ b/.github/workflows/python_ci.yml @@ -9,13 +9,16 @@ on: jobs: build: runs-on: ubuntu-latest + strategy: + matrix: + python-version: ['3.8', '3.9', '3.10', '3.11'] steps: - uses: actions/checkout@v4 - - name: Initialize Python 3.11 + - name: Initialize Python uses: actions/setup-python@v4.3.1 with: - python-version: "3.11" + python-version: ${{ matrix.python-version }} - name: Install package run: | python3 -m pip install .[test,docs] diff --git a/MANIFEST.in b/MANIFEST.in new file mode 100644 index 000000000..1e5658bcb --- /dev/null +++ b/MANIFEST.in @@ -0,0 +1 @@ +include src/genophenocorr/model/genome/GCF_*.tsv \ No newline at end of file diff --git a/pyproject.toml b/pyproject.toml index ec8d1f5aa..88a8e0911 100644 --- a/pyproject.toml +++ b/pyproject.toml @@ -11,7 +11,7 @@ authors = [ ] description = "Search for genotype-phenotype correlations with GA4GH phenopackets" readme = "README.md" -requires-python = ">=3.5" +requires-python = ">=3.8" keywords = [ "Global Alliance for Genomics and Health", "GA4GH Phenopacket Schema", @@ -24,7 +24,10 @@ classifiers = [ "License :: OSI Approved :: MIT License", "Operating System :: OS Independent", "Development Status :: 3 - Alpha", - "Programming Language :: Python :: 3.5", + "Programming Language :: Python :: 3.8", + "Programming Language :: Python :: 3.9", + "Programming Language :: Python :: 3.10", + "Programming Language :: Python :: 3.11", "Intended Audience :: Science/Research", "Topic :: Scientific/Engineering :: Bio-Informatics" ] @@ -34,7 +37,7 @@ dependencies = [ "pandas>=2.0.0", "phenopackets>=2.0.2", "requests>=2.25.0", - "scipy>=1.11", + "scipy>=1.10", "statsmodels>=0.13.0", "numpy>=1.23" ] diff --git a/src/genophenocorr/data/_toy.py b/src/genophenocorr/data/_toy.py index 8c3b6df40..c85f850e5 100644 --- a/src/genophenocorr/data/_toy.py +++ b/src/genophenocorr/data/_toy.py @@ -1,6 +1,13 @@ from hpotk import TermId from genophenocorr.model import * +from genophenocorr.model.genome import Contig, GenomicRegion, Region, Strand + +CONTIG = Contig('1', 'GB_ACC', 'REFSEQ_NAME', 'UCSC_NAME', 1_000) + + +def make_region(start: int, end: int) -> GenomicRegion: + return GenomicRegion(CONTIG, start, end, Strand.POSITIVE) def get_toy_cohort() -> Cohort: @@ -25,39 +32,39 @@ def get_toy_cohort() -> Cohort: spasticity_F = Phenotype(TermId.from_curie('HP:0001257'), 'Spasticity', False) - prot_feat_1 = ProteinFeature.create(FeatureInfo('domain', 1, 75), FeatureType.DOMAIN) - prot_feat_2 = ProteinFeature.create(FeatureInfo('region', 50, 100), FeatureType.REGION) + prot_feat_1 = ProteinFeature.create(FeatureInfo('domain', Region(1, 75)), FeatureType.DOMAIN) + prot_feat_2 = ProteinFeature.create(FeatureInfo('region', Region(50, 100)), FeatureType.REGION) prot = ProteinMetadata('NP_09876.5', 'FakeProtein', [prot_feat_1, prot_feat_2]) het_snv = Variant.create_variant_from_scratch( 'HetVar1', 'SNV', - VariantCoordinates('chr1', 280, 281, 'A', 'G', 0, 'heterozygous'), - 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.180A>G', ['missense_variant'], + VariantCoordinates(make_region(280, 281), 'A', 'G', 0, 'heterozygous'), + 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.180A>G', False, ['missense_variant'], [1], [prot], 60, 60) het_del = Variant.create_variant_from_scratch( 'HetVar2', 'indel', - VariantCoordinates('chr1', 360, 363, 'TTC', 'T', -2, 'heterozygous'), - 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.261_263del', ['frameshift_variant'], + VariantCoordinates(make_region(360, 363), 'TTC', 'T', -2, 'heterozygous'), + 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.261_263del', False, ['frameshift_variant'], [2], [prot], 86, 87) het_dup = Variant.create_variant_from_scratch( 'HetVar3', 'insertion', - VariantCoordinates('chr1', 175, 176, 'T', 'TG', 1, 'heterozygous'), - 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.75A>G', ['frameshift_variant'], + VariantCoordinates(make_region(175, 176), 'T', 'TG', 1, 'heterozygous'), + 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.75A>G', False, ['frameshift_variant'], [1], [prot], 25, 25) hom_snv = Variant.create_variant_from_scratch( 'HomVar1', 'SNV', - VariantCoordinates('chr1', 280, 281, 'A', 'G', 0, 'homozygous'), - 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.180A>G', ['missense_variant'], + VariantCoordinates(make_region(280, 281), 'A', 'G', 0, 'homozygous'), + 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.180A>G', False, ['missense_variant'], [1], [prot], 60, 60) hom_del = Variant.create_variant_from_scratch( 'HomVar2', 'indel', - VariantCoordinates('chr1', 360, 363, 'TTC', 'T', -2, 'homozygous'), - 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.261_263del', ['frameshift_variant'], + VariantCoordinates(make_region(360, 363), 'TTC', 'T', -2, 'homozygous'), + 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.261_263del', False, ['frameshift_variant'], [2], [prot], 86, 87) hom_dup = Variant.create_variant_from_scratch( 'HomVar3', 'insertion', - VariantCoordinates('chr1', 175, 176, 'T', 'TG', 1,'homozygous'), - 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.75A>G', ['frameshift_variant'], + VariantCoordinates(make_region(175, 176), 'T', 'TG', 1,'homozygous'), + 'FakeGene', 'NM_1234.5', 'NM_1234.5:c.75A>G', False, ['frameshift_variant'], [1], [prot], 25, 25) patients = ( diff --git a/src/genophenocorr/model/__init__.py b/src/genophenocorr/model/__init__.py index d79801dd4..3a0d70357 100644 --- a/src/genophenocorr/model/__init__.py +++ b/src/genophenocorr/model/__init__.py @@ -2,15 +2,16 @@ The `genophenocorr.model` package defines data model classes used in genophenocorr. We start with the top-level elements, such as :class:`Cohort` and :class:`Patient`, and we follow with data classes for phenotype, genotype, and protein info. """ +from . import genome from ._cohort import Cohort, Patient from ._phenotype import Phenotype from ._protein import FeatureInfo, FeatureType, ProteinFeature, ProteinMetadata -from ._variant import VariantCoordinates, TranscriptAnnotation, Variant +from ._variant import VariantCoordinates, TranscriptAnnotation, TranscriptInfoAware, Variant __all__ = [ 'Cohort', 'Patient', 'Phenotype', - 'Variant', 'TranscriptAnnotation', 'VariantCoordinates', + 'Variant', 'VariantCoordinates', 'TranscriptAnnotation', 'TranscriptInfoAware', 'ProteinMetadata', 'ProteinFeature', 'FeatureInfo', 'FeatureType', ] diff --git a/src/genophenocorr/model/_protein.py b/src/genophenocorr/model/_protein.py index b6f8f4ea6..e3f8df282 100644 --- a/src/genophenocorr/model/_protein.py +++ b/src/genophenocorr/model/_protein.py @@ -2,6 +2,10 @@ import enum import typing +import hpotk + +from .genome import Region + class FeatureInfo: """A class that represents a protein feature @@ -9,30 +13,14 @@ class FeatureInfo: Attributes: name (string): The given name or description of the protein feature - start (integer): The starting position of the feature on the protein sequence - end (integer): The ending position of the feature on the protein sequence + region (Region): The protein feature region coordinates """ - def __init__(self, name: str, start: int, end: int): - """Constructs all necessary attributes for a FeatureInfo object - - Args: - name (string): The given name or description of the protein feature - start (integer): The starting position of the feature on the protein sequence - end (integer): The ending position of the feature on the protein sequence - """ + def __init__(self, name: str, region: Region): if not isinstance(name, str): raise ValueError(f"name must be type string but was type {type(name)}") - self._name = name - if not isinstance(start, int): - raise ValueError(f"start must be an integer but was type {type(start)}") - self._start = start - if not isinstance(end, int): - raise ValueError(f"end must be an integer but was type {type(end)}") - self._end = end - - if self._start > self._end: - raise ValueError(f"The start value must come before end but {self._start} is greater than {self._end}") + self._name = hpotk.util.validate_instance(name, str, 'name') + self._region = hpotk.util.validate_instance(region, Region, 'region') @property def name(self) -> str: @@ -42,13 +30,21 @@ def name(self) -> str: """ return self._name + @property + def region(self) -> Region: + """ + Returns: + Region: a protein region spanned by the feature. + """ + return self._region + @property def start(self) -> int: """ Returns: integer: A 0-based (excluded) start coordinate of the protein feature. """ - return self._start + return self._region.start @property def end(self) -> int: @@ -56,19 +52,18 @@ def end(self) -> int: Returns: integer: A 0-based (included) end coordinate of the protein feature. """ - return self._end + return self._region.end def __len__(self): - return self._end - self._start + return len(self._region) def __eq__(self, other) -> bool: return isinstance(other, FeatureInfo) \ and self.name == other.name \ - and self.start == other.start \ - and self.end == other.end + and self.region == other.region def __hash__(self): - return hash((self._name, self._start, self._end)) + return hash((self._name, self._region)) def __str__(self) -> str: return f"FeatureInfo(name={self.name}, start={self.start}, end={self.end})" @@ -264,4 +259,4 @@ def __hash__(self) -> int: return hash((self.protein_id, self.label, self._features)) def __repr__(self) -> str: - return str(self) \ No newline at end of file + return str(self) diff --git a/src/genophenocorr/model/_variant.py b/src/genophenocorr/model/_variant.py index 77eaa7f4b..3e492da95 100644 --- a/src/genophenocorr/model/_variant.py +++ b/src/genophenocorr/model/_variant.py @@ -1,5 +1,9 @@ +import abc import typing +import hpotk.util + +from .genome import GenomicRegion from ._protein import ProteinMetadata @@ -8,7 +12,7 @@ class VariantCoordinates: The breakend variants are not supported. Attributes: - chrom (string): Chromosome variant coordinates are located on + chrom (string): Chromosome name such as `1`, `X`, `MT` start (integer): The 0-based starting coordinate of the ref allele end (integer): The 0-based ending coordinate of the ref allele ref (string): The reference allele @@ -20,7 +24,9 @@ class VariantCoordinates: as_string: Returns a readable representation of the variant coordinate """ - def __init__(self, chrom: str, start: int, end: int, ref: str, alt: str, change_length: int, genotype: str): + # TODO - should use/extend `genophenocorr.model.genome.GenomicRegion` + + def __init__(self, region: GenomicRegion, ref: str, alt: str, change_length: int, genotype: str): """Constructs all necessary attributes for a VariantCoordinates object Args: @@ -34,9 +40,7 @@ def __init__(self, chrom: str, start: int, end: int, ref: str, alt: str, change_ """ # TODO(lnrekerle) - instance/type check # TODO - id? - self._chrom = chrom - self._start = start - self._end = end + self._region = hpotk.util.validate_instance(region, GenomicRegion, 'region') self._ref = ref self._alt = alt self._change_length = change_length @@ -48,7 +52,7 @@ def chrom(self) -> str: Returns: string: The label of the chromosome/contig where the variant is located. """ - return self._chrom + return self._region.contig.name @property def start(self) -> int: @@ -56,7 +60,7 @@ def start(self) -> int: Returns: integer: The 0-based start coordinate (excluded) of the ref allele. """ - return self._start + return self._region.start @property def end(self) -> int: @@ -64,7 +68,15 @@ def end(self) -> int: Returns: integer: The 0-based end coordinate (included) of the ref allele. """ - return self._end + return self._region.end + + @property + def region(self) -> GenomicRegion: + """ + Returns: + GenomicRegion: The genomic region spanned by the ref allele. + """ + return self._region @property def ref(self) -> str: @@ -121,7 +133,7 @@ def __len__(self): """ Get the number of bases on the ref allele that are affected by the variant. """ - return self._end - self._start + return len(self._region) def __eq__(self, other) -> bool: return isinstance(other, VariantCoordinates) \ @@ -144,16 +156,42 @@ def __repr__(self) -> str: return str(self) def __hash__(self) -> int: - return hash((self._chrom, self._start, self._end, self._ref, self._alt, self._change_length, self._genotype)) + return hash((self._region, self._ref, self._alt, self._change_length, self._genotype)) + + +class TranscriptInfoAware(metaclass=abc.ABCMeta): + """ + The implementors know about basic gene/transcript identifiers. + """ + + + @property + @abc.abstractmethod + def gene_id(self) -> str: + """ + Returns: + string: The gene symbol (e.g. SURF1) + """ + pass + @property + @abc.abstractmethod + def transcript_id(self) -> str: + """ + Returns: + string: The transcript RefSeq identifier (e.g. NM_123456.7) + """ + pass -class TranscriptAnnotation: + +class TranscriptAnnotation(TranscriptInfoAware): """Class that represents results of the functional annotation of a variant with respect to single transcript of a gene. Attributes: gene_id (string): The gene symbol associated with the transcript transcript_id (string): The transcript ID hgvsc_id (string): The HGVS "coding-DNA" ID if available, else None + is_preferred (bool): The transcript is a MANE transcript, canonical Ensembl transcript, etc. variant_effects (Sequence[string]): A sequence of predicted effects given by VEP overlapping_exons (Sequence[integer]): A sequence of exons affected by the variant. Returns None if none are affected. protein_affected (ProteinMetadata): A ProteinMetadata object representing the protein affected by this transcript @@ -163,6 +201,7 @@ class TranscriptAnnotation: def __init__(self, gene_id: str, tx_id: str, hgvsc: typing.Optional[str], + is_preferred: bool, variant_effects, affected_exons: typing.Optional[typing.Sequence[int]], affected_protein: typing.Sequence[ProteinMetadata], @@ -183,6 +222,7 @@ def __init__(self, gene_id: str, self._gene_id = gene_id self._tx_id = tx_id self._hgvsc_id = hgvsc + self._is_preferred = is_preferred self._variant_effects = tuple(variant_effects) if affected_exons is not None: self._affected_exons = tuple(affected_exons) @@ -207,6 +247,14 @@ def transcript_id(self) -> str: """ return self._tx_id + @property + def is_preferred(self) -> bool: + """ + Return `True` if the transcript is the preferred transcript of a gene, + such as MANE transcript, canonical Ensembl transcript. + """ + return self._is_preferred + @property def hgvsc_id(self) -> str: """ @@ -252,6 +300,7 @@ def __str__(self) -> str: return f"TranscriptAnnotation(gene_id:{self.gene_id}," \ f"transcript_id:{self.transcript_id}," \ f"hgvsc_id:{self.hgvsc_id}," \ + f"is_preferred:{self.is_preferred}," \ f"variant_effects:{self.variant_effects}," \ f"overlapping_exons:{self.overlapping_exons}," \ f"protein_affected:{self.protein_affected}," \ @@ -261,6 +310,7 @@ def __eq__(self, other) -> bool: return isinstance(other, TranscriptAnnotation) \ and self.gene_id == other.gene_id \ and self.hgvsc_id == other.hgvsc_id \ + and self.is_preferred == other.is_preferred \ and self.transcript_id == other.transcript_id \ and self.variant_effects == other.variant_effects \ and self.overlapping_exons == other.overlapping_exons \ @@ -271,7 +321,7 @@ def __repr__(self) -> str: return str(self) def __hash__(self) -> int: - return hash((self.gene_id, self.hgvsc_id, self.transcript_id, self.overlapping_exons, self.variant_effects, + return hash((self.gene_id, self.hgvsc_id, self.is_preferred, self.transcript_id, self.overlapping_exons, self.variant_effects, self.protein_affected, self.protein_effect_location)) @@ -293,12 +343,13 @@ def create_variant_from_scratch(variant_id: str, gene_name: str, trans_id: str, hgvsc_id: str, + is_preferred: bool, consequences: typing.Sequence[str], exons_effected: typing.Sequence[int], protein: typing.Sequence[ProteinMetadata], protein_effect_start: int, protein_effect_end: int): - transcript = TranscriptAnnotation(gene_name, trans_id, hgvsc_id, consequences, exons_effected, protein, + transcript = TranscriptAnnotation(gene_name, trans_id, hgvsc_id, is_preferred, consequences, exons_effected, protein, protein_effect_start, protein_effect_end) return Variant(variant_id, variant_class, variant_coordinates, [transcript], variant_coordinates.genotype) diff --git a/src/genophenocorr/model/genome/GCF_000001405.25_GRCh37.p13_assembly_report.tsv b/src/genophenocorr/model/genome/GCF_000001405.25_GRCh37.p13_assembly_report.tsv new file mode 100644 index 000000000..bd18d4201 --- /dev/null +++ b/src/genophenocorr/model/genome/GCF_000001405.25_GRCh37.p13_assembly_report.tsv @@ -0,0 +1,333 @@ +# Assembly name: GRCh37.p13 +# Description: Genome Reference Consortium Human Build 37 patch release 13 (GRCh37.p13) +# Organism name: Homo sapiens (human) +# Taxid: 9606 +# BioProject: PRJNA31257 +# Submitter: Genome Reference Consortium +# Date: 2013-06-28 +# Assembly type: haploid-with-alt-loci +# Release type: patch +# Assembly level: Chromosome +# Genome representation: full +# GenBank assembly accession: GCA_000001405.14 +# RefSeq assembly accession: GCF_000001405.25 +# RefSeq assembly and GenBank assemblies identical: yes +# +## Assembly-Units: +## GenBank Unit Accession RefSeq Unit Accession Assembly-Unit name +## GCA_000001305.1 GCF_000001305.13 Primary Assembly +## GCA_000005045.13 GCF_000005045.12 PATCHES +## GCA_000001315.1 GCF_000001315.1 ALT_REF_LOCI_1 +## GCA_000001325.1 GCF_000001325.2 ALT_REF_LOCI_2 +## GCA_000001335.1 GCF_000001335.1 ALT_REF_LOCI_3 +## GCA_000001345.1 GCF_000001345.1 ALT_REF_LOCI_4 +## GCA_000001355.1 GCF_000001355.1 ALT_REF_LOCI_5 +## GCA_000001365.1 GCF_000001365.2 ALT_REF_LOCI_6 +## GCA_000001375.1 GCF_000001375.1 ALT_REF_LOCI_7 +## GCA_000001385.1 GCF_000001385.1 ALT_REF_LOCI_8 +## GCA_000001395.1 GCF_000001395.1 ALT_REF_LOCI_9 +## GCA_000006015.1 GCF_000006015.1 non-nuclear +# +# Ordered by chromosome/plasmid; the chromosomes/plasmids are followed by +# unlocalized scaffolds. +# Unplaced scaffolds are listed at the end. +# RefSeq is equal or derived from GenBank object. +# +# Sequence-Name Sequence-Role Assigned-Molecule Assigned-Molecule-Location/Type GenBank-Accn Relationship RefSeq-Accn Assembly-Unit Sequence-Length UCSC-style-name +1 assembled-molecule 1 Chromosome CM000663.1 = NC_000001.10 Primary Assembly 249250621 chr1 +2 assembled-molecule 2 Chromosome CM000664.1 = NC_000002.11 Primary Assembly 243199373 chr2 +3 assembled-molecule 3 Chromosome CM000665.1 = NC_000003.11 Primary Assembly 198022430 chr3 +4 assembled-molecule 4 Chromosome CM000666.1 = NC_000004.11 Primary Assembly 191154276 chr4 +5 assembled-molecule 5 Chromosome CM000667.1 = NC_000005.9 Primary Assembly 180915260 chr5 +6 assembled-molecule 6 Chromosome CM000668.1 = NC_000006.11 Primary Assembly 171115067 chr6 +7 assembled-molecule 7 Chromosome CM000669.1 = NC_000007.13 Primary Assembly 159138663 chr7 +8 assembled-molecule 8 Chromosome CM000670.1 = NC_000008.10 Primary Assembly 146364022 chr8 +9 assembled-molecule 9 Chromosome CM000671.1 = NC_000009.11 Primary Assembly 141213431 chr9 +10 assembled-molecule 10 Chromosome CM000672.1 = NC_000010.10 Primary Assembly 135534747 chr10 +11 assembled-molecule 11 Chromosome CM000673.1 = NC_000011.9 Primary Assembly 135006516 chr11 +12 assembled-molecule 12 Chromosome CM000674.1 = NC_000012.11 Primary Assembly 133851895 chr12 +13 assembled-molecule 13 Chromosome CM000675.1 = NC_000013.10 Primary Assembly 115169878 chr13 +14 assembled-molecule 14 Chromosome CM000676.1 = NC_000014.8 Primary Assembly 107349540 chr14 +15 assembled-molecule 15 Chromosome CM000677.1 = NC_000015.9 Primary Assembly 102531392 chr15 +16 assembled-molecule 16 Chromosome CM000678.1 = NC_000016.9 Primary Assembly 90354753 chr16 +17 assembled-molecule 17 Chromosome CM000679.1 = NC_000017.10 Primary Assembly 81195210 chr17 +18 assembled-molecule 18 Chromosome CM000680.1 = NC_000018.9 Primary Assembly 78077248 chr18 +19 assembled-molecule 19 Chromosome CM000681.1 = NC_000019.9 Primary Assembly 59128983 chr19 +20 assembled-molecule 20 Chromosome CM000682.1 = NC_000020.10 Primary Assembly 63025520 chr20 +21 assembled-molecule 21 Chromosome CM000683.1 = NC_000021.8 Primary Assembly 48129895 chr21 +22 assembled-molecule 22 Chromosome CM000684.1 = NC_000022.10 Primary Assembly 51304566 chr22 +X assembled-molecule X Chromosome CM000685.1 = NC_000023.10 Primary Assembly 155270560 chrX +Y assembled-molecule Y Chromosome CM000686.1 = NC_000024.9 Primary Assembly 59373566 chrY +HSCHR1_RANDOM_CTG5 unlocalized-scaffold 1 Chromosome GL000191.1 = NT_113878.1 Primary Assembly 106433 chr1_gl000191_random +HSCHR1_RANDOM_CTG12 unlocalized-scaffold 1 Chromosome GL000192.1 = NT_167207.1 Primary Assembly 547496 chr1_gl000192_random +HSCHR4_RANDOM_CTG2 unlocalized-scaffold 4 Chromosome GL000193.1 = NT_113885.1 Primary Assembly 189789 chr4_gl000193_random +HSCHR4_RANDOM_CTG3 unlocalized-scaffold 4 Chromosome GL000194.1 = NT_113888.1 Primary Assembly 191469 chr4_gl000194_random +HSCHR7_RANDOM_CTG1 unlocalized-scaffold 7 Chromosome GL000195.1 = NT_113901.1 Primary Assembly 182896 chr7_gl000195_random +HSCHR8_RANDOM_CTG1 unlocalized-scaffold 8 Chromosome GL000196.1 = NT_113909.1 Primary Assembly 38914 chr8_gl000196_random +HSCHR8_RANDOM_CTG4 unlocalized-scaffold 8 Chromosome GL000197.1 = NT_113907.1 Primary Assembly 37175 chr8_gl000197_random +HSCHR9_RANDOM_CTG1 unlocalized-scaffold 9 Chromosome GL000198.1 = NT_113914.1 Primary Assembly 90085 chr9_gl000198_random +HSCHR9_RANDOM_CTG2 unlocalized-scaffold 9 Chromosome GL000199.1 = NT_113916.2 Primary Assembly 169874 chr9_gl000199_random +HSCHR9_RANDOM_CTG4 unlocalized-scaffold 9 Chromosome GL000200.1 = NT_113915.1 Primary Assembly 187035 chr9_gl000200_random +HSCHR9_RANDOM_CTG5 unlocalized-scaffold 9 Chromosome GL000201.1 = NT_113911.1 Primary Assembly 36148 chr9_gl000201_random +HSCHR11_RANDOM_CTG2 unlocalized-scaffold 11 Chromosome GL000202.1 = NT_113921.2 Primary Assembly 40103 chr11_gl000202_random +HSCHR17_RANDOM_CTG1 unlocalized-scaffold 17 Chromosome GL000203.1 = NT_113941.1 Primary Assembly 37498 chr17_gl000203_random +HSCHR17_RANDOM_CTG2 unlocalized-scaffold 17 Chromosome GL000204.1 = NT_113943.1 Primary Assembly 81310 chr17_gl000204_random +HSCHR17_RANDOM_CTG3 unlocalized-scaffold 17 Chromosome GL000205.1 = NT_113930.1 Primary Assembly 174588 chr17_gl000205_random +HSCHR17_RANDOM_CTG4 unlocalized-scaffold 17 Chromosome GL000206.1 = NT_113945.1 Primary Assembly 41001 chr17_gl000206_random +HSCHR18_RANDOM_CTG1 unlocalized-scaffold 18 Chromosome GL000207.1 = NT_113947.1 Primary Assembly 4262 chr18_gl000207_random +HSCHR19_RANDOM_CTG1 unlocalized-scaffold 19 Chromosome GL000208.1 = NT_113948.1 Primary Assembly 92689 chr19_gl000208_random +HSCHR19_RANDOM_CTG2 unlocalized-scaffold 19 Chromosome GL000209.1 = NT_113949.1 Primary Assembly 159169 chr19_gl000209_random +HSCHR21_RANDOM_CTG9 unlocalized-scaffold 21 Chromosome GL000210.1 = NT_113950.2 Primary Assembly 27682 chr21_gl000210_random +HSCHRUN_RANDOM_CTG1 unplaced-scaffold na na GL000211.1 = NT_113961.1 Primary Assembly 166566 chrUn_gl000211 +HSCHRUN_RANDOM_CTG2 unplaced-scaffold na na GL000212.1 = NT_113923.1 Primary Assembly 186858 chrUn_gl000212 +HSCHRUN_RANDOM_CTG3 unplaced-scaffold na na GL000213.1 = NT_167208.1 Primary Assembly 164239 chrUn_gl000213 +HSCHRUN_RANDOM_CTG4 unplaced-scaffold na na GL000214.1 = NT_167209.1 Primary Assembly 137718 chrUn_gl000214 +HSCHRUN_RANDOM_CTG5 unplaced-scaffold na na GL000215.1 = NT_167210.1 Primary Assembly 172545 chrUn_gl000215 +HSCHRUN_RANDOM_CTG6 unplaced-scaffold na na GL000216.1 = NT_167211.1 Primary Assembly 172294 chrUn_gl000216 +HSCHRUN_RANDOM_CTG7 unplaced-scaffold na na GL000217.1 = NT_167212.1 Primary Assembly 172149 chrUn_gl000217 +HSCHRUN_RANDOM_CTG9 unplaced-scaffold na na GL000218.1 = NT_113889.1 Primary Assembly 161147 chrUn_gl000218 +HSCHRUN_RANDOM_CTG10 unplaced-scaffold na na GL000219.1 = NT_167213.1 Primary Assembly 179198 chrUn_gl000219 +HSCHRUN_RANDOM_CTG11 unplaced-scaffold na na GL000220.1 = NT_167214.1 Primary Assembly 161802 chrUn_gl000220 +HSCHRUN_RANDOM_CTG13 unplaced-scaffold na na GL000221.1 = NT_167215.1 Primary Assembly 155397 chrUn_gl000221 +HSCHRUN_RANDOM_CTG14 unplaced-scaffold na na GL000222.1 = NT_167216.1 Primary Assembly 186861 chrUn_gl000222 +HSCHRUN_RANDOM_CTG15 unplaced-scaffold na na GL000223.1 = NT_167217.1 Primary Assembly 180455 chrUn_gl000223 +HSCHRUN_RANDOM_CTG16 unplaced-scaffold na na GL000224.1 = NT_167218.1 Primary Assembly 179693 chrUn_gl000224 +HSCHRUN_RANDOM_CTG17 unplaced-scaffold na na GL000225.1 = NT_167219.1 Primary Assembly 211173 chrUn_gl000225 +HSCHRUN_RANDOM_CTG19 unplaced-scaffold na na GL000226.1 = NT_167220.1 Primary Assembly 15008 chrUn_gl000226 +HSCHRUN_RANDOM_CTG20 unplaced-scaffold na na GL000227.1 = NT_167221.1 Primary Assembly 128374 chrUn_gl000227 +HSCHRUN_RANDOM_CTG21 unplaced-scaffold na na GL000228.1 = NT_167222.1 Primary Assembly 129120 chrUn_gl000228 +HSCHRUN_RANDOM_CTG22 unplaced-scaffold na na GL000229.1 = NT_167223.1 Primary Assembly 19913 chrUn_gl000229 +HSCHRUN_RANDOM_CTG23 unplaced-scaffold na na GL000230.1 = NT_167224.1 Primary Assembly 43691 chrUn_gl000230 +HSCHRUN_RANDOM_CTG24 unplaced-scaffold na na GL000231.1 = NT_167225.1 Primary Assembly 27386 chrUn_gl000231 +HSCHRUN_RANDOM_CTG25 unplaced-scaffold na na GL000232.1 = NT_167226.1 Primary Assembly 40652 chrUn_gl000232 +HSCHRUN_RANDOM_CTG26 unplaced-scaffold na na GL000233.1 = NT_167227.1 Primary Assembly 45941 chrUn_gl000233 +HSCHRUN_RANDOM_CTG27 unplaced-scaffold na na GL000234.1 = NT_167228.1 Primary Assembly 40531 chrUn_gl000234 +HSCHRUN_RANDOM_CTG28 unplaced-scaffold na na GL000235.1 = NT_167229.1 Primary Assembly 34474 chrUn_gl000235 +HSCHRUN_RANDOM_CTG29 unplaced-scaffold na na GL000236.1 = NT_167230.1 Primary Assembly 41934 chrUn_gl000236 +HSCHRUN_RANDOM_CTG30 unplaced-scaffold na na GL000237.1 = NT_167231.1 Primary Assembly 45867 chrUn_gl000237 +HSCHRUN_RANDOM_CTG31 unplaced-scaffold na na GL000238.1 = NT_167232.1 Primary Assembly 39939 chrUn_gl000238 +HSCHRUN_RANDOM_CTG32 unplaced-scaffold na na GL000239.1 = NT_167233.1 Primary Assembly 33824 chrUn_gl000239 +HSCHRUN_RANDOM_CTG33 unplaced-scaffold na na GL000240.1 = NT_167234.1 Primary Assembly 41933 chrUn_gl000240 +HSCHRUN_RANDOM_CTG34 unplaced-scaffold na na GL000241.1 = NT_167235.1 Primary Assembly 42152 chrUn_gl000241 +HSCHRUN_RANDOM_CTG35 unplaced-scaffold na na GL000242.1 = NT_167236.1 Primary Assembly 43523 chrUn_gl000242 +HSCHRUN_RANDOM_CTG36 unplaced-scaffold na na GL000243.1 = NT_167237.1 Primary Assembly 43341 chrUn_gl000243 +HSCHRUN_RANDOM_CTG37 unplaced-scaffold na na GL000244.1 = NT_167238.1 Primary Assembly 39929 chrUn_gl000244 +HSCHRUN_RANDOM_CTG38 unplaced-scaffold na na GL000245.1 = NT_167239.1 Primary Assembly 36651 chrUn_gl000245 +HSCHRUN_RANDOM_CTG39 unplaced-scaffold na na GL000246.1 = NT_167240.1 Primary Assembly 38154 chrUn_gl000246 +HSCHRUN_RANDOM_CTG40 unplaced-scaffold na na GL000247.1 = NT_167241.1 Primary Assembly 36422 chrUn_gl000247 +HSCHRUN_RANDOM_CTG41 unplaced-scaffold na na GL000248.1 = NT_167242.1 Primary Assembly 39786 chrUn_gl000248 +HSCHRUN_RANDOM_CTG42 unplaced-scaffold na na GL000249.1 = NT_167243.1 Primary Assembly 38502 chrUn_gl000249 +HG999_1_PATCH fix-patch 1 Chromosome GL383516.1 = NW_003315903.1 PATCHES 49316 na +HG999_2_PATCH fix-patch 1 Chromosome GL383517.1 = NW_003315904.1 PATCHES 49352 na +HG989_PATCH fix-patch 1 Chromosome GL949741.1 = NW_003571030.1 PATCHES 151551 na +HG1287_PATCH fix-patch 1 Chromosome JH636052.4 = NW_003871055.3 PATCHES 7283150 na +HG1292_PATCH fix-patch 1 Chromosome JH636053.3 = NW_003871056.3 PATCHES 1676126 na +HG1293_PATCH fix-patch 1 Chromosome JH636054.1 = NW_003871057.1 PATCHES 758378 na +HG1471_PATCH fix-patch 1 Chromosome JH806573.1 = NW_004070863.1 PATCHES 24680 na +HG1472_PATCH fix-patch 1 Chromosome JH806574.2 = NW_004070864.2 PATCHES 22982 na +HG1473_PATCH fix-patch 1 Chromosome JH806575.1 = NW_004070865.1 PATCHES 47409 na +HSCHR1_1_CTG31 novel-patch 1 Chromosome GL383518.1 = NW_003315905.1 PATCHES 182439 na +HSCHR1_2_CTG31 novel-patch 1 Chromosome GL383519.1 = NW_003315906.1 PATCHES 110268 na +HSCHR1_3_CTG31 novel-patch 1 Chromosome GL383520.1 = NW_003315907.1 PATCHES 366579 na +HG1007_PATCH fix-patch 2 Chromosome GL877870.2 = NW_003571031.1 PATCHES 66021 na +HG686_PATCH fix-patch 2 Chromosome GL877871.1 = NW_003571032.1 PATCHES 389939 na +HG953_PATCH fix-patch 2 Chromosome KB663603.1 = NW_004504299.1 PATCHES 599580 na +HSCHR2_1_CTG1 novel-patch 2 Chromosome GL383521.1 = NW_003315908.1 PATCHES 143390 na +HSCHR2_1_CTG12 novel-patch 2 Chromosome GL383522.1 = NW_003315909.1 PATCHES 123821 na +HSCHR2_2_CTG12 novel-patch 2 Chromosome GL582966.2 = NW_003571033.2 PATCHES 96131 na +HG186_PATCH fix-patch 3 Chromosome GL383523.1 = NW_003315910.1 PATCHES 171362 na +HG280_PATCH fix-patch 3 Chromosome GL383524.1 = NW_003315911.1 PATCHES 78793 na +HG991_PATCH fix-patch 3 Chromosome GL383525.1 = NW_003315912.1 PATCHES 65063 na +HG1091_PATCH fix-patch 3 Chromosome JH159131.1 = NW_003871058.1 PATCHES 393769 na +HG325_PATCH fix-patch 3 Chromosome JH159132.1 = NW_003871059.1 PATCHES 100694 na +HG957_PATCH fix-patch 3 Chromosome KE332495.1 = NW_004775426.1 PATCHES 263861 na +HSCHR3_1_CTG2_1 novel-patch 3 Chromosome GL383526.1 = NW_003315913.1 PATCHES 180671 na +HSCHR3_1_CTG1 novel-patch 3 Chromosome JH636055.1 = NW_003871060.1 PATCHES 173151 na +HG706_PATCH fix-patch 4 Chromosome GL582967.1 = NW_003571035.1 PATCHES 248177 na +HG1032_PATCH fix-patch 4 Chromosome GL877872.1 = NW_003571034.1 PATCHES 297485 na +HG174_HG254_PATCH fix-patch 4 Chromosome KE332496.1 = NW_004775427.1 PATCHES 503215 na +HSCHR4_1_CTG12 novel-patch 4 Chromosome GL383527.1 = NW_003315914.1 PATCHES 164536 na +HSCHR4_1_CTG6 novel-patch 4 Chromosome GL383528.1 = NW_003315915.1 PATCHES 376187 na +HSCHR4_2_CTG9 novel-patch 4 Chromosome GL383529.1 = NW_003315916.1 PATCHES 121345 na +HG1063_PATCH fix-patch 5 Chromosome JH159133.1 = NW_003871061.1 PATCHES 266316 na +HG1082_HG167_PATCH fix-patch 5 Chromosome KE332497.1 = NW_004775428.1 PATCHES 543325 na +HSCHR5_1_CTG1 novel-patch 5 Chromosome GL339449.2 = NW_003315917.2 PATCHES 1612928 na +HSCHR5_1_CTG2 novel-patch 5 Chromosome GL383530.1 = NW_003315918.1 PATCHES 101241 na +HSCHR5_1_CTG5 novel-patch 5 Chromosome GL383531.1 = NW_003315919.1 PATCHES 173459 na +HSCHR5_2_CTG1 novel-patch 5 Chromosome GL383532.1 = NW_003315920.1 PATCHES 82728 na +HSCHR5_3_CTG1 novel-patch 5 Chromosome GL949742.1 = NW_003571036.1 PATCHES 226852 na +HG1304_PATCH fix-patch 6 Chromosome JH636056.1 = NW_003871062.1 PATCHES 262912 na +HG1322_PATCH fix-patch 6 Chromosome JH636057.1 = NW_003871063.1 PATCHES 200195 na +HG27_PATCH fix-patch 6 Chromosome JH806576.1 = NW_004070866.1 PATCHES 273386 na +HG357_PATCH fix-patch 6 Chromosome KB663604.1 = NW_004504300.1 PATCHES 478993 na +HG193_PATCH fix-patch 6 Chromosome KE332498.1 = NW_004775429.1 PATCHES 149443 na +HSCHR6_1_CTG5 novel-patch 6 Chromosome GL383533.1 = NW_003315921.1 PATCHES 124736 na +HSCHR6_2_CTG5 novel-patch 6 Chromosome KB021644.1 = NW_004166862.1 PATCHES 187824 na +HG115_PATCH fix-patch 7 Chromosome GL582968.1 = NW_003571037.1 PATCHES 356330 na +HG14_PATCH fix-patch 7 Chromosome GL582969.1 = NW_003571038.1 PATCHES 251823 na +HG736_PATCH fix-patch 7 Chromosome GL582970.1 = NW_003571039.1 PATCHES 354970 na +HG7_PATCH fix-patch 7 Chromosome GL582971.1 = NW_003571040.1 PATCHES 1284284 na +HG946_PATCH fix-patch 7 Chromosome GL582972.1 = NW_003571041.1 PATCHES 327774 na +HG1257_PATCH fix-patch 7 Chromosome JH159134.2 = NW_003871064.1 PATCHES 3821770 na +HG1308_PATCH fix-patch 7 Chromosome JH636058.1 = NW_003871065.1 PATCHES 716227 na +HG444_PATCH fix-patch 7 Chromosome KE332499.1 = NW_004775430.1 PATCHES 274521 na +HSCHR7_1_CTG6 novel-patch 7 Chromosome GL383534.2 = NW_003315922.2 PATCHES 119183 na +HG104_HG975_PATCH fix-patch 8 Chromosome GL383535.1 = NW_003315923.1 PATCHES 429806 na +HG243_PATCH fix-patch 8 Chromosome GL383536.1 = NW_003315924.1 PATCHES 203777 na +HG19_PATCH fix-patch 8 Chromosome GL949743.1 = NW_003571042.1 PATCHES 608579 na +HG418_PATCH fix-patch 8 Chromosome JH159135.2 = NW_003871066.2 PATCHES 102251 na +HG1699_PATCH fix-patch 8 Chromosome KE332500.1 = NW_004775431.1 PATCHES 228602 na +HG79_PATCH fix-patch 9 Chromosome GL339450.1 = NW_003315925.1 PATCHES 330164 na +HG998_1_PATCH fix-patch 9 Chromosome GL383537.1 = NW_003315926.1 PATCHES 62435 na +HG998_2_PATCH fix-patch 9 Chromosome GL383538.1 = NW_003315927.1 PATCHES 49281 na +HG962_PATCH fix-patch 9 Chromosome JH636059.1 = NW_003871067.1 PATCHES 295379 na +HG1500_PATCH fix-patch 9 Chromosome JH806577.1 = NW_004070867.1 PATCHES 22394 na +HG1501_PATCH fix-patch 9 Chromosome JH806578.1 = NW_004070868.1 PATCHES 169437 na +HG1502_PATCH fix-patch 9 Chromosome JH806579.1 = NW_004070869.1 PATCHES 211307 na +HG50_PATCH fix-patch 9 Chromosome KB663605.1 = NW_004504301.1 PATCHES 155926 na +HSCHR9_1_CTG1 novel-patch 9 Chromosome GL383539.1 = NW_003315928.1 PATCHES 162988 na +HSCHR9_1_CTG35 novel-patch 9 Chromosome GL383540.1 = NW_003315929.1 PATCHES 71551 na +HSCHR9_2_CTG35 novel-patch 9 Chromosome GL383541.1 = NW_003315930.1 PATCHES 171286 na +HSCHR9_3_CTG35 novel-patch 9 Chromosome GL383542.1 = NW_003315931.1 PATCHES 60032 na +HG544_PATCH fix-patch 10 Chromosome GL383543.1 = NW_003315932.1 PATCHES 392792 na +HG995_PATCH fix-patch 10 Chromosome GL383544.1 = NW_003315933.1 PATCHES 128378 na +HG905_PATCH fix-patch 10 Chromosome GL877873.1 = NW_003571043.1 PATCHES 168465 na +HG1211_PATCH fix-patch 10 Chromosome JH591181.2 = NW_003871068.1 PATCHES 2281126 na +HG311_PATCH fix-patch 10 Chromosome JH591182.1 = NW_003871069.1 PATCHES 196262 na +HG339_PATCH fix-patch 10 Chromosome JH591183.1 = NW_003871070.1 PATCHES 177920 na +HG871_PATCH fix-patch 10 Chromosome JH636060.1 = NW_003871071.1 PATCHES 437946 na +HG1479_PATCH fix-patch 10 Chromosome JH806580.1 = NW_004070870.1 PATCHES 93149 na +HG1074_PATCH fix-patch 10 Chromosome KB663606.1 = NW_004504302.1 PATCHES 305900 na +HG979_PATCH fix-patch 10 Chromosome KE332501.1 = NW_004775432.1 PATCHES 1020827 na +HSCHR10_1_CTG2 novel-patch 10 Chromosome GL383545.1 = NW_003315934.1 PATCHES 179254 na +HSCHR10_1_CTG5 novel-patch 10 Chromosome GL383546.1 = NW_003315935.1 PATCHES 309802 na +HG281_PATCH fix-patch 11 Chromosome GL582973.1 = NW_003571045.1 PATCHES 321004 na +HG536_PATCH fix-patch 11 Chromosome GL949744.1 = NW_003571046.1 PATCHES 276448 na +HG299_PATCH fix-patch 11 Chromosome JH159138.1 = NW_003871076.1 PATCHES 108875 na +HG305_PATCH fix-patch 11 Chromosome JH159139.1 = NW_003871077.1 PATCHES 120441 na +HG306_PATCH fix-patch 11 Chromosome JH159140.1 = NW_003871078.1 PATCHES 546435 na +HG348_PATCH fix-patch 11 Chromosome JH159141.2 = NW_003871079.1 PATCHES 240775 na +HG388_HG400_PATCH fix-patch 11 Chromosome JH159142.2 = NW_003871080.1 PATCHES 326647 na +HG414_PATCH fix-patch 11 Chromosome JH159143.1 = NW_003871081.1 PATCHES 191402 na +HG256_PATCH fix-patch 11 Chromosome JH591184.1 = NW_003871075.1 PATCHES 462282 na +HG873_PATCH fix-patch 11 Chromosome JH591185.1 = NW_003871082.1 PATCHES 167437 na +HG122_PATCH fix-patch 11 Chromosome JH720443.2 = NW_003871072.2 PATCHES 408430 na +HG865_PATCH fix-patch 11 Chromosome JH806581.1 = NW_004070871.1 PATCHES 872115 na +HSCHR11_1_CTG1_1 novel-patch 11 Chromosome GL383547.1 = NW_003315936.1 PATCHES 154407 na +HG142_HG150_NOVEL_TEST novel-patch 11 Chromosome JH159136.1 = NW_003871073.1 PATCHES 200998 na +HG151_NOVEL_TEST novel-patch 11 Chromosome JH159137.1 = NW_003871074.1 PATCHES 191409 na +HG996_PATCH fix-patch 12 Chromosome GL383548.1 = NW_003315937.1 PATCHES 165247 na +HG858_PATCH fix-patch 12 Chromosome GL582974.1 = NW_003571048.1 PATCHES 163298 na +HG344_PATCH fix-patch 12 Chromosome JH720444.2 = NW_003871083.2 PATCHES 273128 na +HG1595_PATCH fix-patch 12 Chromosome KB663607.2 = NW_004504303.2 PATCHES 334922 na +HSCHR12_1_CTG2 novel-patch 12 Chromosome GL383549.1 = NW_003315938.1 PATCHES 120804 na +HSCHR12_1_CTG2_1 novel-patch 12 Chromosome GL383550.1 = NW_003315939.1 PATCHES 169178 na +HSCHR12_1_CTG5 novel-patch 12 Chromosome GL383551.1 = NW_003315940.1 PATCHES 184319 na +HSCHR12_2_CTG2_1 novel-patch 12 Chromosome GL383552.1 = NW_003315941.1 PATCHES 138655 na +HSCHR12_3_CTG2_1 novel-patch 12 Chromosome GL383553.2 = NW_003315942.2 PATCHES 152874 na +HSCHR12_1_CTG1 novel-patch 12 Chromosome GL877875.1 = NW_003571049.1 PATCHES 167313 na +HSCHR12_2_CTG2 novel-patch 12 Chromosome GL877876.1 = NW_003571050.1 PATCHES 408271 na +HG1133_PATCH novel-patch 12 Chromosome GL949745.1 = NW_003571047.1 PATCHES 372609 na +HG531_PATCH fix-patch 13 Chromosome GL582975.1 = NW_003571051.1 PATCHES 34662 na +HG1592_PATCH fix-patch 14 Chromosome KB021645.1 = NW_004166863.1 PATCHES 1523386 na +HG971_PATCH fix-patch 15 Chromosome JH720445.1 = NW_003871084.1 PATCHES 170033 na +HSCHR15_1_CTG4 novel-patch 15 Chromosome GL383554.1 = NW_003315943.1 PATCHES 296527 na +HSCHR15_1_CTG8 novel-patch 15 Chromosome GL383555.1 = NW_003315944.1 PATCHES 388773 na +HG1208_PATCH fix-patch 16 Chromosome JH720446.1 = NW_003871085.1 PATCHES 97345 na +HSCHR16_1_CTG3_1 novel-patch 16 Chromosome GL383556.1 = NW_003315945.1 PATCHES 192462 na +HSCHR16_2_CTG3_1 novel-patch 16 Chromosome GL383557.1 = NW_003315946.1 PATCHES 89672 na +HG183_PATCH fix-patch 17 Chromosome GL383558.1 = NW_003315947.1 PATCHES 457041 na +HG745_PATCH fix-patch 17 Chromosome GL383559.2 = NW_003315948.2 PATCHES 338640 na +HG75_PATCH fix-patch 17 Chromosome GL383560.1 = NW_003315949.1 PATCHES 534288 na +HG987_PATCH fix-patch 17 Chromosome GL383561.2 = NW_003315950.2 PATCHES 644425 na +HG990_PATCH fix-patch 17 Chromosome GL383562.1 = NW_003315951.1 PATCHES 45551 na +HG185_PATCH fix-patch 17 Chromosome GL582976.1 = NW_003571052.1 PATCHES 412535 na +HG747_PATCH fix-patch 17 Chromosome JH159144.1 = NW_003871088.1 PATCHES 388340 na +HG883_PATCH fix-patch 17 Chromosome JH159145.1 = NW_003871090.1 PATCHES 194862 na +HG748_PATCH fix-patch 17 Chromosome JH591186.1 = NW_003871089.1 PATCHES 376223 na +HG271_PATCH fix-patch 17 Chromosome JH636061.1 = NW_003871087.1 PATCHES 186059 na +HG1146_PATCH fix-patch 17 Chromosome JH720447.1 = NW_003871086.1 PATCHES 454385 na +HG417_PATCH fix-patch 17 Chromosome JH806582.2 = NW_004070872.2 PATCHES 342635 na +HG385_PATCH fix-patch 17 Chromosome KB021646.2 = NW_004166864.2 PATCHES 211416 na +HG1591_PATCH fix-patch 17 Chromosome KE332502.1 = NW_004775433.1 PATCHES 341712 na +HSCHR17_1_CTG1 novel-patch 17 Chromosome GL383563.2 = NW_003315952.2 PATCHES 270261 na +HSCHR17_1_CTG4 novel-patch 17 Chromosome GL383564.1 = NW_003315953.1 PATCHES 133151 na +HSCHR17_2_CTG4 novel-patch 17 Chromosome GL383565.1 = NW_003315954.1 PATCHES 223995 na +HSCHR17_3_CTG4 novel-patch 17 Chromosome GL383566.1 = NW_003315955.1 PATCHES 90219 na +HSCHR17_4_CTG4 novel-patch 17 Chromosome JH159146.1 = NW_003871091.1 PATCHES 278131 na +HSCHR17_5_CTG4 novel-patch 17 Chromosome JH159147.1 = NW_003871092.1 PATCHES 70345 na +HSCHR17_6_CTG4 novel-patch 17 Chromosome JH159148.1 = NW_003871093.1 PATCHES 88070 na +HSCHR18_1_CTG1_1 novel-patch 18 Chromosome GL383567.1 = NW_003315956.1 PATCHES 289831 na +HSCHR18_1_CTG2 novel-patch 18 Chromosome GL383568.1 = NW_003315957.1 PATCHES 104552 na +HSCHR18_1_CTG2_1 novel-patch 18 Chromosome GL383569.1 = NW_003315958.1 PATCHES 167950 na +HSCHR18_2_CTG1_1 novel-patch 18 Chromosome GL383570.1 = NW_003315959.1 PATCHES 164789 na +HSCHR18_2_CTG2 novel-patch 18 Chromosome GL383571.1 = NW_003315960.1 PATCHES 198278 na +HSCHR18_2_CTG2_1 novel-patch 18 Chromosome GL383572.1 = NW_003315961.1 PATCHES 159547 na +HG730_PATCH fix-patch 19 Chromosome GL582977.2 = NW_003571053.2 PATCHES 580393 na +HG729_PATCH fix-patch 19 Chromosome JH159149.1 = NW_003871094.1 PATCHES 245473 na +HG1079_PATCH fix-patch 19 Chromosome KB021647.1 = NW_004166865.1 PATCHES 1058686 na +HG1350_HG959_PATCH fix-patch 19 Chromosome KE332505.1 = NW_004775434.1 PATCHES 579598 na +HSCHR19_1_CTG3 novel-patch 19 Chromosome GL383573.1 = NW_003315962.1 PATCHES 385657 na +HSCHR19_1_CTG3_1 novel-patch 19 Chromosome GL383574.1 = NW_003315963.1 PATCHES 155864 na +HSCHR19_2_CTG3 novel-patch 19 Chromosome GL383575.2 = NW_003315964.2 PATCHES 170222 na +HSCHR19_3_CTG3 novel-patch 19 Chromosome GL383576.1 = NW_003315965.1 PATCHES 188024 na +HSCHR19LRC_COX1_CTG1 novel-patch 19 Chromosome GL949746.1 = NW_003571054.1 PATCHES 987716 na +HSCHR19LRC_COX2_CTG1 novel-patch 19 Chromosome GL949747.1 = NW_003571055.1 PATCHES 729519 na +HSCHR19LRC_LRC_I_CTG1 novel-patch 19 Chromosome GL949748.1 = NW_003571056.1 PATCHES 1064303 na +HSCHR19LRC_LRC_J_CTG1 novel-patch 19 Chromosome GL949749.1 = NW_003571057.1 PATCHES 1091840 na +HSCHR19LRC_LRC_S_CTG1 novel-patch 19 Chromosome GL949750.1 = NW_003571058.1 PATCHES 1066389 na +HSCHR19LRC_LRC_T_CTG1 novel-patch 19 Chromosome GL949751.1 = NW_003571059.1 PATCHES 1002682 na +HSCHR19LRC_PGF1_CTG1 novel-patch 19 Chromosome GL949752.1 = NW_003571060.1 PATCHES 987100 na +HSCHR19LRC_PGF2_CTG1 novel-patch 19 Chromosome GL949753.1 = NW_003571061.1 PATCHES 796478 na +HG506_HG507_HG1000_PATCH fix-patch 20 Chromosome GL582979.2 = NW_003571063.2 PATCHES 179899 na +HG144_PATCH fix-patch 20 Chromosome JH720448.1 = NW_003871095.1 PATCHES 70483 na +HG944_PATCH fix-patch 20 Chromosome KB663608.1 = NW_004504304.1 PATCHES 283551 na +HSCHR20_1_CTG1 novel-patch 20 Chromosome GL383577.1 = NW_003315966.1 PATCHES 128385 na +HG237_PATCH fix-patch 21 Chromosome KE332506.1 = NW_004775435.1 PATCHES 307252 na +HSCHR21_1_CTG1_1 novel-patch 21 Chromosome GL383578.1 = NW_003315967.1 PATCHES 63917 na +HSCHR21_2_CTG1_1 novel-patch 21 Chromosome GL383579.1 = NW_003315968.1 PATCHES 201198 na +HSCHR21_3_CTG1_1 novel-patch 21 Chromosome GL383580.1 = NW_003315969.1 PATCHES 74652 na +HSCHR21_4_CTG1_1 novel-patch 21 Chromosome GL383581.1 = NW_003315970.1 PATCHES 116690 na +HG329_PATCH fix-patch 22 Chromosome JH720449.1 = NW_003871096.1 PATCHES 212298 na +HG1486_PATCH fix-patch 22 Chromosome JH806583.1 = NW_004070873.1 PATCHES 167183 na +HG1487_PATCH fix-patch 22 Chromosome JH806584.1 = NW_004070874.1 PATCHES 70876 na +HG1488_PATCH fix-patch 22 Chromosome JH806585.1 = NW_004070875.1 PATCHES 73505 na +HG497_PATCH fix-patch 22 Chromosome JH806586.1 = NW_004070876.1 PATCHES 43543 na +HSCHR22_1_CTG1 novel-patch 22 Chromosome GL383582.2 = NW_003315971.2 PATCHES 162811 na +HSCHR22_1_CTG2 novel-patch 22 Chromosome GL383583.1 = NW_003315972.1 PATCHES 96924 na +HSCHR22_2_CTG1 novel-patch 22 Chromosome KB663609.1 = NW_004504305.1 PATCHES 74013 na +HG480_HG481_PATCH fix-patch X Chromosome GL877877.2 = NW_003571064.2 PATCHES 284527 na +HG1497_PATCH fix-patch X Chromosome JH159150.3 = NW_003871103.3 PATCHES 3110903 na +HG1423_PATCH fix-patch X Chromosome JH720451.1 = NW_003871098.1 PATCHES 898979 na +HG1424_PATCH fix-patch X Chromosome JH720452.1 = NW_003871099.1 PATCHES 522319 na +HG1425_PATCH fix-patch X Chromosome JH720453.1 = NW_003871100.1 PATCHES 1461188 na +HG1426_PATCH fix-patch X Chromosome JH720454.3 = NW_003871101.3 PATCHES 752267 na +HG375_PATCH fix-patch X Chromosome JH720455.1 = NW_003871102.1 PATCHES 65034 na +HG1433_PATCH fix-patch X Chromosome JH806587.1 = NW_004070877.1 PATCHES 4110759 na +HG1434_PATCH fix-patch X Chromosome JH806588.1 = NW_004070878.1 PATCHES 862483 na +HG1435_PATCH fix-patch X Chromosome JH806589.1 = NW_004070879.1 PATCHES 270630 na +HG1436_HG1432_PATCH fix-patch X Chromosome JH806590.2 = NW_004070880.2 PATCHES 2418393 na +HG1437_PATCH fix-patch X Chromosome JH806591.1 = NW_004070881.1 PATCHES 882083 na +HG1438_PATCH fix-patch X Chromosome JH806592.1 = NW_004070882.1 PATCHES 835911 na +HG1439_PATCH fix-patch X Chromosome JH806593.1 = NW_004070883.1 PATCHES 389631 na +HG1440_PATCH fix-patch X Chromosome JH806594.1 = NW_004070884.1 PATCHES 390496 na +HG1441_PATCH fix-patch X Chromosome JH806595.1 = NW_004070885.1 PATCHES 444074 na +HG1442_PATCH fix-patch X Chromosome JH806596.1 = NW_004070886.1 PATCHES 413927 na +HG1443_HG1444_PATCH fix-patch X Chromosome JH806597.1 = NW_004070887.1 PATCHES 1045622 na +HG1453_PATCH fix-patch X Chromosome JH806598.1 = NW_004070888.1 PATCHES 899320 na +HG1458_PATCH fix-patch X Chromosome JH806599.1 = NW_004070889.1 PATCHES 1214327 na +HG1459_PATCH fix-patch X Chromosome JH806600.2 = NW_004070890.2 PATCHES 6530008 na +HG1462_PATCH fix-patch X Chromosome JH806601.1 = NW_004070891.1 PATCHES 1389764 na +HG1463_PATCH fix-patch X Chromosome JH806602.1 = NW_004070892.1 PATCHES 713266 na +HG1490_PATCH fix-patch X Chromosome JH806603.1 = NW_004070893.1 PATCHES 182949 na +HG29_PATCH fix-patch X Chromosome KB021648.1 = NW_004166866.1 PATCHES 469972 na +HSCHR6_MHC_APD_CTG1 alt-scaffold 6 Chromosome GL000250.1 = NT_167244.1 ALT_REF_LOCI_1 4622290 chr6_apd_hap1 +HSCHR6_MHC_COX_CTG1 alt-scaffold 6 Chromosome GL000251.1 = NT_113891.2 ALT_REF_LOCI_2 4795371 chr6_cox_hap2 +HSCHR6_MHC_DBB_CTG1 alt-scaffold 6 Chromosome GL000252.1 = NT_167245.1 ALT_REF_LOCI_3 4610396 chr6_dbb_hap3 +HSCHR6_MHC_MANN_CTG1 alt-scaffold 6 Chromosome GL000253.1 = NT_167246.1 ALT_REF_LOCI_4 4683263 chr6_mann_hap4 +HSCHR6_MHC_MCF_CTG1 alt-scaffold 6 Chromosome GL000254.1 = NT_167247.1 ALT_REF_LOCI_5 4833398 chr6_mcf_hap5 +HSCHR6_MHC_QBL_CTG1 alt-scaffold 6 Chromosome GL000255.1 = NT_167248.1 ALT_REF_LOCI_6 4611984 chr6_qbl_hap6 +HSCHR6_MHC_SSTO_CTG1 alt-scaffold 6 Chromosome GL000256.1 = NT_167249.1 ALT_REF_LOCI_7 4928567 chr6_ssto_hap7 +HSCHR4_1_CTG9 alt-scaffold 4 Chromosome GL000257.1 = NT_167250.1 ALT_REF_LOCI_8 590426 chr4_ctg9_hap1 +HSCHR17_1_CTG5 alt-scaffold 17 Chromosome GL000258.1 = NT_167251.1 ALT_REF_LOCI_9 1680828 chr17_ctg5_hap1 +MT assembled-molecule MT Mitochondrion J01415.2 = NC_012920.1 non-nuclear 16569 chrM diff --git a/src/genophenocorr/model/genome/GCF_000001405.39_GRCh38.p13_assembly_report.tsv b/src/genophenocorr/model/genome/GCF_000001405.39_GRCh38.p13_assembly_report.tsv new file mode 100644 index 000000000..eb49bb1b3 --- /dev/null +++ b/src/genophenocorr/model/genome/GCF_000001405.39_GRCh38.p13_assembly_report.tsv @@ -0,0 +1,703 @@ +# Assembly name: GRCh38.p13 +# Description: Genome Reference Consortium Human Build 38 patch release 13 (GRCh38.p13) +# Organism name: Homo sapiens (human) +# Taxid: 9606 +# BioProject: PRJNA31257 +# Submitter: Genome Reference Consortium +# Date: 2019-02-28 +# Assembly type: haploid-with-alt-loci +# Release type: patch +# Assembly level: Chromosome +# Genome representation: full +# RefSeq category: Reference Genome +# GenBank assembly accession: GCA_000001405.28 +# RefSeq assembly accession: GCF_000001405.39 +# RefSeq assembly and GenBank assemblies identical: no +# +## Assembly-Units: +## GenBank Unit Accession RefSeq Unit Accession Assembly-Unit name +## GCA_000001305.2 GCF_000001305.15 Primary Assembly +## GCA_000005045.26 GCF_000005045.25 PATCHES +## GCA_000001315.2 GCF_000001315.2 ALT_REF_LOCI_1 +## GCA_000001325.2 GCF_000001325.3 ALT_REF_LOCI_2 +## GCA_000001335.2 GCF_000001335.2 ALT_REF_LOCI_3 +## GCA_000001345.2 GCF_000001345.2 ALT_REF_LOCI_4 +## GCA_000001355.2 GCF_000001355.2 ALT_REF_LOCI_5 +## GCA_000001365.2 GCF_000001365.3 ALT_REF_LOCI_6 +## GCA_000001375.2 GCF_000001375.2 ALT_REF_LOCI_7 +## GCA_000510225.1 GCF_000510225.1 ALT_REF_LOCI_8 +## GCA_000510235.1 GCF_000510235.1 ALT_REF_LOCI_9 +## GCA_000509915.1 GCF_000509915.1 ALT_REF_LOCI_10 +## GCA_000509925.1 GCF_000509925.1 ALT_REF_LOCI_11 +## GCA_000509935.1 GCF_000509935.1 ALT_REF_LOCI_12 +## GCA_000509945.1 GCF_000509945.1 ALT_REF_LOCI_13 +## GCA_000509955.1 GCF_000509955.1 ALT_REF_LOCI_14 +## GCA_000509965.1 GCF_000509965.1 ALT_REF_LOCI_15 +## GCA_000509975.1 GCF_000509975.1 ALT_REF_LOCI_16 +## GCA_000509985.1 GCF_000509985.1 ALT_REF_LOCI_17 +## GCA_000509995.1 GCF_000509995.1 ALT_REF_LOCI_18 +## GCA_000510005.1 GCF_000510005.1 ALT_REF_LOCI_19 +## GCA_000510015.1 GCF_000510015.1 ALT_REF_LOCI_20 +## GCA_000510025.1 GCF_000510025.1 ALT_REF_LOCI_21 +## GCA_000510035.1 GCF_000510035.1 ALT_REF_LOCI_22 +## GCA_000510045.1 GCF_000510045.1 ALT_REF_LOCI_23 +## GCA_000510055.1 GCF_000510055.1 ALT_REF_LOCI_24 +## GCA_000510065.1 GCF_000510065.1 ALT_REF_LOCI_25 +## GCA_000510075.1 GCF_000510075.1 ALT_REF_LOCI_26 +## GCA_000510085.1 GCF_000510085.1 ALT_REF_LOCI_27 +## GCA_000510095.1 GCF_000510095.1 ALT_REF_LOCI_28 +## GCA_000510105.1 GCF_000510105.1 ALT_REF_LOCI_29 +## GCA_000510125.1 GCF_000510125.1 ALT_REF_LOCI_30 +## GCA_000510135.1 GCF_000510135.1 ALT_REF_LOCI_31 +## GCA_000510145.1 GCF_000510145.1 ALT_REF_LOCI_32 +## GCA_000510155.1 GCF_000510155.1 ALT_REF_LOCI_33 +## GCA_000510165.1 GCF_000510165.1 ALT_REF_LOCI_34 +## GCA_000510175.1 GCF_000510175.1 ALT_REF_LOCI_35 +## GCA_000006015.1 GCF_000006015.1 non-nuclear +# +# Ordered by chromosome/plasmid; the chromosomes/plasmids are followed by +# unlocalized scaffolds. +# Unplaced scaffolds are listed at the end. +# RefSeq is equal or derived from GenBank object. +# +# Sequence-Name Sequence-Role Assigned-Molecule Assigned-Molecule-Location/Type GenBank-Accn Relationship RefSeq-Accn Assembly-Unit Sequence-Length UCSC-style-name +1 assembled-molecule 1 Chromosome CM000663.2 = NC_000001.11 Primary Assembly 248956422 chr1 +2 assembled-molecule 2 Chromosome CM000664.2 = NC_000002.12 Primary Assembly 242193529 chr2 +3 assembled-molecule 3 Chromosome CM000665.2 = NC_000003.12 Primary Assembly 198295559 chr3 +4 assembled-molecule 4 Chromosome CM000666.2 = NC_000004.12 Primary Assembly 190214555 chr4 +5 assembled-molecule 5 Chromosome CM000667.2 = NC_000005.10 Primary Assembly 181538259 chr5 +6 assembled-molecule 6 Chromosome CM000668.2 = NC_000006.12 Primary Assembly 170805979 chr6 +7 assembled-molecule 7 Chromosome CM000669.2 = NC_000007.14 Primary Assembly 159345973 chr7 +8 assembled-molecule 8 Chromosome CM000670.2 = NC_000008.11 Primary Assembly 145138636 chr8 +9 assembled-molecule 9 Chromosome CM000671.2 = NC_000009.12 Primary Assembly 138394717 chr9 +10 assembled-molecule 10 Chromosome CM000672.2 = NC_000010.11 Primary Assembly 133797422 chr10 +11 assembled-molecule 11 Chromosome CM000673.2 = NC_000011.10 Primary Assembly 135086622 chr11 +12 assembled-molecule 12 Chromosome CM000674.2 = NC_000012.12 Primary Assembly 133275309 chr12 +13 assembled-molecule 13 Chromosome CM000675.2 = NC_000013.11 Primary Assembly 114364328 chr13 +14 assembled-molecule 14 Chromosome CM000676.2 = NC_000014.9 Primary Assembly 107043718 chr14 +15 assembled-molecule 15 Chromosome CM000677.2 = NC_000015.10 Primary Assembly 101991189 chr15 +16 assembled-molecule 16 Chromosome CM000678.2 = NC_000016.10 Primary Assembly 90338345 chr16 +17 assembled-molecule 17 Chromosome CM000679.2 = NC_000017.11 Primary Assembly 83257441 chr17 +18 assembled-molecule 18 Chromosome CM000680.2 = NC_000018.10 Primary Assembly 80373285 chr18 +19 assembled-molecule 19 Chromosome CM000681.2 = NC_000019.10 Primary Assembly 58617616 chr19 +20 assembled-molecule 20 Chromosome CM000682.2 = NC_000020.11 Primary Assembly 64444167 chr20 +21 assembled-molecule 21 Chromosome CM000683.2 = NC_000021.9 Primary Assembly 46709983 chr21 +22 assembled-molecule 22 Chromosome CM000684.2 = NC_000022.11 Primary Assembly 50818468 chr22 +X assembled-molecule X Chromosome CM000685.2 = NC_000023.11 Primary Assembly 156040895 chrX +Y assembled-molecule Y Chromosome CM000686.2 = NC_000024.10 Primary Assembly 57227415 chrY +HSCHR1_CTG1_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270706.1 = NT_187361.1 Primary Assembly 175055 chr1_KI270706v1_random +HSCHR1_CTG2_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270707.1 = NT_187362.1 Primary Assembly 32032 chr1_KI270707v1_random +HSCHR1_CTG3_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270708.1 = NT_187363.1 Primary Assembly 127682 chr1_KI270708v1_random +HSCHR1_CTG4_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270709.1 = NT_187364.1 Primary Assembly 66860 chr1_KI270709v1_random +HSCHR1_CTG5_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270710.1 = NT_187365.1 Primary Assembly 40176 chr1_KI270710v1_random +HSCHR1_CTG6_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270711.1 = NT_187366.1 Primary Assembly 42210 chr1_KI270711v1_random +HSCHR1_CTG7_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270712.1 = NT_187367.1 Primary Assembly 176043 chr1_KI270712v1_random +HSCHR1_CTG8_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270713.1 = NT_187368.1 Primary Assembly 40745 chr1_KI270713v1_random +HSCHR1_CTG9_UNLOCALIZED unlocalized-scaffold 1 Chromosome KI270714.1 = NT_187369.1 Primary Assembly 41717 chr1_KI270714v1_random +HSCHR2_RANDOM_CTG1 unlocalized-scaffold 2 Chromosome KI270715.1 = NT_187370.1 Primary Assembly 161471 chr2_KI270715v1_random +HSCHR2_RANDOM_CTG2 unlocalized-scaffold 2 Chromosome KI270716.1 = NT_187371.1 Primary Assembly 153799 chr2_KI270716v1_random +HSCHR3UN_CTG2 unlocalized-scaffold 3 Chromosome GL000221.1 = NT_167215.1 Primary Assembly 155397 chr3_GL000221v1_random +HSCHR4_RANDOM_CTG4 unlocalized-scaffold 4 Chromosome GL000008.2 = NT_113793.3 Primary Assembly 209709 chr4_GL000008v2_random +HSCHR5_RANDOM_CTG1 unlocalized-scaffold 5 Chromosome GL000208.1 = NT_113948.1 Primary Assembly 92689 chr5_GL000208v1_random +HSCHR9_UNLOCALIZED_CTG1 unlocalized-scaffold 9 Chromosome KI270717.1 = NT_187372.1 Primary Assembly 40062 chr9_KI270717v1_random +HSCHR9_UNLOCALIZED_CTG2 unlocalized-scaffold 9 Chromosome KI270718.1 = NT_187373.1 Primary Assembly 38054 chr9_KI270718v1_random +HSCHR9_UNLOCALIZED_CTG3 unlocalized-scaffold 9 Chromosome KI270719.1 = NT_187374.1 Primary Assembly 176845 chr9_KI270719v1_random +HSCHR9_UNLOCALIZED_CTG4 unlocalized-scaffold 9 Chromosome KI270720.1 = NT_187375.1 Primary Assembly 39050 chr9_KI270720v1_random +HSCHR11_CTG1_UNLOCALIZED unlocalized-scaffold 11 Chromosome KI270721.1 = NT_187376.1 Primary Assembly 100316 chr11_KI270721v1_random +HSCHR14_CTG1_UNLOCALIZED unlocalized-scaffold 14 Chromosome GL000009.2 = NT_113796.3 Primary Assembly 201709 chr14_GL000009v2_random +HSCHR14_CTG4_UNLOCALIZED unlocalized-scaffold 14 Chromosome GL000194.1 = NT_113888.1 Primary Assembly 191469 chr14_GL000194v1_random +HSCHR14_CTG2_UNLOCALIZED unlocalized-scaffold 14 Chromosome GL000225.1 = NT_167219.1 Primary Assembly 211173 chr14_GL000225v1_random +HSCHR14_CTG3_UNLOCALIZED unlocalized-scaffold 14 Chromosome KI270722.1 = NT_187377.1 Primary Assembly 194050 chr14_KI270722v1_random +HSCHR14_CTG5_UNLOCALIZED unlocalized-scaffold 14 Chromosome KI270723.1 = NT_187378.1 Primary Assembly 38115 chr14_KI270723v1_random +HSCHR14_CTG6_UNLOCALIZED unlocalized-scaffold 14 Chromosome KI270724.1 = NT_187379.1 Primary Assembly 39555 chr14_KI270724v1_random +HSCHR14_CTG7_UNLOCALIZED unlocalized-scaffold 14 Chromosome KI270725.1 = NT_187380.1 Primary Assembly 172810 chr14_KI270725v1_random +HSCHR14_CTG8_UNLOCALIZED unlocalized-scaffold 14 Chromosome KI270726.1 = NT_187381.1 Primary Assembly 43739 chr14_KI270726v1_random +HSCHR15_RANDOM_CTG1 unlocalized-scaffold 15 Chromosome KI270727.1 = NT_187382.1 Primary Assembly 448248 chr15_KI270727v1_random +HSCHR16_RANDOM_CTG1 unlocalized-scaffold 16 Chromosome KI270728.1 = NT_187383.1 Primary Assembly 1872759 chr16_KI270728v1_random +HSCHR17_RANDOM_CTG3 unlocalized-scaffold 17 Chromosome GL000205.2 = NT_113930.2 Primary Assembly 185591 chr17_GL000205v2_random +HSCHR17_RANDOM_CTG4 unlocalized-scaffold 17 Chromosome KI270729.1 = NT_187384.1 Primary Assembly 280839 chr17_KI270729v1_random +HSCHR17_RANDOM_CTG5 unlocalized-scaffold 17 Chromosome KI270730.1 = NT_187385.1 Primary Assembly 112551 chr17_KI270730v1_random +HSCHR22_UNLOCALIZED_CTG1 unlocalized-scaffold 22 Chromosome KI270731.1 = NT_187386.1 Primary Assembly 150754 chr22_KI270731v1_random +HSCHR22_UNLOCALIZED_CTG2 unlocalized-scaffold 22 Chromosome KI270732.1 = NT_187387.1 Primary Assembly 41543 chr22_KI270732v1_random +HSCHR22_UNLOCALIZED_CTG3 unlocalized-scaffold 22 Chromosome KI270733.1 = NT_187388.1 Primary Assembly 179772 chr22_KI270733v1_random +HSCHR22_UNLOCALIZED_CTG4 unlocalized-scaffold 22 Chromosome KI270734.1 = NT_187389.1 Primary Assembly 165050 chr22_KI270734v1_random +HSCHR22_UNLOCALIZED_CTG5 unlocalized-scaffold 22 Chromosome KI270735.1 = NT_187390.1 Primary Assembly 42811 chr22_KI270735v1_random +HSCHR22_UNLOCALIZED_CTG6 unlocalized-scaffold 22 Chromosome KI270736.1 = NT_187391.1 Primary Assembly 181920 chr22_KI270736v1_random +HSCHR22_UNLOCALIZED_CTG7 unlocalized-scaffold 22 Chromosome KI270737.1 = NT_187392.1 Primary Assembly 103838 chr22_KI270737v1_random +HSCHR22_UNLOCALIZED_CTG8 unlocalized-scaffold 22 Chromosome KI270738.1 = NT_187393.1 Primary Assembly 99375 chr22_KI270738v1_random +HSCHR22_UNLOCALIZED_CTG9 unlocalized-scaffold 22 Chromosome KI270739.1 = NT_187394.1 Primary Assembly 73985 chr22_KI270739v1_random +HSCHRY_RANDOM_CTG1 unlocalized-scaffold Y Chromosome KI270740.1 = NT_187395.1 Primary Assembly 37240 chrY_KI270740v1_random +HSCHRUN_RANDOM_CTG1 unplaced-scaffold na na GL000195.1 = NT_113901.1 Primary Assembly 182896 chrUn_GL000195v1 +HSCHRUN_RANDOM_CTG2 unplaced-scaffold na na GL000213.1 = NT_167208.1 Primary Assembly 164239 chrUn_GL000213v1 +HSCHRUN_RANDOM_CTG4 unplaced-scaffold na na GL000214.1 = NT_167209.1 Primary Assembly 137718 chrUn_GL000214v1 +HSCHRUN_RANDOM_CTG6 unplaced-scaffold na na GL000216.2 = NT_167211.2 Primary Assembly 176608 chrUn_GL000216v2 +HSCHRUN_RANDOM_CTG9 unplaced-scaffold na na GL000218.1 = NT_113889.1 Primary Assembly 161147 chrUn_GL000218v1 +HSCHRUN_RANDOM_CTG10 unplaced-scaffold na na GL000219.1 = NT_167213.1 Primary Assembly 179198 chrUn_GL000219v1 +HSCHRUN_RANDOM_CTG11 unplaced-scaffold na na GL000220.1 = NT_167214.1 Primary Assembly 161802 chrUn_GL000220v1 +HSCHRUN_RANDOM_CTG16 unplaced-scaffold na na GL000224.1 = NT_167218.1 Primary Assembly 179693 chrUn_GL000224v1 +HSCHRUN_RANDOM_CTG19 unplaced-scaffold na na GL000226.1 = NT_167220.1 Primary Assembly 15008 chrUn_GL000226v1 +HSCHRUN_RANDOM_100 unplaced-scaffold na na KI270302.1 = NT_187396.1 Primary Assembly 2274 chrUn_KI270302v1 +HSCHRUN_RANDOM_102 unplaced-scaffold na na KI270303.1 = NT_187398.1 Primary Assembly 1942 chrUn_KI270303v1 +HSCHRUN_RANDOM_101 unplaced-scaffold na na KI270304.1 = NT_187397.1 Primary Assembly 2165 chrUn_KI270304v1 +HSCHRUN_RANDOM_103 unplaced-scaffold na na KI270305.1 = NT_187399.1 Primary Assembly 1472 chrUn_KI270305v1 +HSCHRUN_RANDOM_106 unplaced-scaffold na na KI270310.1 = NT_187402.1 Primary Assembly 1201 chrUn_KI270310v1 +HSCHRUN_RANDOM_110 unplaced-scaffold na na KI270311.1 = NT_187406.1 Primary Assembly 12399 chrUn_KI270311v1 +HSCHRUN_RANDOM_109 unplaced-scaffold na na KI270312.1 = NT_187405.1 Primary Assembly 998 chrUn_KI270312v1 +HSCHRUN_RANDOM_108 unplaced-scaffold na na KI270315.1 = NT_187404.1 Primary Assembly 2276 chrUn_KI270315v1 +HSCHRUN_RANDOM_107 unplaced-scaffold na na KI270316.1 = NT_187403.1 Primary Assembly 1444 chrUn_KI270316v1 +HSCHRUN_RANDOM_111 unplaced-scaffold na na KI270317.1 = NT_187407.1 Primary Assembly 37690 chrUn_KI270317v1 +HSCHRUN_RANDOM_105 unplaced-scaffold na na KI270320.1 = NT_187401.1 Primary Assembly 4416 chrUn_KI270320v1 +HSCHRUN_RANDOM_104 unplaced-scaffold na na KI270322.1 = NT_187400.1 Primary Assembly 21476 chrUn_KI270322v1 +HSCHRUN_RANDOM_167 unplaced-scaffold na na KI270329.1 = NT_187459.1 Primary Assembly 1040 chrUn_KI270329v1 +HSCHRUN_RANDOM_166 unplaced-scaffold na na KI270330.1 = NT_187458.1 Primary Assembly 1652 chrUn_KI270330v1 +HSCHRUN_RANDOM_169 unplaced-scaffold na na KI270333.1 = NT_187461.1 Primary Assembly 2699 chrUn_KI270333v1 +HSCHRUN_RANDOM_168 unplaced-scaffold na na KI270334.1 = NT_187460.1 Primary Assembly 1368 chrUn_KI270334v1 +HSCHRUN_RANDOM_170 unplaced-scaffold na na KI270335.1 = NT_187462.1 Primary Assembly 1048 chrUn_KI270335v1 +HSCHRUN_RANDOM_173 unplaced-scaffold na na KI270336.1 = NT_187465.1 Primary Assembly 1026 chrUn_KI270336v1 +HSCHRUN_RANDOM_174 unplaced-scaffold na na KI270337.1 = NT_187466.1 Primary Assembly 1121 chrUn_KI270337v1 +HSCHRUN_RANDOM_171 unplaced-scaffold na na KI270338.1 = NT_187463.1 Primary Assembly 1428 chrUn_KI270338v1 +HSCHRUN_RANDOM_172 unplaced-scaffold na na KI270340.1 = NT_187464.1 Primary Assembly 1428 chrUn_KI270340v1 +HSCHRUN_RANDOM_177 unplaced-scaffold na na KI270362.1 = NT_187469.1 Primary Assembly 3530 chrUn_KI270362v1 +HSCHRUN_RANDOM_175 unplaced-scaffold na na KI270363.1 = NT_187467.1 Primary Assembly 1803 chrUn_KI270363v1 +HSCHRUN_RANDOM_176 unplaced-scaffold na na KI270364.1 = NT_187468.1 Primary Assembly 2855 chrUn_KI270364v1 +HSCHRUN_RANDOM_178 unplaced-scaffold na na KI270366.1 = NT_187470.1 Primary Assembly 8320 chrUn_KI270366v1 +HSCHRUN_RANDOM_202 unplaced-scaffold na na KI270371.1 = NT_187494.1 Primary Assembly 2805 chrUn_KI270371v1 +HSCHRUN_RANDOM_199 unplaced-scaffold na na KI270372.1 = NT_187491.1 Primary Assembly 1650 chrUn_KI270372v1 +HSCHRUN_RANDOM_200 unplaced-scaffold na na KI270373.1 = NT_187492.1 Primary Assembly 1451 chrUn_KI270373v1 +HSCHRUN_RANDOM_198 unplaced-scaffold na na KI270374.1 = NT_187490.1 Primary Assembly 2656 chrUn_KI270374v1 +HSCHRUN_RANDOM_201 unplaced-scaffold na na KI270375.1 = NT_187493.1 Primary Assembly 2378 chrUn_KI270375v1 +HSCHRUN_RANDOM_197 unplaced-scaffold na na KI270376.1 = NT_187489.1 Primary Assembly 1136 chrUn_KI270376v1 +HSCHRUN_RANDOM_179 unplaced-scaffold na na KI270378.1 = NT_187471.1 Primary Assembly 1048 chrUn_KI270378v1 +HSCHRUN_RANDOM_180 unplaced-scaffold na na KI270379.1 = NT_187472.1 Primary Assembly 1045 chrUn_KI270379v1 +HSCHRUN_RANDOM_194 unplaced-scaffold na na KI270381.1 = NT_187486.1 Primary Assembly 1930 chrUn_KI270381v1 +HSCHRUN_RANDOM_196 unplaced-scaffold na na KI270382.1 = NT_187488.1 Primary Assembly 4215 chrUn_KI270382v1 +HSCHRUN_RANDOM_190 unplaced-scaffold na na KI270383.1 = NT_187482.1 Primary Assembly 1750 chrUn_KI270383v1 +HSCHRUN_RANDOM_192 unplaced-scaffold na na KI270384.1 = NT_187484.1 Primary Assembly 1658 chrUn_KI270384v1 +HSCHRUN_RANDOM_195 unplaced-scaffold na na KI270385.1 = NT_187487.1 Primary Assembly 990 chrUn_KI270385v1 +HSCHRUN_RANDOM_188 unplaced-scaffold na na KI270386.1 = NT_187480.1 Primary Assembly 1788 chrUn_KI270386v1 +HSCHRUN_RANDOM_183 unplaced-scaffold na na KI270387.1 = NT_187475.1 Primary Assembly 1537 chrUn_KI270387v1 +HSCHRUN_RANDOM_186 unplaced-scaffold na na KI270388.1 = NT_187478.1 Primary Assembly 1216 chrUn_KI270388v1 +HSCHRUN_RANDOM_181 unplaced-scaffold na na KI270389.1 = NT_187473.1 Primary Assembly 1298 chrUn_KI270389v1 +HSCHRUN_RANDOM_182 unplaced-scaffold na na KI270390.1 = NT_187474.1 Primary Assembly 2387 chrUn_KI270390v1 +HSCHRUN_RANDOM_189 unplaced-scaffold na na KI270391.1 = NT_187481.1 Primary Assembly 1484 chrUn_KI270391v1 +HSCHRUN_RANDOM_193 unplaced-scaffold na na KI270392.1 = NT_187485.1 Primary Assembly 971 chrUn_KI270392v1 +HSCHRUN_RANDOM_191 unplaced-scaffold na na KI270393.1 = NT_187483.1 Primary Assembly 1308 chrUn_KI270393v1 +HSCHRUN_RANDOM_187 unplaced-scaffold na na KI270394.1 = NT_187479.1 Primary Assembly 970 chrUn_KI270394v1 +HSCHRUN_RANDOM_184 unplaced-scaffold na na KI270395.1 = NT_187476.1 Primary Assembly 1143 chrUn_KI270395v1 +HSCHRUN_RANDOM_185 unplaced-scaffold na na KI270396.1 = NT_187477.1 Primary Assembly 1880 chrUn_KI270396v1 +HSCHRUN_RANDOM_113 unplaced-scaffold na na KI270411.1 = NT_187409.1 Primary Assembly 2646 chrUn_KI270411v1 +HSCHRUN_RANDOM_112 unplaced-scaffold na na KI270412.1 = NT_187408.1 Primary Assembly 1179 chrUn_KI270412v1 +HSCHRUN_RANDOM_114 unplaced-scaffold na na KI270414.1 = NT_187410.1 Primary Assembly 2489 chrUn_KI270414v1 +HSCHRUN_RANDOM_119 unplaced-scaffold na na KI270417.1 = NT_187415.1 Primary Assembly 2043 chrUn_KI270417v1 +HSCHRUN_RANDOM_116 unplaced-scaffold na na KI270418.1 = NT_187412.1 Primary Assembly 2145 chrUn_KI270418v1 +HSCHRUN_RANDOM_115 unplaced-scaffold na na KI270419.1 = NT_187411.1 Primary Assembly 1029 chrUn_KI270419v1 +HSCHRUN_RANDOM_117 unplaced-scaffold na na KI270420.1 = NT_187413.1 Primary Assembly 2321 chrUn_KI270420v1 +HSCHRUN_RANDOM_120 unplaced-scaffold na na KI270422.1 = NT_187416.1 Primary Assembly 1445 chrUn_KI270422v1 +HSCHRUN_RANDOM_121 unplaced-scaffold na na KI270423.1 = NT_187417.1 Primary Assembly 981 chrUn_KI270423v1 +HSCHRUN_RANDOM_118 unplaced-scaffold na na KI270424.1 = NT_187414.1 Primary Assembly 2140 chrUn_KI270424v1 +HSCHRUN_RANDOM_122 unplaced-scaffold na na KI270425.1 = NT_187418.1 Primary Assembly 1884 chrUn_KI270425v1 +HSCHRUN_RANDOM_123 unplaced-scaffold na na KI270429.1 = NT_187419.1 Primary Assembly 1361 chrUn_KI270429v1 +HSCHRUN_RANDOM_128 unplaced-scaffold na na KI270435.1 = NT_187424.1 Primary Assembly 92983 chrUn_KI270435v1 +HSCHRUN_RANDOM_129 unplaced-scaffold na na KI270438.1 = NT_187425.1 Primary Assembly 112505 chrUn_KI270438v1 +HSCHRUN_RANDOM_124 unplaced-scaffold na na KI270442.1 = NT_187420.1 Primary Assembly 392061 chrUn_KI270442v1 +HSCHRUN_RANDOM_203 unplaced-scaffold na na KI270448.1 = NT_187495.1 Primary Assembly 7992 chrUn_KI270448v1 +HSCHRUN_RANDOM_126 unplaced-scaffold na na KI270465.1 = NT_187422.1 Primary Assembly 1774 chrUn_KI270465v1 +HSCHRUN_RANDOM_125 unplaced-scaffold na na KI270466.1 = NT_187421.1 Primary Assembly 1233 chrUn_KI270466v1 +HSCHRUN_RANDOM_127 unplaced-scaffold na na KI270467.1 = NT_187423.1 Primary Assembly 3920 chrUn_KI270467v1 +HSCHRUN_RANDOM_130 unplaced-scaffold na na KI270468.1 = NT_187426.1 Primary Assembly 4055 chrUn_KI270468v1 +HSCHRUN_RANDOM_141 unplaced-scaffold na na KI270507.1 = NT_187437.1 Primary Assembly 5353 chrUn_KI270507v1 +HSCHRUN_RANDOM_134 unplaced-scaffold na na KI270508.1 = NT_187430.1 Primary Assembly 1951 chrUn_KI270508v1 +HSCHRUN_RANDOM_132 unplaced-scaffold na na KI270509.1 = NT_187428.1 Primary Assembly 2318 chrUn_KI270509v1 +HSCHRUN_RANDOM_131 unplaced-scaffold na na KI270510.1 = NT_187427.1 Primary Assembly 2415 chrUn_KI270510v1 +HSCHRUN_RANDOM_139 unplaced-scaffold na na KI270511.1 = NT_187435.1 Primary Assembly 8127 chrUn_KI270511v1 +HSCHRUN_RANDOM_136 unplaced-scaffold na na KI270512.1 = NT_187432.1 Primary Assembly 22689 chrUn_KI270512v1 +HSCHRUN_RANDOM_140 unplaced-scaffold na na KI270515.1 = NT_187436.1 Primary Assembly 6361 chrUn_KI270515v1 +HSCHRUN_RANDOM_135 unplaced-scaffold na na KI270516.1 = NT_187431.1 Primary Assembly 1300 chrUn_KI270516v1 +HSCHRUN_RANDOM_142 unplaced-scaffold na na KI270517.1 = NT_187438.1 Primary Assembly 3253 chrUn_KI270517v1 +HSCHRUN_RANDOM_133 unplaced-scaffold na na KI270518.1 = NT_187429.1 Primary Assembly 2186 chrUn_KI270518v1 +HSCHRUN_RANDOM_137 unplaced-scaffold na na KI270519.1 = NT_187433.1 Primary Assembly 138126 chrUn_KI270519v1 +HSCHRUN_RANDOM_204 unplaced-scaffold na na KI270521.1 = NT_187496.1 Primary Assembly 7642 chrUn_KI270521v1 +HSCHRUN_RANDOM_138 unplaced-scaffold na na KI270522.1 = NT_187434.1 Primary Assembly 5674 chrUn_KI270522v1 +HSCHRUN_RANDOM_144 unplaced-scaffold na na KI270528.1 = NT_187440.1 Primary Assembly 2983 chrUn_KI270528v1 +HSCHRUN_RANDOM_143 unplaced-scaffold na na KI270529.1 = NT_187439.1 Primary Assembly 1899 chrUn_KI270529v1 +HSCHRUN_RANDOM_145 unplaced-scaffold na na KI270530.1 = NT_187441.1 Primary Assembly 2168 chrUn_KI270530v1 +HSCHRUN_RANDOM_147 unplaced-scaffold na na KI270538.1 = NT_187443.1 Primary Assembly 91309 chrUn_KI270538v1 +HSCHRUN_RANDOM_146 unplaced-scaffold na na KI270539.1 = NT_187442.1 Primary Assembly 993 chrUn_KI270539v1 +HSCHRUN_RANDOM_148 unplaced-scaffold na na KI270544.1 = NT_187444.1 Primary Assembly 1202 chrUn_KI270544v1 +HSCHRUN_RANDOM_149 unplaced-scaffold na na KI270548.1 = NT_187445.1 Primary Assembly 1599 chrUn_KI270548v1 +HSCHRUN_RANDOM_158 unplaced-scaffold na na KI270579.1 = NT_187450.1 Primary Assembly 31033 chrUn_KI270579v1 +HSCHRUN_RANDOM_156 unplaced-scaffold na na KI270580.1 = NT_187448.1 Primary Assembly 1553 chrUn_KI270580v1 +HSCHRUN_RANDOM_157 unplaced-scaffold na na KI270581.1 = NT_187449.1 Primary Assembly 7046 chrUn_KI270581v1 +HSCHRUN_RANDOM_162 unplaced-scaffold na na KI270582.1 = NT_187454.1 Primary Assembly 6504 chrUn_KI270582v1 +HSCHRUN_RANDOM_154 unplaced-scaffold na na KI270583.1 = NT_187446.1 Primary Assembly 1400 chrUn_KI270583v1 +HSCHRUN_RANDOM_161 unplaced-scaffold na na KI270584.1 = NT_187453.1 Primary Assembly 4513 chrUn_KI270584v1 +HSCHRUN_RANDOM_155 unplaced-scaffold na na KI270587.1 = NT_187447.1 Primary Assembly 2969 chrUn_KI270587v1 +HSCHRUN_RANDOM_163 unplaced-scaffold na na KI270588.1 = NT_187455.1 Primary Assembly 6158 chrUn_KI270588v1 +HSCHRUN_RANDOM_159 unplaced-scaffold na na KI270589.1 = NT_187451.1 Primary Assembly 44474 chrUn_KI270589v1 +HSCHRUN_RANDOM_160 unplaced-scaffold na na KI270590.1 = NT_187452.1 Primary Assembly 4685 chrUn_KI270590v1 +HSCHRUN_RANDOM_165 unplaced-scaffold na na KI270591.1 = NT_187457.1 Primary Assembly 5796 chrUn_KI270591v1 +HSCHRUN_RANDOM_164 unplaced-scaffold na na KI270593.1 = NT_187456.1 Primary Assembly 3041 chrUn_KI270593v1 +HSCHRUN_RANDOM_CTG17 unplaced-scaffold na na KI270741.1 = NT_187497.1 Primary Assembly 157432 chrUn_KI270741v1 +HSCHRUN_RANDOM_CTG42 unplaced-scaffold na na KI270742.1 = NT_187513.1 Primary Assembly 186739 chrUn_KI270742v1 +HSCHRUN_RANDOM_CTG20 unplaced-scaffold na na KI270743.1 = NT_187498.1 Primary Assembly 210658 chrUn_KI270743v1 +HSCHRUN_RANDOM_CTG21 unplaced-scaffold na na KI270744.1 = NT_187499.1 Primary Assembly 168472 chrUn_KI270744v1 +HSCHRUN_RANDOM_CTG22 unplaced-scaffold na na KI270745.1 = NT_187500.1 Primary Assembly 41891 chrUn_KI270745v1 +HSCHRUN_RANDOM_CTG23 unplaced-scaffold na na KI270746.1 = NT_187501.1 Primary Assembly 66486 chrUn_KI270746v1 +HSCHRUN_RANDOM_CTG24 unplaced-scaffold na na KI270747.1 = NT_187502.1 Primary Assembly 198735 chrUn_KI270747v1 +HSCHRUN_RANDOM_CTG25 unplaced-scaffold na na KI270748.1 = NT_187503.1 Primary Assembly 93321 chrUn_KI270748v1 +HSCHRUN_RANDOM_CTG26 unplaced-scaffold na na KI270749.1 = NT_187504.1 Primary Assembly 158759 chrUn_KI270749v1 +HSCHRUN_RANDOM_CTG27 unplaced-scaffold na na KI270750.1 = NT_187505.1 Primary Assembly 148850 chrUn_KI270750v1 +HSCHRUN_RANDOM_CTG28 unplaced-scaffold na na KI270751.1 = NT_187506.1 Primary Assembly 150742 chrUn_KI270751v1 +HSCHRUN_RANDOM_CTG30 unplaced-scaffold na na KI270753.1 = NT_187508.1 Primary Assembly 62944 chrUn_KI270753v1 +HSCHRUN_RANDOM_CTG33 unplaced-scaffold na na KI270754.1 = NT_187509.1 Primary Assembly 40191 chrUn_KI270754v1 +HSCHRUN_RANDOM_CTG34 unplaced-scaffold na na KI270755.1 = NT_187510.1 Primary Assembly 36723 chrUn_KI270755v1 +HSCHRUN_RANDOM_CTG35 unplaced-scaffold na na KI270756.1 = NT_187511.1 Primary Assembly 79590 chrUn_KI270756v1 +HSCHRUN_RANDOM_CTG36 unplaced-scaffold na na KI270757.1 = NT_187512.1 Primary Assembly 71251 chrUn_KI270757v1 +HG986_PATCH fix-patch 1 Chromosome KN196472.1 = NW_009646194.1 PATCHES 186494 chr1_KN196472v1_fix +HG2058_PATCH fix-patch 1 Chromosome KN196473.1 = NW_009646195.1 PATCHES 166200 chr1_KN196473v1_fix +HG2104_PATCH fix-patch 1 Chromosome KN196474.1 = NW_009646196.1 PATCHES 122022 chr1_KN196474v1_fix +HG1832_PATCH fix-patch 1 Chromosome KN538360.1 = NW_011332687.1 PATCHES 460100 chr1_KN538360v1_fix +HG2095_PATCH fix-patch 1 Chromosome KN538361.1 = NW_011332688.1 PATCHES 305542 chr1_KN538361v1_fix +HG1342_HG2282_PATCH fix-patch 1 Chromosome KQ031383.1 = NW_012132914.1 PATCHES 467143 chr1_KQ031383v1_fix +HG2002_PATCH fix-patch 1 Chromosome KZ208906.1 = NW_018654708.1 PATCHES 330031 chr1_KZ208906v1_fix +HG460_PATCH fix-patch 1 Chromosome KZ559100.1 = NW_019805487.1 PATCHES 44955 chr1_KZ559100v1_fix +HSCHR1_3_CTG3 novel-patch 1 Chromosome KQ458382.1 = NW_014040925.1 PATCHES 141019 chr1_KQ458382v1_alt +HSCHR1_4_CTG3 novel-patch 1 Chromosome KQ458383.1 = NW_014040926.1 PATCHES 349938 chr1_KQ458383v1_alt +HSCHR1_5_CTG32_1 novel-patch 1 Chromosome KQ458384.1 = NW_014040927.1 PATCHES 212205 chr1_KQ458384v1_alt +HSCHR1_5_CTG3 novel-patch 1 Chromosome KQ983255.1 = NW_015495298.1 PATCHES 278659 chr1_KQ983255v1_alt +HSCHR1_6_CTG3 novel-patch 1 Chromosome KV880763.1 = NW_017852928.1 PATCHES 551020 chr1_KV880763v1_alt +HSCHR1_8_CTG3 novel-patch 1 Chromosome KZ208904.1 = NW_018654706.1 PATCHES 166136 chr1_KZ208904v1_alt +HSCHR1_9_CTG3 novel-patch 1 Chromosome KZ208905.1 = NW_018654707.1 PATCHES 140355 chr1_KZ208905v1_alt +HG2233_PATCH fix-patch 2 Chromosome KN538362.1 = NW_011332689.1 PATCHES 208149 chr2_KN538362v1_fix +HG2232_PATCH fix-patch 2 Chromosome KN538363.1 = NW_011332690.1 PATCHES 365499 chr2_KN538363v1_fix +HG2290_PATCH fix-patch 2 Chromosome KQ031384.1 = NW_012132915.1 PATCHES 481245 chr2_KQ031384v1_fix +HG721_PATCH fix-patch 2 Chromosome ML143341.1 = NW_021159987.1 PATCHES 145975 na +HG1384_PATCH fix-patch 2 Chromosome ML143342.1 = NW_021159988.1 PATCHES 84043 na +HSCHR2_6_CTG7_2 novel-patch 2 Chromosome KQ983256.1 = NW_015495299.1 PATCHES 535088 chr2_KQ983256v1_alt +HSCHR2_7_CTG7_2 novel-patch 2 Chromosome KZ208907.1 = NW_018654709.1 PATCHES 181658 chr2_KZ208907v1_alt +HSCHR2_8_CTG7_2 novel-patch 2 Chromosome KZ208908.1 = NW_018654710.1 PATCHES 140361 chr2_KZ208908v1_alt +HG2066_PATCH fix-patch 3 Chromosome KN196475.1 = NW_009646197.1 PATCHES 451168 chr3_KN196475v1_fix +HG2022_PATCH fix-patch 3 Chromosome KN196476.1 = NW_009646198.1 PATCHES 305979 chr3_KN196476v1_fix +HG126_PATCH fix-patch 3 Chromosome KN538364.1 = NW_011332691.1 PATCHES 415308 chr3_KN538364v1_fix +HG2235_PATCH fix-patch 3 Chromosome KQ031385.1 = NW_012132916.1 PATCHES 373699 chr3_KQ031385v1_fix +HG2237_PATCH fix-patch 3 Chromosome KQ031386.1 = NW_012132917.1 PATCHES 165718 chr3_KQ031386v1_fix +HG2236_PATCH fix-patch 3 Chromosome KV766192.1 = NW_017363813.1 PATCHES 411654 chr3_KV766192v1_fix +HG2133_PATCH fix-patch 3 Chromosome KZ559104.1 = NW_019805491.1 PATCHES 105527 chr3_KZ559104v1_fix +HSCHR3_4_CTG1 novel-patch 3 Chromosome KZ208909.1 = NW_018654711.1 PATCHES 175849 chr3_KZ208909v1_alt +HSCHR3_7_CTG2_1 novel-patch 3 Chromosome KZ559101.1 = NW_019805488.1 PATCHES 164041 chr3_KZ559101v1_alt +HSCHR3_8_CTG2_1 novel-patch 3 Chromosome KZ559102.1 = NW_019805489.1 PATCHES 197752 chr3_KZ559102v1_alt +HSCHR3_9_CTG2_1 novel-patch 3 Chromosome KZ559103.1 = NW_019805490.1 PATCHES 302885 chr3_KZ559103v1_alt +HSCHR3_6_CTG2_1 novel-patch 3 Chromosome KZ559105.1 = NW_019805492.1 PATCHES 195063 chr3_KZ559105v1_alt +HSCHR3_5_CTG1 novel-patch 3 Chromosome ML143343.1 = NW_021159989.1 PATCHES 215443 na +HG2023_PATCH fix-patch 4 Chromosome KQ983257.1 = NW_015495300.1 PATCHES 230434 chr4_KQ983257v1_fix +HG699_PATCH fix-patch 4 Chromosome ML143344.1 = NW_021159990.1 PATCHES 235734 na +HG2525_PATCH fix-patch 4 Chromosome ML143345.1 = NW_021159991.1 PATCHES 341066 na +HG1299_PATCH fix-patch 4 Chromosome ML143346.1 = NW_021159992.1 PATCHES 53476 na +HG1298_PATCH fix-patch 4 Chromosome ML143347.1 = NW_021159993.1 PATCHES 176674 na +HG1296_PATCH fix-patch 4 Chromosome ML143348.1 = NW_021159994.1 PATCHES 125549 na +HG705_PATCH fix-patch 4 Chromosome ML143349.1 = NW_021159995.1 PATCHES 276109 na +HSCHR4_2_CTG4 novel-patch 4 Chromosome KQ090013.1 = NW_013171799.1 PATCHES 90922 chr4_KQ090013v1_alt +HSCHR4_8_CTG12 novel-patch 4 Chromosome KQ090014.1 = NW_013171800.1 PATCHES 163749 chr4_KQ090014v1_alt +HSCHR4_9_CTG12 novel-patch 4 Chromosome KQ090015.1 = NW_013171801.1 PATCHES 236512 chr4_KQ090015v1_alt +HSCHR4_11_CTG12 novel-patch 4 Chromosome KQ983258.1 = NW_015495301.1 PATCHES 205407 chr4_KQ983258v1_alt +HSCHR4_12_CTG12 novel-patch 4 Chromosome KV766193.1 = NW_017363814.1 PATCHES 420675 chr4_KV766193v1_alt +HG30_PATCH fix-patch 5 Chromosome KV575244.1 = NW_016107298.1 PATCHES 673059 chr5_KV575244v1_fix +HG1395_PATCH fix-patch 5 Chromosome ML143350.1 = NW_021159996.1 PATCHES 89956 na +HSCHR5_7_CTG1 novel-patch 5 Chromosome KN196477.1 = NW_009646199.1 PATCHES 139087 chr5_KN196477v1_alt +HSCHR5_8_CTG1 novel-patch 5 Chromosome KV575243.1 = NW_016107297.1 PATCHES 362221 chr5_KV575243v1_alt +HSCHR5_9_CTG1 novel-patch 5 Chromosome KZ208910.1 = NW_018654712.1 PATCHES 135987 chr5_KZ208910v1_alt +HG2128_PATCH fix-patch 6 Chromosome KN196478.1 = NW_009646200.1 PATCHES 268330 chr6_KN196478v1_fix +HG1651_PATCH fix-patch 6 Chromosome KQ031387.1 = NW_012132918.1 PATCHES 320750 chr6_KQ031387v1_fix +HG2072_PATCH fix-patch 6 Chromosome KQ090016.1 = NW_013171802.1 PATCHES 245716 chr6_KQ090016v1_fix +HG2121_PATCH fix-patch 6 Chromosome KV766194.1 = NW_017363815.1 PATCHES 139427 chr6_KV766194v1_fix +HG2057_PATCH fix-patch 6 Chromosome KZ208911.1 = NW_018654713.1 PATCHES 242796 chr6_KZ208911v1_fix +HG563_PATCH fix-patch 6 Chromosome ML143351.1 = NW_021159997.1 PATCHES 73265 na +HSCHR6_1_CTG10 novel-patch 6 Chromosome KQ090017.1 = NW_013171803.1 PATCHES 82315 chr6_KQ090017v1_alt +HG2239_PATCH fix-patch 7 Chromosome KQ031388.1 = NW_012132919.1 PATCHES 179932 chr7_KQ031388v1_fix +HG2088_PATCH fix-patch 7 Chromosome KV880764.1 = NW_017852929.1 PATCHES 142129 chr7_KV880764v1_fix +HG2266_PATCH fix-patch 7 Chromosome KV880765.1 = NW_017852930.1 PATCHES 468267 chr7_KV880765v1_fix +HG708_PATCH fix-patch 7 Chromosome KZ208912.1 = NW_018654714.1 PATCHES 589656 chr7_KZ208912v1_fix +HG1309_PATCH fix-patch 7 Chromosome ML143352.1 = NW_021159998.1 PATCHES 254759 na +HSCHR7_3_CTG4_4 novel-patch 7 Chromosome KZ208913.1 = NW_018654715.1 PATCHES 680662 chr7_KZ208913v1_alt +HSCHR7_3_CTG1 novel-patch 7 Chromosome KZ559106.1 = NW_019805493.1 PATCHES 172555 chr7_KZ559106v1_alt +HG2067_PATCH fix-patch 8 Chromosome KV880766.1 = NW_017852931.1 PATCHES 156998 chr8_KV880766v1_fix +HG2068_PATCH fix-patch 8 Chromosome KV880767.1 = NW_017852932.1 PATCHES 265876 chr8_KV880767v1_fix +HG2419_PATCH fix-patch 8 Chromosome KZ208914.1 = NW_018654716.1 PATCHES 165120 chr8_KZ208914v1_fix +HG76_PATCH fix-patch 8 Chromosome KZ208915.1 = NW_018654717.1 PATCHES 6367528 chr8_KZ208915v1_fix +HSCHR8_7_CTG7 novel-patch 8 Chromosome KZ559107.1 = NW_019805494.1 PATCHES 103072 chr8_KZ559107v1_alt +HG2030_PATCH fix-patch 9 Chromosome KN196479.1 = NW_009646201.1 PATCHES 330164 chr9_KN196479v1_fix +HG613_PATCH fix-patch 9 Chromosome ML143353.1 = NW_021159999.1 PATCHES 25408 na +HSCHR9_1_CTG6 novel-patch 9 Chromosome KQ090018.1 = NW_013171804.1 PATCHES 163882 chr9_KQ090018v1_alt +HSCHR9_1_CTG7 novel-patch 9 Chromosome KQ090019.1 = NW_013171805.1 PATCHES 134099 chr9_KQ090019v1_alt +HG2191_PATCH fix-patch 10 Chromosome KN196480.1 = NW_009646202.1 PATCHES 277797 chr10_KN196480v1_fix +HG2241_PATCH fix-patch 10 Chromosome KN538365.1 = NW_011332692.1 PATCHES 14347 chr10_KN538365v1_fix +HG2242_HG2243_PATCH fix-patch 10 Chromosome KN538366.1 = NW_011332693.1 PATCHES 85284 chr10_KN538366v1_fix +HG2244_HG2245_PATCH fix-patch 10 Chromosome KN538367.1 = NW_011332694.1 PATCHES 420164 chr10_KN538367v1_fix +HG2334_PATCH fix-patch 10 Chromosome KQ090021.1 = NW_013171807.1 PATCHES 264545 chr10_KQ090021v1_fix +HG545_PATCH fix-patch 10 Chromosome ML143354.1 = NW_021160000.1 PATCHES 454963 na +HG1277_PATCH fix-patch 10 Chromosome ML143355.1 = NW_021160001.1 PATCHES 292944 na +HSCHR10_1_CTG6 novel-patch 10 Chromosome KQ090020.1 = NW_013171806.1 PATCHES 185507 chr10_KQ090020v1_alt +HG2217_PATCH fix-patch 11 Chromosome KN196481.1 = NW_009646203.1 PATCHES 108875 chr11_KN196481v1_fix +HG2116_PATCH fix-patch 11 Chromosome KQ090022.1 = NW_013171808.1 PATCHES 181958 chr11_KQ090022v1_fix +HG107_PATCH fix-patch 11 Chromosome KQ759759.1 = NW_015148966.1 PATCHES 196940 chr11_KQ759759v1_fix +HG1708_PATCH fix-patch 11 Chromosome KV766195.1 = NW_017363816.1 PATCHES 140877 chr11_KV766195v1_fix +HG2060_PATCH fix-patch 11 Chromosome KZ559108.1 = NW_019805495.1 PATCHES 305244 chr11_KZ559108v1_fix +HG2114_PATCH fix-patch 11 Chromosome KZ559109.1 = NW_019805496.1 PATCHES 279644 chr11_KZ559109v1_fix +HG1521_PATCH fix-patch 11 Chromosome ML143356.1 = NW_021160002.1 PATCHES 45257 na +HG1445_PATCH fix-patch 11 Chromosome ML143357.1 = NW_021160003.1 PATCHES 165419 na +HG28_PATCH fix-patch 11 Chromosome ML143358.1 = NW_021160004.1 PATCHES 270122 na +HG2115_PATCH fix-patch 11 Chromosome ML143359.1 = NW_021160005.1 PATCHES 217075 na +HG2111_PATCH fix-patch 11 Chromosome ML143360.1 = NW_021160006.1 PATCHES 170928 na +HSCHR11_1_CTG1_2 novel-patch 11 Chromosome KN538368.1 = NW_011332695.1 PATCHES 203552 chr11_KN538368v1_alt +HSCHR11_2_CTG8 novel-patch 11 Chromosome KZ559110.1 = NW_019805497.1 PATCHES 301637 chr11_KZ559110v1_alt +HSCHR11_1_CTG3_1 novel-patch 11 Chromosome KZ559111.1 = NW_019805498.1 PATCHES 181167 chr11_KZ559111v1_alt +HG23_PATCH fix-patch 12 Chromosome KN196482.1 = NW_009646204.1 PATCHES 211377 chr12_KN196482v1_fix +HG1362_PATCH fix-patch 12 Chromosome KN538369.1 = NW_011332696.1 PATCHES 541038 chr12_KN538369v1_fix +HG2247_PATCH fix-patch 12 Chromosome KN538370.1 = NW_011332697.1 PATCHES 86533 chr12_KN538370v1_fix +HG2063_PATCH fix-patch 12 Chromosome KQ759760.1 = NW_015148967.1 PATCHES 315610 chr12_KQ759760v1_fix +HG1815_PATCH fix-patch 12 Chromosome KZ208916.1 = NW_018654718.1 PATCHES 1046838 chr12_KZ208916v1_fix +HG2047_PATCH fix-patch 12 Chromosome KZ208917.1 = NW_018654719.1 PATCHES 64689 chr12_KZ208917v1_fix +HG2246_HG2248_HG2276_PATCH fix-patch 12 Chromosome ML143361.1 = NW_021160007.1 PATCHES 297568 na +HG1398_PATCH fix-patch 12 Chromosome ML143362.1 = NW_021160008.1 PATCHES 192531 na +HSCHR12_2_CTG1 novel-patch 12 Chromosome KQ090023.1 = NW_013171809.1 PATCHES 109323 chr12_KQ090023v1_alt +HSCHR12_8_CTG2_1 novel-patch 12 Chromosome KZ208918.1 = NW_018654720.1 PATCHES 174808 chr12_KZ208918v1_alt +HSCHR12_9_CTG2_1 novel-patch 12 Chromosome KZ559112.1 = NW_019805499.1 PATCHES 154139 chr12_KZ559112v1_alt +HG2216_PATCH fix-patch 13 Chromosome KN196483.1 = NW_009646205.1 PATCHES 35455 chr13_KN196483v1_fix +HG2288_HG2289_PATCH fix-patch 13 Chromosome KN538371.1 = NW_011332698.1 PATCHES 206320 chr13_KN538371v1_fix +HG2291_PATCH fix-patch 13 Chromosome KN538372.1 = NW_011332699.1 PATCHES 356766 chr13_KN538372v1_fix +HG2249_PATCH fix-patch 13 Chromosome KN538373.1 = NW_011332700.1 PATCHES 148762 chr13_KN538373v1_fix +HG1817_1_PATCH fix-patch 13 Chromosome ML143363.1 = NW_021160009.1 PATCHES 7309 na +HG1523_PATCH fix-patch 13 Chromosome ML143364.1 = NW_021160010.1 PATCHES 158944 na +HG1524_PATCH fix-patch 13 Chromosome ML143365.1 = NW_021160011.1 PATCHES 65394 na +HG2509_PATCH fix-patch 13 Chromosome ML143366.1 = NW_021160012.1 PATCHES 409912 na +HSCHR13_1_CTG7 novel-patch 13 Chromosome KQ090024.1 = NW_013171810.1 PATCHES 168146 chr13_KQ090024v1_alt +HSCHR13_1_CTG8 novel-patch 13 Chromosome KQ090025.1 = NW_013171811.1 PATCHES 123480 chr13_KQ090025v1_alt +HG1_PATCH fix-patch 14 Chromosome KZ208920.1 = NW_018654722.1 PATCHES 690932 chr14_KZ208920v1_fix +HG2510_PATCH fix-patch 14 Chromosome ML143367.1 = NW_021160013.1 PATCHES 399183 na +HSCHR14_8_CTG1 novel-patch 14 Chromosome KZ208919.1 = NW_018654721.1 PATCHES 171798 chr14_KZ208919v1_alt +HSCHR14_9_CTG1 novel-patch 14 Chromosome ML143368.1 = NW_021160014.1 PATCHES 264228 na +HG2139_PATCH fix-patch 15 Chromosome KN538374.1 = NW_011332701.1 PATCHES 4998962 chr15_KN538374v1_fix +HG2499_PATCH fix-patch 15 Chromosome ML143369.1 = NW_021160015.1 PATCHES 97763 na +HG2198_PATCH fix-patch 15 Chromosome ML143370.1 = NW_021160016.1 PATCHES 369264 na +HG2365_PATCH fix-patch 15 Chromosome ML143371.1 = NW_021160017.1 PATCHES 5500449 na +HG2511_PATCH fix-patch 15 Chromosome ML143372.1 = NW_021160018.1 PATCHES 396515 na +HSCHR15_6_CTG8 novel-patch 15 Chromosome KQ031389.1 = NW_012132920.1 PATCHES 2365364 chr15_KQ031389v1_alt +HG926_PATCH fix-patch 16 Chromosome KV880768.1 = NW_017852933.1 PATCHES 1927115 chr16_KV880768v1_fix +HG2263_PATCH fix-patch 16 Chromosome KZ559113.1 = NW_019805500.1 PATCHES 480415 chr16_KZ559113v1_fix +HG2471_PATCH fix-patch 16 Chromosome ML143373.1 = NW_021160019.1 PATCHES 270967 na +HSCHR16_3_CTG3_1 novel-patch 16 Chromosome KQ031390.1 = NW_012132921.1 PATCHES 169136 chr16_KQ031390v1_alt +HSCHR16_5_CTG1 novel-patch 16 Chromosome KQ090026.1 = NW_013171812.1 PATCHES 59016 chr16_KQ090026v1_alt +HSCHR16_4_CTG3_1 novel-patch 16 Chromosome KQ090027.1 = NW_013171813.1 PATCHES 267463 chr16_KQ090027v1_alt +HSCHR16_5_CTG3_1 novel-patch 16 Chromosome KZ208921.1 = NW_018654723.1 PATCHES 78609 chr16_KZ208921v1_alt +HG2046_PATCH fix-patch 17 Chromosome KV575245.1 = NW_016107299.1 PATCHES 154723 chr17_KV575245v1_fix +HG2285_HG106_HG2252_PATCH fix-patch 17 Chromosome KV766196.1 = NW_017363817.1 PATCHES 281919 chr17_KV766196v1_fix +HG2087_PATCH fix-patch 17 Chromosome ML143374.1 = NW_021160020.1 PATCHES 137908 na +HG1320_PATCH fix-patch 17 Chromosome ML143375.1 = NW_021160021.1 PATCHES 56695 na +HSCHR17_11_CTG4 novel-patch 17 Chromosome KV766197.1 = NW_017363818.1 PATCHES 246895 chr17_KV766197v1_alt +HSCHR17_3_CTG1 novel-patch 17 Chromosome KV766198.1 = NW_017363819.1 PATCHES 276292 chr17_KV766198v1_alt +HSCHR17_12_CTG4 novel-patch 17 Chromosome KZ559114.1 = NW_019805501.1 PATCHES 116753 chr17_KZ559114v1_alt +HG2213_PATCH fix-patch 18 Chromosome KQ090028.1 = NW_013171814.1 PATCHES 407387 chr18_KQ090028v1_fix +HG2442_PATCH fix-patch 18 Chromosome KZ208922.1 = NW_018654724.1 PATCHES 93070 chr18_KZ208922v1_fix +HG2412_PATCH fix-patch 18 Chromosome KZ559115.1 = NW_019805502.1 PATCHES 230843 chr18_KZ559115v1_fix +HSCHR18_5_CTG1_1 novel-patch 18 Chromosome KQ458385.1 = NW_014040928.1 PATCHES 205101 chr18_KQ458385v1_alt +HSCHR18_1_CTG1 novel-patch 18 Chromosome KZ559116.1 = NW_019805503.1 PATCHES 163186 chr18_KZ559116v1_alt +HG2021_PATCH fix-patch 19 Chromosome KN196484.1 = NW_009646206.1 PATCHES 370917 chr19_KN196484v1_fix +HG26_PATCH fix-patch 19 Chromosome KQ458386.1 = NW_014040929.1 PATCHES 405389 chr19_KQ458386v1_fix +HG109_PATCH fix-patch 19 Chromosome ML143376.1 = NW_021160022.1 PATCHES 493165 na +HSCHR19KIR_0019-4656-A_CTG3_1 novel-patch 19 Chromosome KV575246.1 = NW_016107300.1 PATCHES 163926 chr19_KV575246v1_alt +HSCHR19KIR_CA01-TA01_1_CTG3_1 novel-patch 19 Chromosome KV575247.1 = NW_016107301.1 PATCHES 170206 chr19_KV575247v1_alt +HSCHR19KIR_CA01-TA01_2_CTG3_1 novel-patch 19 Chromosome KV575248.1 = NW_016107302.1 PATCHES 168131 chr19_KV575248v1_alt +HSCHR19KIR_CA01-TB04_CTG3_1 novel-patch 19 Chromosome KV575249.1 = NW_016107303.1 PATCHES 293522 chr19_KV575249v1_alt +HSCHR19KIR_CA01-TB01_CTG3_1 novel-patch 19 Chromosome KV575250.1 = NW_016107304.1 PATCHES 241058 chr19_KV575250v1_alt +HSCHR19KIR_HG2394_CTG3_1 novel-patch 19 Chromosome KV575251.1 = NW_016107305.1 PATCHES 159285 chr19_KV575251v1_alt +HSCHR19KIR_502960008-2_CTG3_1 novel-patch 19 Chromosome KV575252.1 = NW_016107306.1 PATCHES 178197 chr19_KV575252v1_alt +HSCHR19KIR_502960008-1_CTG3_1 novel-patch 19 Chromosome KV575253.1 = NW_016107307.1 PATCHES 166713 chr19_KV575253v1_alt +HSCHR19KIR_0010-5217-AB_CTG3_1 novel-patch 19 Chromosome KV575254.1 = NW_016107308.1 PATCHES 99845 chr19_KV575254v1_alt +HSCHR19KIR_7191059-1_CTG3_1 novel-patch 19 Chromosome KV575255.1 = NW_016107309.1 PATCHES 161095 chr19_KV575255v1_alt +HSCHR19KIR_0019-4656-B_CTG3_1 novel-patch 19 Chromosome KV575256.1 = NW_016107310.1 PATCHES 223118 chr19_KV575256v1_alt +HSCHR19KIR_CA04_CTG3_1 novel-patch 19 Chromosome KV575257.1 = NW_016107311.1 PATCHES 100553 chr19_KV575257v1_alt +HSCHR19KIR_HG2393_CTG3_1 novel-patch 19 Chromosome KV575258.1 = NW_016107312.1 PATCHES 156965 chr19_KV575258v1_alt +HSCHR19KIR_7191059-2_CTG3_1 novel-patch 19 Chromosome KV575259.1 = NW_016107313.1 PATCHES 171263 chr19_KV575259v1_alt +HSCHR19KIR_HG2396_CTG3_1 novel-patch 19 Chromosome KV575260.1 = NW_016107314.1 PATCHES 145691 chr19_KV575260v1_alt +HG2513_PATCH fix-patch 21 Chromosome ML143377.1 = NW_021160023.1 PATCHES 519485 na +HG1311_PATCH fix-patch 22 Chromosome KQ759762.1 = NW_015148969.1 PATCHES 101037 chr22_KQ759762v1_fix +HG1485_PATCH fix-patch 22 Chromosome ML143378.1 = NW_021160024.1 PATCHES 461303 na +HG494_PATCH fix-patch 22 Chromosome ML143379.1 = NW_021160025.1 PATCHES 12295 na +HG2512_PATCH fix-patch 22 Chromosome ML143380.1 = NW_021160026.1 PATCHES 412368 na +HSCHR22_4_CTG1 novel-patch 22 Chromosome KN196485.1 = NW_009646207.1 PATCHES 156562 chr22_KN196485v1_alt +HSCHR22_5_CTG1 novel-patch 22 Chromosome KN196486.1 = NW_009646208.1 PATCHES 153027 chr22_KN196486v1_alt +HSCHR22_6_CTG1 novel-patch 22 Chromosome KQ458387.1 = NW_014040930.1 PATCHES 155930 chr22_KQ458387v1_alt +HSCHR22_7_CTG1 novel-patch 22 Chromosome KQ458388.1 = NW_014040931.1 PATCHES 174749 chr22_KQ458388v1_alt +HSCHR22_8_CTG1 novel-patch 22 Chromosome KQ759761.1 = NW_015148968.1 PATCHES 145162 chr22_KQ759761v1_alt +HG439_PATCH fix-patch X Chromosome ML143381.1 = NW_021160027.1 PATCHES 403128 na +HG1506_PATCH fix-patch X Chromosome ML143382.1 = NW_021160028.1 PATCHES 28824 na +HG1507_PATCH fix-patch X Chromosome ML143383.1 = NW_021160029.1 PATCHES 68192 na +HG1509_PATCH fix-patch X Chromosome ML143384.1 = NW_021160030.1 PATCHES 14678 na +HG1466_PATCH fix-patch X Chromosome ML143385.1 = NW_021160031.1 PATCHES 17435 na +HSCHRX_3_CTG7 novel-patch X Chromosome KV766199.1 = NW_017363820.1 PATCHES 188004 chrX_KV766199v1_alt +HG2062_PATCH fix-patch Y Chromosome KN196487.1 = NW_009646209.1 PATCHES 101150 chrY_KN196487v1_fix +HG1531_PATCH fix-patch Y Chromosome KZ208923.1 = NW_018654725.1 PATCHES 48370 chrY_KZ208923v1_fix +HG1535_PATCH fix-patch Y Chromosome KZ208924.1 = NW_018654726.1 PATCHES 209722 chrY_KZ208924v1_fix +HSCHR1_1_CTG31 alt-scaffold 1 Chromosome GL383518.1 = NW_003315905.1 ALT_REF_LOCI_1 182439 chr1_GL383518v1_alt +HSCHR1_2_CTG31 alt-scaffold 1 Chromosome GL383519.1 = NW_003315906.1 ALT_REF_LOCI_1 110268 chr1_GL383519v1_alt +HSCHR1_3_CTG31 alt-scaffold 1 Chromosome GL383520.2 = NW_003315907.2 ALT_REF_LOCI_1 366580 chr1_GL383520v2_alt +HSCHR1_1_CTG32_1 alt-scaffold 1 Chromosome KI270759.1 = NT_187516.1 ALT_REF_LOCI_1 425601 chr1_KI270759v1_alt +HSCHR1_1_CTG11 alt-scaffold 1 Chromosome KI270760.1 = NT_187514.1 ALT_REF_LOCI_1 109528 chr1_KI270760v1_alt +HSCHR1_2_CTG32_1 alt-scaffold 1 Chromosome KI270761.1 = NT_187518.1 ALT_REF_LOCI_1 165834 chr1_KI270761v1_alt +HSCHR1_1_CTG3 alt-scaffold 1 Chromosome KI270762.1 = NT_187515.1 ALT_REF_LOCI_1 354444 chr1_KI270762v1_alt +HSCHR1_3_CTG32_1 alt-scaffold 1 Chromosome KI270763.1 = NT_187519.1 ALT_REF_LOCI_1 911658 chr1_KI270763v1_alt +HSCHR1_4_CTG32_1 alt-scaffold 1 Chromosome KI270764.1 = NT_187521.1 ALT_REF_LOCI_1 50258 chr1_KI270764v1_alt +HSCHR1_4_CTG31 alt-scaffold 1 Chromosome KI270765.1 = NT_187520.1 ALT_REF_LOCI_1 185285 chr1_KI270765v1_alt +HSCHR1_2_CTG3 alt-scaffold 1 Chromosome KI270766.1 = NT_187517.1 ALT_REF_LOCI_1 256271 chr1_KI270766v1_alt +HSCHR2_1_CTG5 alt-scaffold 2 Chromosome GL383521.1 = NW_003315908.1 ALT_REF_LOCI_1 143390 chr2_GL383521v1_alt +HSCHR2_1_CTG7_2 alt-scaffold 2 Chromosome GL383522.1 = NW_003315909.1 ALT_REF_LOCI_1 123821 chr2_GL383522v1_alt +HSCHR2_2_CTG7_2 alt-scaffold 2 Chromosome GL582966.2 = NW_003571033.2 ALT_REF_LOCI_1 96131 chr2_GL582966v2_alt +HSCHR2_1_CTG15 alt-scaffold 2 Chromosome KI270767.1 = NT_187523.1 ALT_REF_LOCI_1 161578 chr2_KI270767v1_alt +HSCHR2_3_CTG7_2 alt-scaffold 2 Chromosome KI270768.1 = NT_187528.1 ALT_REF_LOCI_1 110099 chr2_KI270768v1_alt +HSCHR2_1_CTG1 alt-scaffold 2 Chromosome KI270769.1 = NT_187522.1 ALT_REF_LOCI_1 120616 chr2_KI270769v1_alt +HSCHR2_2_CTG1 alt-scaffold 2 Chromosome KI270770.1 = NT_187525.1 ALT_REF_LOCI_1 136240 chr2_KI270770v1_alt +HSCHR2_4_CTG7_2 alt-scaffold 2 Chromosome KI270771.1 = NT_187530.1 ALT_REF_LOCI_1 110395 chr2_KI270771v1_alt +HSCHR2_1_CTG7 alt-scaffold 2 Chromosome KI270772.1 = NT_187524.1 ALT_REF_LOCI_1 133041 chr2_KI270772v1_alt +HSCHR2_3_CTG1 alt-scaffold 2 Chromosome KI270773.1 = NT_187526.1 ALT_REF_LOCI_1 70887 chr2_KI270773v1_alt +HSCHR2_4_CTG1 alt-scaffold 2 Chromosome KI270774.1 = NT_187529.1 ALT_REF_LOCI_1 223625 chr2_KI270774v1_alt +HSCHR2_5_CTG7_2 alt-scaffold 2 Chromosome KI270775.1 = NT_187531.1 ALT_REF_LOCI_1 138019 chr2_KI270775v1_alt +HSCHR2_3_CTG15 alt-scaffold 2 Chromosome KI270776.1 = NT_187527.1 ALT_REF_LOCI_1 174166 chr2_KI270776v1_alt +HSCHR3_1_CTG2_1 alt-scaffold 3 Chromosome GL383526.1 = NW_003315913.1 ALT_REF_LOCI_1 180671 chr3_GL383526v1_alt +HSCHR3_1_CTG1 alt-scaffold 3 Chromosome JH636055.2 = NW_003871060.2 ALT_REF_LOCI_1 173151 chr3_JH636055v2_alt +HSCHR3_2_CTG2_1 alt-scaffold 3 Chromosome KI270777.1 = NT_187533.1 ALT_REF_LOCI_1 173649 chr3_KI270777v1_alt +HSCHR3_3_CTG2_1 alt-scaffold 3 Chromosome KI270778.1 = NT_187536.1 ALT_REF_LOCI_1 248252 chr3_KI270778v1_alt +HSCHR3_1_CTG3 alt-scaffold 3 Chromosome KI270779.1 = NT_187532.1 ALT_REF_LOCI_1 205312 chr3_KI270779v1_alt +HSCHR3_4_CTG2_1 alt-scaffold 3 Chromosome KI270780.1 = NT_187537.1 ALT_REF_LOCI_1 224108 chr3_KI270780v1_alt +HSCHR3_5_CTG2_1 alt-scaffold 3 Chromosome KI270781.1 = NT_187538.1 ALT_REF_LOCI_1 113034 chr3_KI270781v1_alt +HSCHR3_2_CTG3 alt-scaffold 3 Chromosome KI270782.1 = NT_187534.1 ALT_REF_LOCI_1 162429 chr3_KI270782v1_alt +HSCHR3_3_CTG1 alt-scaffold 3 Chromosome KI270783.1 = NT_187535.1 ALT_REF_LOCI_1 109187 chr3_KI270783v1_alt +HSCHR3_9_CTG3 alt-scaffold 3 Chromosome KI270784.1 = NT_187539.1 ALT_REF_LOCI_1 184404 chr3_KI270784v1_alt +HSCHR4_1_CTG9 alt-scaffold 4 Chromosome GL000257.2 = NT_167250.2 ALT_REF_LOCI_1 586476 chr4_GL000257v2_alt +HSCHR4_1_CTG12 alt-scaffold 4 Chromosome GL383527.1 = NW_003315914.1 ALT_REF_LOCI_1 164536 chr4_GL383527v1_alt +HSCHR4_1_CTG6 alt-scaffold 4 Chromosome GL383528.1 = NW_003315915.1 ALT_REF_LOCI_1 376187 chr4_GL383528v1_alt +HSCHR4_2_CTG12 alt-scaffold 4 Chromosome KI270785.1 = NT_187542.1 ALT_REF_LOCI_1 119912 chr4_KI270785v1_alt +HSCHR4_3_CTG12 alt-scaffold 4 Chromosome KI270786.1 = NT_187543.1 ALT_REF_LOCI_1 244096 chr4_KI270786v1_alt +HSCHR4_1_CTG8_1 alt-scaffold 4 Chromosome KI270787.1 = NT_187541.1 ALT_REF_LOCI_1 111943 chr4_KI270787v1_alt +HSCHR4_4_CTG12 alt-scaffold 4 Chromosome KI270788.1 = NT_187544.1 ALT_REF_LOCI_1 158965 chr4_KI270788v1_alt +HSCHR4_5_CTG12 alt-scaffold 4 Chromosome KI270789.1 = NT_187545.1 ALT_REF_LOCI_1 205944 chr4_KI270789v1_alt +HSCHR4_1_CTG4 alt-scaffold 4 Chromosome KI270790.1 = NT_187540.1 ALT_REF_LOCI_1 220246 chr4_KI270790v1_alt +HSCHR5_2_CTG1_1 alt-scaffold 5 Chromosome GL339449.2 = NW_003315917.2 ALT_REF_LOCI_1 1612928 chr5_GL339449v2_alt +HSCHR5_3_CTG1_1 alt-scaffold 5 Chromosome GL383530.1 = NW_003315918.1 ALT_REF_LOCI_1 101241 chr5_GL383530v1_alt +HSCHR5_1_CTG5 alt-scaffold 5 Chromosome GL383531.1 = NW_003315919.1 ALT_REF_LOCI_1 173459 chr5_GL383531v1_alt +HSCHR5_1_CTG1 alt-scaffold 5 Chromosome GL383532.1 = NW_003315920.1 ALT_REF_LOCI_1 82728 chr5_GL383532v1_alt +HSCHR5_2_CTG1 alt-scaffold 5 Chromosome GL949742.1 = NW_003571036.1 ALT_REF_LOCI_1 226852 chr5_GL949742v1_alt +HSCHR5_3_CTG1 alt-scaffold 5 Chromosome KI270791.1 = NT_187547.1 ALT_REF_LOCI_1 195710 chr5_KI270791v1_alt +HSCHR5_4_CTG1 alt-scaffold 5 Chromosome KI270792.1 = NT_187548.1 ALT_REF_LOCI_1 179043 chr5_KI270792v1_alt +HSCHR5_5_CTG1 alt-scaffold 5 Chromosome KI270793.1 = NT_187550.1 ALT_REF_LOCI_1 126136 chr5_KI270793v1_alt +HSCHR5_6_CTG1 alt-scaffold 5 Chromosome KI270794.1 = NT_187551.1 ALT_REF_LOCI_1 164558 chr5_KI270794v1_alt +HSCHR5_2_CTG5 alt-scaffold 5 Chromosome KI270795.1 = NT_187546.1 ALT_REF_LOCI_1 131892 chr5_KI270795v1_alt +HSCHR5_4_CTG1_1 alt-scaffold 5 Chromosome KI270796.1 = NT_187549.1 ALT_REF_LOCI_1 172708 chr5_KI270796v1_alt +HSCHR6_MHC_APD_CTG1 alt-scaffold 6 Chromosome GL000250.2 = NT_167244.2 ALT_REF_LOCI_1 4672374 chr6_GL000250v2_alt +HSCHR6_1_CTG2 alt-scaffold 6 Chromosome GL383533.1 = NW_003315921.1 ALT_REF_LOCI_1 124736 chr6_GL383533v1_alt +HSCHR6_1_CTG3 alt-scaffold 6 Chromosome KB021644.2 = NW_004166862.2 ALT_REF_LOCI_1 185823 chr6_KB021644v2_alt +HSCHR6_1_CTG4 alt-scaffold 6 Chromosome KI270797.1 = NT_187552.1 ALT_REF_LOCI_1 197536 chr6_KI270797v1_alt +HSCHR6_1_CTG5 alt-scaffold 6 Chromosome KI270798.1 = NT_187553.1 ALT_REF_LOCI_1 271782 chr6_KI270798v1_alt +HSCHR6_1_CTG6 alt-scaffold 6 Chromosome KI270799.1 = NT_187554.1 ALT_REF_LOCI_1 152148 chr6_KI270799v1_alt +HSCHR6_1_CTG7 alt-scaffold 6 Chromosome KI270800.1 = NT_187555.1 ALT_REF_LOCI_1 175808 chr6_KI270800v1_alt +HSCHR6_1_CTG8 alt-scaffold 6 Chromosome KI270801.1 = NT_187556.1 ALT_REF_LOCI_1 870480 chr6_KI270801v1_alt +HSCHR6_1_CTG9 alt-scaffold 6 Chromosome KI270802.1 = NT_187557.1 ALT_REF_LOCI_1 75005 chr6_KI270802v1_alt +HSCHR7_1_CTG6 alt-scaffold 7 Chromosome GL383534.2 = NW_003315922.2 ALT_REF_LOCI_1 119183 chr7_GL383534v2_alt +HSCHR7_2_CTG6 alt-scaffold 7 Chromosome KI270803.1 = NT_187562.1 ALT_REF_LOCI_1 1111570 chr7_KI270803v1_alt +HSCHR7_1_CTG1 alt-scaffold 7 Chromosome KI270804.1 = NT_187558.1 ALT_REF_LOCI_1 157952 chr7_KI270804v1_alt +HSCHR7_1_CTG7 alt-scaffold 7 Chromosome KI270805.1 = NT_187560.1 ALT_REF_LOCI_1 209988 chr7_KI270805v1_alt +HSCHR7_1_CTG4_4 alt-scaffold 7 Chromosome KI270806.1 = NT_187559.1 ALT_REF_LOCI_1 158166 chr7_KI270806v1_alt +HSCHR7_2_CTG7 alt-scaffold 7 Chromosome KI270807.1 = NT_187563.1 ALT_REF_LOCI_1 126434 chr7_KI270807v1_alt +HSCHR7_3_CTG6 alt-scaffold 7 Chromosome KI270808.1 = NT_187564.1 ALT_REF_LOCI_1 271455 chr7_KI270808v1_alt +HSCHR7_2_CTG4_4 alt-scaffold 7 Chromosome KI270809.1 = NT_187561.1 ALT_REF_LOCI_1 209586 chr7_KI270809v1_alt +HSCHR8_1_CTG7 alt-scaffold 8 Chromosome KI270810.1 = NT_187567.1 ALT_REF_LOCI_1 374415 chr8_KI270810v1_alt +HSCHR8_1_CTG1 alt-scaffold 8 Chromosome KI270811.1 = NT_187565.1 ALT_REF_LOCI_1 292436 chr8_KI270811v1_alt +HSCHR8_2_CTG1 alt-scaffold 8 Chromosome KI270812.1 = NT_187568.1 ALT_REF_LOCI_1 282736 chr8_KI270812v1_alt +HSCHR8_3_CTG1 alt-scaffold 8 Chromosome KI270813.1 = NT_187570.1 ALT_REF_LOCI_1 300230 chr8_KI270813v1_alt +HSCHR8_1_CTG6 alt-scaffold 8 Chromosome KI270814.1 = NT_187566.1 ALT_REF_LOCI_1 141812 chr8_KI270814v1_alt +HSCHR8_2_CTG7 alt-scaffold 8 Chromosome KI270815.1 = NT_187569.1 ALT_REF_LOCI_1 132244 chr8_KI270815v1_alt +HSCHR8_3_CTG7 alt-scaffold 8 Chromosome KI270816.1 = NT_187571.1 ALT_REF_LOCI_1 305841 chr8_KI270816v1_alt +HSCHR8_4_CTG7 alt-scaffold 8 Chromosome KI270817.1 = NT_187573.1 ALT_REF_LOCI_1 158983 chr8_KI270817v1_alt +HSCHR8_4_CTG1 alt-scaffold 8 Chromosome KI270818.1 = NT_187572.1 ALT_REF_LOCI_1 145606 chr8_KI270818v1_alt +HSCHR8_5_CTG7 alt-scaffold 8 Chromosome KI270819.1 = NT_187574.1 ALT_REF_LOCI_1 133535 chr8_KI270819v1_alt +HSCHR8_6_CTG7 alt-scaffold 8 Chromosome KI270820.1 = NT_187575.1 ALT_REF_LOCI_1 36640 chr8_KI270820v1_alt +HSCHR8_8_CTG1 alt-scaffold 8 Chromosome KI270821.1 = NT_187576.1 ALT_REF_LOCI_1 985506 chr8_KI270821v1_alt +HSCHR8_9_CTG1 alt-scaffold 8 Chromosome KI270822.1 = NT_187577.1 ALT_REF_LOCI_1 624492 chr8_KI270822v1_alt +HSCHR9_1_CTG1 alt-scaffold 9 Chromosome GL383539.1 = NW_003315928.1 ALT_REF_LOCI_1 162988 chr9_GL383539v1_alt +HSCHR9_1_CTG2 alt-scaffold 9 Chromosome GL383540.1 = NW_003315929.1 ALT_REF_LOCI_1 71551 chr9_GL383540v1_alt +HSCHR9_1_CTG3 alt-scaffold 9 Chromosome GL383541.1 = NW_003315930.1 ALT_REF_LOCI_1 171286 chr9_GL383541v1_alt +HSCHR9_1_CTG4 alt-scaffold 9 Chromosome GL383542.1 = NW_003315931.1 ALT_REF_LOCI_1 60032 chr9_GL383542v1_alt +HSCHR9_1_CTG5 alt-scaffold 9 Chromosome KI270823.1 = NT_187578.1 ALT_REF_LOCI_1 439082 chr9_KI270823v1_alt +HSCHR10_1_CTG1 alt-scaffold 10 Chromosome GL383545.1 = NW_003315934.1 ALT_REF_LOCI_1 179254 chr10_GL383545v1_alt +HSCHR10_1_CTG2 alt-scaffold 10 Chromosome GL383546.1 = NW_003315935.1 ALT_REF_LOCI_1 309802 chr10_GL383546v1_alt +HSCHR10_1_CTG3 alt-scaffold 10 Chromosome KI270824.1 = NT_187579.1 ALT_REF_LOCI_1 181496 chr10_KI270824v1_alt +HSCHR10_1_CTG4 alt-scaffold 10 Chromosome KI270825.1 = NT_187580.1 ALT_REF_LOCI_1 188315 chr10_KI270825v1_alt +HSCHR11_1_CTG1_1 alt-scaffold 11 Chromosome GL383547.1 = NW_003315936.1 ALT_REF_LOCI_1 154407 chr11_GL383547v1_alt +HG142_HG150_NOVEL_TEST alt-scaffold 11 Chromosome JH159136.1 = NW_003871073.1 ALT_REF_LOCI_1 200998 chr11_JH159136v1_alt +HG151_NOVEL_TEST alt-scaffold 11 Chromosome JH159137.1 = NW_003871074.1 ALT_REF_LOCI_1 191409 chr11_JH159137v1_alt +HSCHR11_1_CTG2 alt-scaffold 11 Chromosome KI270826.1 = NT_187581.1 ALT_REF_LOCI_1 186169 chr11_KI270826v1_alt +HSCHR11_1_CTG3 alt-scaffold 11 Chromosome KI270827.1 = NT_187582.1 ALT_REF_LOCI_1 67707 chr11_KI270827v1_alt +HSCHR11_1_CTG5 alt-scaffold 11 Chromosome KI270829.1 = NT_187583.1 ALT_REF_LOCI_1 204059 chr11_KI270829v1_alt +HSCHR11_1_CTG6 alt-scaffold 11 Chromosome KI270830.1 = NT_187584.1 ALT_REF_LOCI_1 177092 chr11_KI270830v1_alt +HSCHR11_1_CTG7 alt-scaffold 11 Chromosome KI270831.1 = NT_187585.1 ALT_REF_LOCI_1 296895 chr11_KI270831v1_alt +HSCHR11_1_CTG8 alt-scaffold 11 Chromosome KI270832.1 = NT_187586.1 ALT_REF_LOCI_1 210133 chr11_KI270832v1_alt +HSCHR12_1_CTG2 alt-scaffold 12 Chromosome GL383549.1 = NW_003315938.1 ALT_REF_LOCI_1 120804 chr12_GL383549v1_alt +HSCHR12_1_CTG2_1 alt-scaffold 12 Chromosome GL383550.2 = NW_003315939.2 ALT_REF_LOCI_1 169178 chr12_GL383550v2_alt +HSCHR12_4_CTG2_1 alt-scaffold 12 Chromosome GL383551.1 = NW_003315940.1 ALT_REF_LOCI_1 184319 chr12_GL383551v1_alt +HSCHR12_2_CTG2_1 alt-scaffold 12 Chromosome GL383552.1 = NW_003315941.1 ALT_REF_LOCI_1 138655 chr12_GL383552v1_alt +HSCHR12_3_CTG2_1 alt-scaffold 12 Chromosome GL383553.2 = NW_003315942.2 ALT_REF_LOCI_1 152874 chr12_GL383553v2_alt +HSCHR12_1_CTG1 alt-scaffold 12 Chromosome GL877875.1 = NW_003571049.1 ALT_REF_LOCI_1 167313 chr12_GL877875v1_alt +HSCHR12_2_CTG2 alt-scaffold 12 Chromosome GL877876.1 = NW_003571050.1 ALT_REF_LOCI_1 408271 chr12_GL877876v1_alt +HSCHR12_5_CTG2_1 alt-scaffold 12 Chromosome KI270833.1 = NT_187589.1 ALT_REF_LOCI_1 76061 chr12_KI270833v1_alt +HSCHR12_6_CTG2_1 alt-scaffold 12 Chromosome KI270834.1 = NT_187590.1 ALT_REF_LOCI_1 119498 chr12_KI270834v1_alt +HSCHR12_4_CTG2 alt-scaffold 12 Chromosome KI270835.1 = NT_187587.1 ALT_REF_LOCI_1 238139 chr12_KI270835v1_alt +HSCHR12_7_CTG2_1 alt-scaffold 12 Chromosome KI270836.1 = NT_187591.1 ALT_REF_LOCI_1 56134 chr12_KI270836v1_alt +HSCHR12_5_CTG2 alt-scaffold 12 Chromosome KI270837.1 = NT_187588.1 ALT_REF_LOCI_1 40090 chr12_KI270837v1_alt +HSCHR13_1_CTG1 alt-scaffold 13 Chromosome KI270838.1 = NT_187592.1 ALT_REF_LOCI_1 306913 chr13_KI270838v1_alt +HSCHR13_1_CTG2 alt-scaffold 13 Chromosome KI270839.1 = NT_187593.1 ALT_REF_LOCI_1 180306 chr13_KI270839v1_alt +HSCHR13_1_CTG3 alt-scaffold 13 Chromosome KI270840.1 = NT_187594.1 ALT_REF_LOCI_1 191684 chr13_KI270840v1_alt +HSCHR13_1_CTG4 alt-scaffold 13 Chromosome KI270841.1 = NT_187595.1 ALT_REF_LOCI_1 169134 chr13_KI270841v1_alt +HSCHR13_1_CTG5 alt-scaffold 13 Chromosome KI270842.1 = NT_187596.1 ALT_REF_LOCI_1 37287 chr13_KI270842v1_alt +HSCHR13_1_CTG6 alt-scaffold 13 Chromosome KI270843.1 = NT_187597.1 ALT_REF_LOCI_1 103832 chr13_KI270843v1_alt +HSCHR14_1_CTG1 alt-scaffold 14 Chromosome KI270844.1 = NT_187598.1 ALT_REF_LOCI_1 322166 chr14_KI270844v1_alt +HSCHR14_2_CTG1 alt-scaffold 14 Chromosome KI270845.1 = NT_187599.1 ALT_REF_LOCI_1 180703 chr14_KI270845v1_alt +HSCHR14_3_CTG1 alt-scaffold 14 Chromosome KI270846.1 = NT_187600.1 ALT_REF_LOCI_1 1351393 chr14_KI270846v1_alt +HSCHR14_7_CTG1 alt-scaffold 14 Chromosome KI270847.1 = NT_187601.1 ALT_REF_LOCI_1 1511111 chr14_KI270847v1_alt +HSCHR15_1_CTG8 alt-scaffold 15 Chromosome GL383554.1 = NW_003315943.1 ALT_REF_LOCI_1 296527 chr15_GL383554v1_alt +HSCHR15_2_CTG8 alt-scaffold 15 Chromosome GL383555.2 = NW_003315944.2 ALT_REF_LOCI_1 388773 chr15_GL383555v2_alt +HSCHR15_1_CTG3 alt-scaffold 15 Chromosome KI270848.1 = NT_187603.1 ALT_REF_LOCI_1 327382 chr15_KI270848v1_alt +HSCHR15_3_CTG8 alt-scaffold 15 Chromosome KI270849.1 = NT_187605.1 ALT_REF_LOCI_1 244917 chr15_KI270849v1_alt +HSCHR15_5_CTG8 alt-scaffold 15 Chromosome KI270850.1 = NT_187606.1 ALT_REF_LOCI_1 430880 chr15_KI270850v1_alt +HSCHR15_3_CTG3 alt-scaffold 15 Chromosome KI270851.1 = NT_187604.1 ALT_REF_LOCI_1 263054 chr15_KI270851v1_alt +HSCHR15_1_CTG1 alt-scaffold 15 Chromosome KI270852.1 = NT_187602.1 ALT_REF_LOCI_1 478999 chr15_KI270852v1_alt +HSCHR16_1_CTG3_1 alt-scaffold 16 Chromosome GL383556.1 = NW_003315945.1 ALT_REF_LOCI_1 192462 chr16_GL383556v1_alt +HSCHR16_2_CTG3_1 alt-scaffold 16 Chromosome GL383557.1 = NW_003315946.1 ALT_REF_LOCI_1 89672 chr16_GL383557v1_alt +HSCHR16_1_CTG1 alt-scaffold 16 Chromosome KI270853.1 = NT_187607.1 ALT_REF_LOCI_1 2659700 chr16_KI270853v1_alt +HSCHR16_CTG2 alt-scaffold 16 Chromosome KI270854.1 = NT_187610.1 ALT_REF_LOCI_1 134193 chr16_KI270854v1_alt +HSCHR16_3_CTG1 alt-scaffold 16 Chromosome KI270855.1 = NT_187608.1 ALT_REF_LOCI_1 232857 chr16_KI270855v1_alt +HSCHR16_4_CTG1 alt-scaffold 16 Chromosome KI270856.1 = NT_187609.1 ALT_REF_LOCI_1 63982 chr16_KI270856v1_alt +HSCHR17_1_CTG5 alt-scaffold 17 Chromosome GL000258.2 = NT_167251.2 ALT_REF_LOCI_1 1821992 chr17_GL000258v2_alt +HSCHR17_1_CTG1 alt-scaffold 17 Chromosome GL383563.3 = NW_003315952.3 ALT_REF_LOCI_1 375691 chr17_GL383563v3_alt +HSCHR17_1_CTG4 alt-scaffold 17 Chromosome GL383564.2 = NW_003315953.2 ALT_REF_LOCI_1 133151 chr17_GL383564v2_alt +HSCHR17_2_CTG4 alt-scaffold 17 Chromosome GL383565.1 = NW_003315954.1 ALT_REF_LOCI_1 223995 chr17_GL383565v1_alt +HSCHR17_3_CTG4 alt-scaffold 17 Chromosome GL383566.1 = NW_003315955.1 ALT_REF_LOCI_1 90219 chr17_GL383566v1_alt +HSCHR17_4_CTG4 alt-scaffold 17 Chromosome JH159146.1 = NW_003871091.1 ALT_REF_LOCI_1 278131 chr17_JH159146v1_alt +HSCHR17_5_CTG4 alt-scaffold 17 Chromosome JH159147.1 = NW_003871092.1 ALT_REF_LOCI_1 70345 chr17_JH159147v1_alt +HSCHR17_7_CTG4 alt-scaffold 17 Chromosome KI270857.1 = NT_187614.1 ALT_REF_LOCI_1 2877074 chr17_KI270857v1_alt +HSCHR17_8_CTG4 alt-scaffold 17 Chromosome KI270858.1 = NT_187615.1 ALT_REF_LOCI_1 235827 chr17_KI270858v1_alt +HSCHR17_9_CTG4 alt-scaffold 17 Chromosome KI270859.1 = NT_187616.1 ALT_REF_LOCI_1 108763 chr17_KI270859v1_alt +HSCHR17_1_CTG9 alt-scaffold 17 Chromosome KI270860.1 = NT_187612.1 ALT_REF_LOCI_1 178921 chr17_KI270860v1_alt +HSCHR17_1_CTG2 alt-scaffold 17 Chromosome KI270861.1 = NT_187611.1 ALT_REF_LOCI_1 196688 chr17_KI270861v1_alt +HSCHR17_2_CTG2 alt-scaffold 17 Chromosome KI270862.1 = NT_187613.1 ALT_REF_LOCI_1 391357 chr17_KI270862v1_alt +HSCHR18_1_CTG1_1 alt-scaffold 18 Chromosome GL383567.1 = NW_003315956.1 ALT_REF_LOCI_1 289831 chr18_GL383567v1_alt +HSCHR18_1_CTG2 alt-scaffold 18 Chromosome GL383568.1 = NW_003315957.1 ALT_REF_LOCI_1 104552 chr18_GL383568v1_alt +HSCHR18_1_CTG2_1 alt-scaffold 18 Chromosome GL383569.1 = NW_003315958.1 ALT_REF_LOCI_1 167950 chr18_GL383569v1_alt +HSCHR18_2_CTG1_1 alt-scaffold 18 Chromosome GL383570.1 = NW_003315959.1 ALT_REF_LOCI_1 164789 chr18_GL383570v1_alt +HSCHR18_2_CTG2 alt-scaffold 18 Chromosome GL383571.1 = NW_003315960.1 ALT_REF_LOCI_1 198278 chr18_GL383571v1_alt +HSCHR18_2_CTG2_1 alt-scaffold 18 Chromosome GL383572.1 = NW_003315961.1 ALT_REF_LOCI_1 159547 chr18_GL383572v1_alt +HSCHR18_3_CTG2_1 alt-scaffold 18 Chromosome KI270863.1 = NT_187617.1 ALT_REF_LOCI_1 167999 chr18_KI270863v1_alt +HSCHR18_4_CTG1_1 alt-scaffold 18 Chromosome KI270864.1 = NT_187618.1 ALT_REF_LOCI_1 111737 chr18_KI270864v1_alt +HSCHR19_1_CTG2 alt-scaffold 19 Chromosome GL383573.1 = NW_003315962.1 ALT_REF_LOCI_1 385657 chr19_GL383573v1_alt +HSCHR19_1_CTG3_1 alt-scaffold 19 Chromosome GL383574.1 = NW_003315963.1 ALT_REF_LOCI_1 155864 chr19_GL383574v1_alt +HSCHR19_2_CTG2 alt-scaffold 19 Chromosome GL383575.2 = NW_003315964.2 ALT_REF_LOCI_1 170222 chr19_GL383575v2_alt +HSCHR19_3_CTG2 alt-scaffold 19 Chromosome GL383576.1 = NW_003315965.1 ALT_REF_LOCI_1 188024 chr19_GL383576v1_alt +HSCHR19LRC_COX1_CTG3_1 alt-scaffold 19 Chromosome GL949746.1 = NW_003571054.1 ALT_REF_LOCI_1 987716 chr19_GL949746v1_alt +HSCHR19_4_CTG2 alt-scaffold 19 Chromosome KI270865.1 = NT_187621.1 ALT_REF_LOCI_1 52969 chr19_KI270865v1_alt +HSCHR19_2_CTG3_1 alt-scaffold 19 Chromosome KI270866.1 = NT_187619.1 ALT_REF_LOCI_1 43156 chr19_KI270866v1_alt +HSCHR19_3_CTG3_1 alt-scaffold 19 Chromosome KI270867.1 = NT_187620.1 ALT_REF_LOCI_1 233762 chr19_KI270867v1_alt +HSCHR19_5_CTG2 alt-scaffold 19 Chromosome KI270868.1 = NT_187622.1 ALT_REF_LOCI_1 61734 chr19_KI270868v1_alt +HSCHR20_1_CTG1 alt-scaffold 20 Chromosome GL383577.2 = NW_003315966.2 ALT_REF_LOCI_1 128386 chr20_GL383577v2_alt +HSCHR20_1_CTG2 alt-scaffold 20 Chromosome KI270869.1 = NT_187623.1 ALT_REF_LOCI_1 118774 chr20_KI270869v1_alt +HSCHR20_1_CTG3 alt-scaffold 20 Chromosome KI270870.1 = NT_187624.1 ALT_REF_LOCI_1 183433 chr20_KI270870v1_alt +HSCHR20_1_CTG4 alt-scaffold 20 Chromosome KI270871.1 = NT_187625.1 ALT_REF_LOCI_1 58661 chr20_KI270871v1_alt +HSCHR21_1_CTG1_1 alt-scaffold 21 Chromosome GL383578.2 = NW_003315967.2 ALT_REF_LOCI_1 63917 chr21_GL383578v2_alt +HSCHR21_2_CTG1_1 alt-scaffold 21 Chromosome GL383579.2 = NW_003315968.2 ALT_REF_LOCI_1 201197 chr21_GL383579v2_alt +HSCHR21_3_CTG1_1 alt-scaffold 21 Chromosome GL383580.2 = NW_003315969.2 ALT_REF_LOCI_1 74653 chr21_GL383580v2_alt +HSCHR21_4_CTG1_1 alt-scaffold 21 Chromosome GL383581.2 = NW_003315970.2 ALT_REF_LOCI_1 116689 chr21_GL383581v2_alt +HSCHR21_5_CTG2 alt-scaffold 21 Chromosome KI270872.1 = NT_187626.1 ALT_REF_LOCI_1 82692 chr21_KI270872v1_alt +HSCHR21_6_CTG1_1 alt-scaffold 21 Chromosome KI270873.1 = NT_187627.1 ALT_REF_LOCI_1 143900 chr21_KI270873v1_alt +HSCHR21_8_CTG1_1 alt-scaffold 21 Chromosome KI270874.1 = NT_187628.1 ALT_REF_LOCI_1 166743 chr21_KI270874v1_alt +HSCHR22_1_CTG1 alt-scaffold 22 Chromosome GL383582.2 = NW_003315971.2 ALT_REF_LOCI_1 162811 chr22_GL383582v2_alt +HSCHR22_1_CTG2 alt-scaffold 22 Chromosome GL383583.2 = NW_003315972.2 ALT_REF_LOCI_1 96924 chr22_GL383583v2_alt +HSCHR22_1_CTG3 alt-scaffold 22 Chromosome KI270875.1 = NT_187629.1 ALT_REF_LOCI_1 259914 chr22_KI270875v1_alt +HSCHR22_1_CTG4 alt-scaffold 22 Chromosome KI270876.1 = NT_187630.1 ALT_REF_LOCI_1 263666 chr22_KI270876v1_alt +HSCHR22_1_CTG5 alt-scaffold 22 Chromosome KI270877.1 = NT_187631.1 ALT_REF_LOCI_1 101331 chr22_KI270877v1_alt +HSCHR22_1_CTG6 alt-scaffold 22 Chromosome KI270878.1 = NT_187632.1 ALT_REF_LOCI_1 186262 chr22_KI270878v1_alt +HSCHR22_1_CTG7 alt-scaffold 22 Chromosome KI270879.1 = NT_187633.1 ALT_REF_LOCI_1 304135 chr22_KI270879v1_alt +HSCHRX_1_CTG3 alt-scaffold X Chromosome KI270880.1 = NT_187634.1 ALT_REF_LOCI_1 284869 chrX_KI270880v1_alt +HSCHRX_2_CTG12 alt-scaffold X Chromosome KI270881.1 = NT_187635.1 ALT_REF_LOCI_1 144206 chrX_KI270881v1_alt +HSCHR1_ALT2_1_CTG32_1 alt-scaffold 1 Chromosome KI270892.1 = NT_187646.1 ALT_REF_LOCI_2 162212 chr1_KI270892v1_alt +HSCHR2_2_CTG15 alt-scaffold 2 Chromosome KI270893.1 = NT_187647.1 ALT_REF_LOCI_2 161218 chr2_KI270893v1_alt +HSCHR2_2_CTG7 alt-scaffold 2 Chromosome KI270894.1 = NT_187648.1 ALT_REF_LOCI_2 214158 chr2_KI270894v1_alt +HSCHR3_3_CTG3 alt-scaffold 3 Chromosome KI270895.1 = NT_187649.1 ALT_REF_LOCI_2 162896 chr3_KI270895v1_alt +HSCHR4_6_CTG12 alt-scaffold 4 Chromosome KI270896.1 = NT_187650.1 ALT_REF_LOCI_2 378547 chr4_KI270896v1_alt +HSCHR5_1_CTG1_1 alt-scaffold 5 Chromosome KI270897.1 = NT_187651.1 ALT_REF_LOCI_2 1144418 chr5_KI270897v1_alt +HSCHR5_3_CTG5 alt-scaffold 5 Chromosome KI270898.1 = NT_187652.1 ALT_REF_LOCI_2 130957 chr5_KI270898v1_alt +HSCHR6_MHC_COX_CTG1 alt-scaffold 6 Chromosome GL000251.2 = NT_113891.3 ALT_REF_LOCI_2 4795265 chr6_GL000251v2_alt +HSCHR7_2_CTG1 alt-scaffold 7 Chromosome KI270899.1 = NT_187653.1 ALT_REF_LOCI_2 190869 chr7_KI270899v1_alt +HSCHR8_5_CTG1 alt-scaffold 8 Chromosome KI270900.1 = NT_187654.1 ALT_REF_LOCI_2 318687 chr8_KI270900v1_alt +HSCHR8_6_CTG1 alt-scaffold 8 Chromosome KI270901.1 = NT_187655.1 ALT_REF_LOCI_2 136959 chr8_KI270901v1_alt +HSCHR11_2_CTG1 alt-scaffold 11 Chromosome KI270902.1 = NT_187656.1 ALT_REF_LOCI_2 106711 chr11_KI270902v1_alt +HSCHR11_2_CTG1_1 alt-scaffold 11 Chromosome KI270903.1 = NT_187657.1 ALT_REF_LOCI_2 214625 chr11_KI270903v1_alt +HSCHR12_3_CTG2 alt-scaffold 12 Chromosome KI270904.1 = NT_187658.1 ALT_REF_LOCI_2 572349 chr12_KI270904v1_alt +HSCHR15_4_CTG8 alt-scaffold 15 Chromosome KI270905.1 = NT_187660.1 ALT_REF_LOCI_2 5161414 chr15_KI270905v1_alt +HSCHR15_2_CTG3 alt-scaffold 15 Chromosome KI270906.1 = NT_187659.1 ALT_REF_LOCI_2 196384 chr15_KI270906v1_alt +HSCHR17_6_CTG4 alt-scaffold 17 Chromosome JH159148.1 = NW_003871093.1 ALT_REF_LOCI_2 88070 chr17_JH159148v1_alt +HSCHR17_2_CTG1 alt-scaffold 17 Chromosome KI270907.1 = NT_187662.1 ALT_REF_LOCI_2 137721 chr17_KI270907v1_alt +HSCHR17_2_CTG5 alt-scaffold 17 Chromosome KI270908.1 = NT_187663.1 ALT_REF_LOCI_2 1423190 chr17_KI270908v1_alt +HSCHR17_10_CTG4 alt-scaffold 17 Chromosome KI270909.1 = NT_187661.1 ALT_REF_LOCI_2 325800 chr17_KI270909v1_alt +HSCHR17_3_CTG2 alt-scaffold 17 Chromosome KI270910.1 = NT_187664.1 ALT_REF_LOCI_2 157099 chr17_KI270910v1_alt +HSCHR18_ALT2_CTG2_1 alt-scaffold 18 Chromosome KI270911.1 = NT_187666.1 ALT_REF_LOCI_2 157710 chr18_KI270911v1_alt +HSCHR18_ALT21_CTG2_1 alt-scaffold 18 Chromosome KI270912.1 = NT_187665.1 ALT_REF_LOCI_2 174061 chr18_KI270912v1_alt +HSCHR19LRC_COX2_CTG3_1 alt-scaffold 19 Chromosome GL949747.2 = NW_003571055.2 ALT_REF_LOCI_2 729520 chr19_GL949747v2_alt +HSCHR22_2_CTG1 alt-scaffold 22 Chromosome KB663609.1 = NW_004504305.1 ALT_REF_LOCI_2 74013 chr22_KB663609v1_alt +HSCHRX_2_CTG3 alt-scaffold X Chromosome KI270913.1 = NT_187667.1 ALT_REF_LOCI_2 274009 chrX_KI270913v1_alt +HSCHR3_4_CTG3 alt-scaffold 3 Chromosome KI270924.1 = NT_187678.1 ALT_REF_LOCI_3 166540 chr3_KI270924v1_alt +HSCHR4_7_CTG12 alt-scaffold 4 Chromosome KI270925.1 = NT_187679.1 ALT_REF_LOCI_3 555799 chr4_KI270925v1_alt +HSCHR6_MHC_DBB_CTG1 alt-scaffold 6 Chromosome GL000252.2 = NT_167245.2 ALT_REF_LOCI_3 4604811 chr6_GL000252v2_alt +HSCHR8_7_CTG1 alt-scaffold 8 Chromosome KI270926.1 = NT_187680.1 ALT_REF_LOCI_3 229282 chr8_KI270926v1_alt +HSCHR11_3_CTG1 alt-scaffold 11 Chromosome KI270927.1 = NT_187681.1 ALT_REF_LOCI_3 218612 chr11_KI270927v1_alt +HSCHR19LRC_LRC_I_CTG3_1 alt-scaffold 19 Chromosome GL949748.2 = NW_003571056.2 ALT_REF_LOCI_3 1064304 chr19_GL949748v2_alt +HSCHR22_3_CTG1 alt-scaffold 22 Chromosome KI270928.1 = NT_187682.1 ALT_REF_LOCI_3 176103 chr22_KI270928v1_alt +HSCHR3_5_CTG3 alt-scaffold 3 Chromosome KI270934.1 = NT_187688.1 ALT_REF_LOCI_4 163458 chr3_KI270934v1_alt +HSCHR6_MHC_MANN_CTG1 alt-scaffold 6 Chromosome GL000253.2 = NT_167246.2 ALT_REF_LOCI_4 4677643 chr6_GL000253v2_alt +HSCHR19LRC_LRC_J_CTG3_1 alt-scaffold 19 Chromosome GL949749.2 = NW_003571057.2 ALT_REF_LOCI_4 1091841 chr19_GL949749v2_alt +HSCHR3_6_CTG3 alt-scaffold 3 Chromosome KI270935.1 = NT_187689.1 ALT_REF_LOCI_5 197351 chr3_KI270935v1_alt +HSCHR6_MHC_MCF_CTG1 alt-scaffold 6 Chromosome GL000254.2 = NT_167247.2 ALT_REF_LOCI_5 4827813 chr6_GL000254v2_alt +HSCHR19LRC_LRC_S_CTG3_1 alt-scaffold 19 Chromosome GL949750.2 = NW_003571058.2 ALT_REF_LOCI_5 1066390 chr19_GL949750v2_alt +HSCHR3_7_CTG3 alt-scaffold 3 Chromosome KI270936.1 = NT_187690.1 ALT_REF_LOCI_6 164170 chr3_KI270936v1_alt +HSCHR6_MHC_QBL_CTG1 alt-scaffold 6 Chromosome GL000255.2 = NT_167248.2 ALT_REF_LOCI_6 4606388 chr6_GL000255v2_alt +HSCHR19LRC_LRC_T_CTG3_1 alt-scaffold 19 Chromosome GL949751.2 = NW_003571059.2 ALT_REF_LOCI_6 1002683 chr19_GL949751v2_alt +HSCHR3_8_CTG3 alt-scaffold 3 Chromosome KI270937.1 = NT_187691.1 ALT_REF_LOCI_7 165607 chr3_KI270937v1_alt +HSCHR6_MHC_SSTO_CTG1 alt-scaffold 6 Chromosome GL000256.2 = NT_167249.2 ALT_REF_LOCI_7 4929269 chr6_GL000256v2_alt +HSCHR19LRC_PGF1_CTG3_1 alt-scaffold 19 Chromosome GL949752.1 = NW_003571060.1 ALT_REF_LOCI_7 987100 chr19_GL949752v1_alt +HSCHR6_8_CTG1 alt-scaffold 6 Chromosome KI270758.1 = NT_187692.1 ALT_REF_LOCI_8 76752 chr6_KI270758v1_alt +HSCHR19LRC_PGF2_CTG3_1 alt-scaffold 19 Chromosome GL949753.2 = NW_003571061.2 ALT_REF_LOCI_8 796479 chr19_GL949753v2_alt +HSCHR19_4_CTG3_1 alt-scaffold 19 Chromosome KI270938.1 = NT_187693.1 ALT_REF_LOCI_9 1066800 chr19_KI270938v1_alt +HSCHR19KIR_FH15_B_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270882.1 = NT_187636.1 ALT_REF_LOCI_10 248807 chr19_KI270882v1_alt +HSCHR19KIR_G085_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270883.1 = NT_187637.1 ALT_REF_LOCI_11 170399 chr19_KI270883v1_alt +HSCHR19KIR_G085_BA1_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270884.1 = NT_187638.1 ALT_REF_LOCI_12 157053 chr19_KI270884v1_alt +HSCHR19KIR_G248_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270885.1 = NT_187639.1 ALT_REF_LOCI_13 171027 chr19_KI270885v1_alt +HSCHR19KIR_G248_BA2_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270886.1 = NT_187640.1 ALT_REF_LOCI_14 204239 chr19_KI270886v1_alt +HSCHR19KIR_GRC212_AB_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270887.1 = NT_187641.1 ALT_REF_LOCI_15 209512 chr19_KI270887v1_alt +HSCHR19KIR_GRC212_BA1_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270888.1 = NT_187642.1 ALT_REF_LOCI_16 155532 chr19_KI270888v1_alt +HSCHR19KIR_LUCE_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270889.1 = NT_187643.1 ALT_REF_LOCI_17 170698 chr19_KI270889v1_alt +HSCHR19KIR_LUCE_BDEL_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270890.1 = NT_187644.1 ALT_REF_LOCI_18 184499 chr19_KI270890v1_alt +HSCHR19KIR_RSH_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270891.1 = NT_187645.1 ALT_REF_LOCI_19 170680 chr19_KI270891v1_alt +HSCHR19KIR_RSH_BA2_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270914.1 = NT_187668.1 ALT_REF_LOCI_20 205194 chr19_KI270914v1_alt +HSCHR19KIR_T7526_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270915.1 = NT_187669.1 ALT_REF_LOCI_21 170665 chr19_KI270915v1_alt +HSCHR19KIR_T7526_BDEL_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270916.1 = NT_187670.1 ALT_REF_LOCI_22 184516 chr19_KI270916v1_alt +HSCHR19KIR_ABC08_A1_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270917.1 = NT_187671.1 ALT_REF_LOCI_23 190932 chr19_KI270917v1_alt +HSCHR19KIR_ABC08_AB_HAP_C_P_CTG3_1 alt-scaffold 19 Chromosome KI270918.1 = NT_187672.1 ALT_REF_LOCI_24 123111 chr19_KI270918v1_alt +HSCHR19KIR_ABC08_AB_HAP_T_P_CTG3_1 alt-scaffold 19 Chromosome KI270919.1 = NT_187673.1 ALT_REF_LOCI_25 170701 chr19_KI270919v1_alt +HSCHR19KIR_FH05_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270920.1 = NT_187674.1 ALT_REF_LOCI_26 198005 chr19_KI270920v1_alt +HSCHR19KIR_FH05_B_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270921.1 = NT_187675.1 ALT_REF_LOCI_27 282224 chr19_KI270921v1_alt +HSCHR19KIR_FH06_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270922.1 = NT_187676.1 ALT_REF_LOCI_28 187935 chr19_KI270922v1_alt +HSCHR19KIR_FH06_BA1_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270923.1 = NT_187677.1 ALT_REF_LOCI_29 189352 chr19_KI270923v1_alt +HSCHR19KIR_FH08_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270929.1 = NT_187683.1 ALT_REF_LOCI_30 186203 chr19_KI270929v1_alt +HSCHR19KIR_FH08_BAX_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270930.1 = NT_187684.1 ALT_REF_LOCI_31 200773 chr19_KI270930v1_alt +HSCHR19KIR_FH13_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270931.1 = NT_187685.1 ALT_REF_LOCI_32 170148 chr19_KI270931v1_alt +HSCHR19KIR_FH13_BA2_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270932.1 = NT_187686.1 ALT_REF_LOCI_33 215732 chr19_KI270932v1_alt +HSCHR19KIR_FH15_A_HAP_CTG3_1 alt-scaffold 19 Chromosome KI270933.1 = NT_187687.1 ALT_REF_LOCI_34 170537 chr19_KI270933v1_alt +HSCHR19KIR_RP5_B_HAP_CTG3_1 alt-scaffold 19 Chromosome GL000209.2 = NT_113949.2 ALT_REF_LOCI_35 177381 chr19_GL000209v2_alt +MT assembled-molecule MT Mitochondrion J01415.2 = NC_012920.1 non-nuclear 16569 chrM +HSCHRUN_RANDOM_CTG29 unplaced-scaffold na na KI270752.1 <> na Primary Assembly 27745 chrUn_KI270752v1 diff --git a/src/genophenocorr/model/genome/__init__.py b/src/genophenocorr/model/genome/__init__.py new file mode 100644 index 000000000..88519c262 --- /dev/null +++ b/src/genophenocorr/model/genome/__init__.py @@ -0,0 +1,19 @@ +""" +`genophenocorr.model.genome` provides data classes to model :class:`GenomeBuild`, :class:`Contig`, +and (genomic) regions (:class:`Region`, :class:`GenomicRegion`). + +The classes can do basic region arithmetics such as finding intersections, overlaps, and distances between regions. +Genomic regions are transposable - they can flip the coordinates between DNA strands. + +The module provides *GRCh37.p13* and *GRCh38.p13*, the two most commonly used human genome builds. + +Last, we provide models of :class:`TranscriptCoordinates` and :class:`ProteinCoordinates` to work with +their coordinates. + +The classes are largely a port of `Svart `_ library. +""" + +from ._builds import GRCh37, GRCh38 +from ._genome import Contig, GenomeBuild, Strand, Stranded, Transposable, GenomicRegion, Region +from ._protein import ProteinCoordinates +from ._tx import TranscriptCoordinates diff --git a/src/genophenocorr/model/genome/_builds.py b/src/genophenocorr/model/genome/_builds.py new file mode 100644 index 000000000..0fce9bf8e --- /dev/null +++ b/src/genophenocorr/model/genome/_builds.py @@ -0,0 +1,49 @@ +import platform +import warnings + +from ._genome import Contig, GenomeBuild + +major, minor, patch = platform.python_version_tuple() + +if major == '3': + import importlib.resources + minor = int(minor) + if minor < 9: + # Versions 3.7, 3.8 + def resource_loader(path: str): + return importlib.resources.open_text('genophenocorr.model.genome', path) + else: + def resource_loader(path: str): + return importlib.resources.files('genophenocorr.model.genome').joinpath(path).open() + +else: + warnings.warn(f'Untested Python version v{major}.{minor}.{patch}') + + +def read_assembly_report(identifier: str, path: str) -> GenomeBuild: + contigs = [] + with resource_loader(path) as fp: + for line in fp: + if line.startswith('#'): + continue + fields = line.strip().split('\t') + name = fields[0] + gb_acc = fields[4] + refseq = fields[6] + ucsc = fields[9] + length = int(fields[8]) + contig = Contig(name, gb_acc, refseq, ucsc, length) + contigs.append(contig) + + return GenomeBuild(identifier, contigs) + + +GRCh37 = read_assembly_report('GRCh37.p13', 'GCF_000001405.25_GRCh37.p13_assembly_report.tsv') +""" +The `GRCh37.p13` genomic build. +""" + +GRCh38 = read_assembly_report('GRCh38.p13', 'GCF_000001405.39_GRCh38.p13_assembly_report.tsv') +""" +The `GRCh38.p13` genomic build. +""" diff --git a/src/genophenocorr/model/genome/_genome.py b/src/genophenocorr/model/genome/_genome.py new file mode 100644 index 000000000..98c26ecd5 --- /dev/null +++ b/src/genophenocorr/model/genome/_genome.py @@ -0,0 +1,278 @@ +import abc +import enum +import typing + +import hpotk + + +class Contig(typing.Sized): + + def __init__(self, name: str, gb_acc: str, refseq_name: str, ucsc_name: str, length: int): + self._name = hpotk.util.validate_instance(name, str, 'name') + + self._gb_acc = hpotk.util.validate_instance(gb_acc, str, 'gb_acc') + self._refseq = hpotk.util.validate_instance(refseq_name, str, 'refseq_name') + self._ucsc = hpotk.util.validate_instance(ucsc_name, str, 'ucsc_name') + + self._len = hpotk.util.validate_instance(length, int, 'length') + if self._len < 0: + raise ValueError(f'Length must not be negative but got {self._len}') + + @property + def name(self) -> str: + return self._name + + @property + def genbank_acc(self) -> str: + return self._gb_acc + + @property + def refseq_name(self) -> str: + return self._refseq + + @property + def ucsc_name(self) -> str: + return self._ucsc + + def __len__(self) -> int: + return self._len + + def __str__(self): + return f"Contig(name={self.name}, refseq_name={self.refseq_name}, ucsc_name={self.ucsc_name}, len={self._len})" + + def __repr__(self): + return str(self) + + def __eq__(self, other): + return (isinstance(other, Contig) + and self.name == other.name + and self.refseq_name == other.refseq_name + and self.ucsc_name == other.ucsc_name + and len(self) == len(other)) + + def __hash__(self): + return hash((self.name, self.refseq_name, self.ucsc_name, len(self))) + + +class GenomeBuild: + + def __init__(self, identifier: str, contigs: typing.Iterable[Contig]): + self._id = identifier + self._contigs = tuple(contigs) + self._contig_by_name = {} + for contig in self._contigs: + self._contig_by_name[contig.name] = contig + self._contig_by_name[contig.genbank_acc] = contig + self._contig_by_name[contig.refseq_name] = contig + self._contig_by_name[contig.ucsc_name] = contig + + @property + def identifier(self) -> str: + return self._id + + @property + def contigs(self) -> typing.Sequence[Contig]: + return self._contigs + + def contig_by_name(self, name: str) -> typing.Optional[Contig]: + try: + return self._contig_by_name[name] + except KeyError: + return None + + def __str__(self): + return f"GenomeBuild(identifier={self.identifier}, n_contigs={len(self.contigs)})" + + def __repr__(self): + return f"GenomeBuild(identifier={self.identifier}, contigs={self.contigs})" + + +class Region(typing.Sized): + """ + `Region` represents a contiguous region/slice of a biological sequence, such as DNA, RNA, or protein. + + The :attr:`start` and :attr:`end` represent 0-based coordinates of the region. + The region has length that corresponds to the number of spanned bases/aminoacids. + + :param start: 0-based (excluded) start coordinate of the region. + :param end: 0-based (included) end coordinate of the region. + """ + + def __init__(self, start: int, end: int): + if not isinstance(start, int) or not isinstance(end, int): + raise ValueError(f'`start` and `end` must be ints but were `{type(start)}`, `{type(end)}`') + if start < 0 or end < 0: + raise ValueError(f'`start` and `end` must be positive but were `{start}`, `{end}`') + if start > end: + raise ValueError(f'`start` {start} must be at or before `end` {end}') + self._start = start + self._end = end + + @property + def start(self) -> int: + """ + Get 0-based (excluded) start coordinate of the region. + """ + return self._start + + @property + def end(self) -> int: + """ + Get 0-based (included) end coordinate of the region. + """ + return self._end + + def __len__(self) -> int: + return self._end - self._start + + def __eq__(self, other): + return (isinstance(other, Region) + and self.start == other.start + and self.end == other.end) + + def __hash__(self): + return hash((self._start, self._end)) + + def __str__(self): + return f'Region(start={self.start}, end={self.end})' + + def __repr__(self): + return str(self) + + +class Strand(enum.Enum): + """ + `Strand` is an enum to model positive and negative strands of double-stranded sequences, such as DNA. + """ + + POSITIVE = ('+',) + """ + The positive strand of a double stranded sequence. + """ + + NEGATIVE = ('-',) + """ + The negative strand of a double stranded sequence. + """ + + def __init__(self, symbol: str): + self._symbol = symbol + + @property + def symbol(self) -> str: + """ + Get a `str` with the strand's sign. + """ + return self._symbol + + def is_positive(self): + """ + Return `True` if this is the *positive* strand. + """ + return self == Strand.POSITIVE + + def is_negative(self): + """ + Return `True` if this is the *negative* strand. + """ + return self == Strand.NEGATIVE + + def opposite(self): + """ + Get the opposite strand of the current strand. + """ + return Strand.POSITIVE if self == Strand.NEGATIVE else Strand.NEGATIVE + + def __str__(self): + return self._symbol + + +class Stranded(metaclass=abc.ABCMeta): + """ + Mixin for classes that are on double-stranded sequences. + """ + + @property + @abc.abstractmethod + def strand(self) -> Strand: + pass + + +class Transposable(Stranded, metaclass=abc.ABCMeta): + """ + `Transposable` elements know how to flip themselves to arbitrary :class:`Strand` of a sequence. + """ + + @abc.abstractmethod + def with_strand(self, other: Strand): + pass + + def to_opposite_strand(self): + return self.with_strand(self.strand.opposite()) + + def to_positive_strand(self): + return self.with_strand(Strand.POSITIVE) + + def to_negative_strand(self): + return self.with_strand(Strand.NEGATIVE) + + +class GenomicRegion(Transposable, Region): + """ + `GenomicRegion` represents a region located on strand of a DNA contig. + + :param contig: name of the contig, e.g. `15`, `chrX`. + :param start: 0-based (excluded) start coordinate of the region. + :param end: 0-based (included) end coordinate of the region. + :param strand: the strand of the genomic region, `True` for forward strand or `False` for reverse. + """ + + def __init__(self, contig: Contig, start: int, end: int, strand: Strand): + super().__init__(start, end) + self._contig = contig + self._strand = strand + if end > len(self._contig): + raise ValueError(f'Genomic region end {end} must not extend ' + f'beyond contig {self._contig.name} bounds [0,{len(self._contig)}]') + + @property + def contig(self) -> Contig: + return self._contig + + def start_on_strand(self, strand: Strand) -> int: + if self.strand == strand: + return self.start + else: + return len(self.contig) - self.end + + def end_on_strand(self, strand: Strand) -> int: + if self.strand == strand: + return self.end + else: + return len(self.contig) - self.start + + @property + def strand(self) -> Strand: + return self._strand + + def with_strand(self, other: Strand): + if self.strand == other: + return self + else: + return GenomicRegion(self.contig, self.start_on_strand(other), self.end_on_strand(other), other) + + def __eq__(self, other): + return (isinstance(other, GenomicRegion) + and self.contig == other.contig + and self.start == other.strand + and self.end == other.end + and self.strand == other.strand) + + def __hash__(self): + return hash((self.contig, self.start, self.end, self.strand)) + + def __str__(self): + return f'GenomicRegion(contig={self.contig.name}, start={self.start}, end={self.end}, strand={self.strand})' + + def __repr__(self): + return str(self) diff --git a/src/genophenocorr/model/genome/_protein.py b/src/genophenocorr/model/genome/_protein.py new file mode 100644 index 000000000..bfc2133a7 --- /dev/null +++ b/src/genophenocorr/model/genome/_protein.py @@ -0,0 +1,30 @@ +import hpotk.util + +from ._genome import Region + + +class ProteinCoordinates: + + def __init__(self, identifier: str, + region: Region): + self._id = hpotk.util.validate_instance(identifier, str, 'identifier') + self._region = hpotk.util.validate_instance(region, Region, 'region') + + @property + def identifier(self) -> str: + return self._id + + @property + def region(self) -> Region: + return self._region + + def __eq__(self, other): + return (isinstance(other, ProteinCoordinates) + and self.identifier == other.identifier + and self.region == other.region) + + def __str__(self): + return f'ProteinCoordinates(identifier={self.identifier}, region={self.region})' + + def __repr__(self): + return str(self) diff --git a/src/genophenocorr/model/genome/_test_builds.py b/src/genophenocorr/model/genome/_test_builds.py new file mode 100644 index 000000000..8a5a51762 --- /dev/null +++ b/src/genophenocorr/model/genome/_test_builds.py @@ -0,0 +1,38 @@ +import pytest + +from ._builds import read_assembly_report, GRCh37, GRCh38 + + +def test_read_assembly_report(): + build = read_assembly_report('GRCh37.p13', 'GCF_000001405.25_GRCh37.p13_assembly_report.tsv') + assert build is not None + + +@pytest.mark.parametrize("name, genbank, refseq, ucsc, length", + [ + ('1', 'CM000663.1', 'NC_000001.10', 'chr1', 249_250_621), + ('X', 'CM000685.1', 'NC_000023.10', 'chrX', 155_270_560), + ]) +def test_hg19(name, genbank, refseq, ucsc, length): + assert GRCh37.identifier == 'GRCh37.p13' + contig = GRCh37.contig_by_name(name) + assert contig.name == name + assert contig.genbank_acc == genbank + assert contig.refseq_name == refseq + assert contig.ucsc_name == ucsc + assert len(contig) == length + + +@pytest.mark.parametrize("name, genbank, refseq, ucsc, length", + [ + ('1', 'CM000663.2', 'NC_000001.11', 'chr1', 248_956_422), + ('X', 'CM000685.2', 'NC_000023.11', 'chrX', 156_040_895), + ]) +def test_hg38(name, genbank, refseq, ucsc, length): + assert GRCh38.identifier == 'GRCh38.p13' + contig = GRCh38.contig_by_name(name) + assert contig.name == name + assert contig.genbank_acc == genbank + assert contig.refseq_name == refseq + assert contig.ucsc_name == ucsc + assert len(contig) == length diff --git a/src/genophenocorr/model/genome/_test_genome.py b/src/genophenocorr/model/genome/_test_genome.py new file mode 100644 index 000000000..eb97c8ecd --- /dev/null +++ b/src/genophenocorr/model/genome/_test_genome.py @@ -0,0 +1,41 @@ +import pytest + +from ._genome import Contig, GenomicRegion, Strand + + +@pytest.fixture +def contig() -> Contig: + return Contig('1', 'GB_BLA', 'NC_BLA', 'UCSC_BLA', 100) + + +def test_start_on_strand(contig): + region = GenomicRegion(contig, 30, 80, Strand.POSITIVE) + + assert region.start_on_strand(Strand.POSITIVE) == 30 + assert region.start_on_strand(Strand.NEGATIVE) == 20 + + +def test_end_on_strand(contig): + region = GenomicRegion(contig, 30, 80, Strand.POSITIVE) + + assert region.end_on_strand(Strand.POSITIVE) == 80 + assert region.end_on_strand(Strand.NEGATIVE) == 70 + + +def test_with_strand(contig): + positive = GenomicRegion(contig, 30, 80, Strand.POSITIVE) + negative = GenomicRegion(contig, 15, 35, Strand.NEGATIVE) + + assert positive.with_strand(Strand.POSITIVE) is positive + assert negative.with_strand(Strand.NEGATIVE) is negative + + pos_on_neg = positive.with_strand(Strand.NEGATIVE) + assert pos_on_neg.start == 20 + assert pos_on_neg.end == 70 + assert pos_on_neg.strand == Strand.NEGATIVE + + neg_on_pos = negative.with_strand(Strand.POSITIVE) + assert neg_on_pos.start == 65 + assert neg_on_pos.end == 85 + assert neg_on_pos.strand == Strand.POSITIVE + diff --git a/src/genophenocorr/model/genome/_tx.py b/src/genophenocorr/model/genome/_tx.py new file mode 100644 index 000000000..2c7cd2d97 --- /dev/null +++ b/src/genophenocorr/model/genome/_tx.py @@ -0,0 +1,68 @@ +import typing + +import hpotk + +from ._genome import GenomicRegion + + +class TranscriptCoordinates: + """ + `TranscriptCoordinates` knows about genomic region of the transcript, exonic/intronic regions, as well as + the coding and non-coding regions. + """ + + def __init__(self, identifier: str, + region: GenomicRegion, + exons: typing.Iterable[GenomicRegion], + cds_start: int, + cds_end: int): + self._id = hpotk.util.validate_instance(identifier, str, 'identifier') + self._region = hpotk.util.validate_instance(region, GenomicRegion, 'region') + self._exons = tuple(exons) + # TODO - check + self._cds_start = cds_start + self._cds_end = cds_end + + @property + def identifier(self) -> str: + """ + Get transcript's identifier (e.g. `ENST00000123456.7`, `NM_123456.7`). + """ + return self._id + + @property + def region(self) -> GenomicRegion: + """ + Get the genomic region spanned by the transcript, corresponding to 5'UTR, exonic, intronic, and 3'UTR regions. + """ + return self._region + + @property + def exons(self) -> typing.Sequence[GenomicRegion]: + """ + Get the exon regions. + """ + return self._exons + + @property + def cds_start(self) -> int: + return self._cds_start + + @property + def cds_end(self) -> int: + return self._cds_end + + def __eq__(self, other): + return (isinstance(other, TranscriptCoordinates) + and self.identifier == other.identifier + and self.region == other.region + and self.exons == other.exons + and self.cds_start == other.cds_start + and self.cds_end == other.cds_end) + + def __str__(self): + return f'TranscriptCoordinates(identifier={self.identifier}, region={self.region})' + + def __repr__(self): + return str(self) + \ No newline at end of file diff --git a/src/genophenocorr/preprocessing/_api.py b/src/genophenocorr/preprocessing/_api.py index 9b1638b95..86af5bf54 100644 --- a/src/genophenocorr/preprocessing/_api.py +++ b/src/genophenocorr/preprocessing/_api.py @@ -1,7 +1,8 @@ import abc import typing -from genophenocorr.model import Variant, VariantCoordinates, ProteinMetadata +from genophenocorr.model import Variant, VariantCoordinates, ProteinMetadata, TranscriptInfoAware +from genophenocorr.model.genome import TranscriptCoordinates T = typing.TypeVar('T') @@ -23,6 +24,13 @@ def annotate(self, variant_coordinates: VariantCoordinates) -> Variant: pass +class TranscriptCoordinateService(metaclass=abc.ABCMeta): + + @abc.abstractmethod + def fetch(self, tx: TranscriptInfoAware) -> TranscriptCoordinates: + pass + + class ProteinMetadataService(metaclass=abc.ABCMeta): """A metaclass that can be used to establish a class that creates ProteinMetadata objects diff --git a/src/genophenocorr/preprocessing/_config.py b/src/genophenocorr/preprocessing/_config.py index 8527d5dfb..0fe9f977b 100644 --- a/src/genophenocorr/preprocessing/_config.py +++ b/src/genophenocorr/preprocessing/_config.py @@ -3,6 +3,8 @@ import hpotk +from genophenocorr.model.genome import GRCh37, GRCh38 + from ._phenotype import PhenotypeCreator from ._phenopacket import PhenopacketPatientCreator from ._api import FunctionalAnnotator @@ -12,6 +14,7 @@ def configure_caching_patient_creator(hpo: hpotk.MinimalOntology, + genome_build: str = 'GRCh38.p13', validation_runner: typing.Optional[hpotk.validate.ValidationRunner] = None, cache_dir: typing.Optional[str] = None, variant_fallback: str = 'VEP', @@ -22,6 +25,7 @@ def configure_caching_patient_creator(hpo: hpotk.MinimalOntology, To create the patient creator, we need hpo-toolkit's representation of HPO, the validator :param hpo: a HPO instance. + :param genome_build: name of the genome build to use, choose from `{'GRCh37.p13', 'GRCh38.p13'}`. :param validation_runner: an instance of the validation runner. :param cache_dir: path to the folder where we will cache the results fetched from the remote APIs or `None` if the data should be cached in `.cache` folder in the current working directory. @@ -34,9 +38,16 @@ def configure_caching_patient_creator(hpo: hpotk.MinimalOntology, if cache_dir is None: cache_dir = os.path.join(os.getcwd(), '.cache') + if genome_build == 'GRCh38.p13': + build = GRCh38 + elif genome_build == 'GRCh37.p13': + build = GRCh37 + else: + raise ValueError(f'Unknown build {genome_build}. Choose from [\'GRCh37.p13\', \'GRCh38.p13\']') + phenotype_creator = _setup_phenotype_creator(hpo, validation_runner) functional_annotator = _configure_functional_annotator(cache_dir, variant_fallback, protein_fallback) - return PhenopacketPatientCreator(phenotype_creator, functional_annotator) + return PhenopacketPatientCreator(build, phenotype_creator, functional_annotator) def _setup_phenotype_creator(hpo: hpotk.MinimalOntology, diff --git a/src/genophenocorr/preprocessing/_phenopacket.py b/src/genophenocorr/preprocessing/_phenopacket.py index df8917c56..ca5e80f34 100644 --- a/src/genophenocorr/preprocessing/_phenopacket.py +++ b/src/genophenocorr/preprocessing/_phenopacket.py @@ -10,6 +10,7 @@ from phenopackets import GenomicInterpretation, Phenopacket from genophenocorr.model import Phenotype, ProteinMetadata, VariantCoordinates, Variant, Patient, Cohort +from genophenocorr.model.genome import GenomeBuild, GenomicRegion, Strand from ._patient import PatientCreator from ._phenotype import PhenotypeCreator @@ -23,9 +24,10 @@ class PhenopacketVariantCoordinateFinder(VariantCoordinateFinder[GenomicInterpre Methods: find_coordinates(item:GenomicInterpretation): Creates VariantCoordinates from the data in a given Phenopacket """ - def __init__(self): + def __init__(self, build: GenomeBuild): """Constructs all necessary attributes for a PhenopacketVariantCoordinateFinder object""" self._logger = logging.getLogger(__name__) + self._build = build def find_coordinates(self, item: GenomicInterpretation) -> VariantCoordinates: """Creates a VariantCoordinates object from the data in a given Phenopacket @@ -60,18 +62,22 @@ def find_coordinates(self, item: GenomicInterpretation) -> VariantCoordinates: chrom = 'X' elif chrom == '24': chrom = 'Y' + contig = self._build.contig_by_name(chrom) elif len(variant_descriptor.vcf_record.chrom) != 0 and len( variant_descriptor.variation.copy_number.allele.sequence_location.sequence_id) == 0: ref = variant_descriptor.vcf_record.ref alt = variant_descriptor.vcf_record.alt start = int(variant_descriptor.vcf_record.pos) - 1 end = int(variant_descriptor.vcf_record.pos) + abs(len(alt) - len(ref)) - chrom = variant_descriptor.vcf_record.chrom[3:] + contig = self._build.contig_by_name(variant_descriptor.vcf_record.chrom[3:]) + else: + raise ValueError('Expected a VCF record or a VRS CNV but did not find one') genotype = variant_descriptor.allelic_state.label - if any(field is None for field in (chrom, ref, alt, genotype)): + if any(field is None for field in (contig, ref, alt, genotype)): raise ValueError(f'Cannot determine variant coordinate from genomic interpretation {item}') - return VariantCoordinates(chrom, start, end, ref, alt, len(alt) - len(ref), genotype) + region = GenomicRegion(contig, start, end, Strand.POSITIVE) + return VariantCoordinates(region, ref, alt, len(alt) - len(ref), genotype) @@ -82,17 +88,19 @@ class PhenopacketPatientCreator(PatientCreator[Phenopacket]): create_patient(item:Phenopacket): Creates a Patient from the data in a given Phenopacket """ - def __init__(self, phenotype_creator: PhenotypeCreator, + def __init__(self, build: GenomeBuild, + phenotype_creator: PhenotypeCreator, var_func_ann: FunctionalAnnotator): """Constructs all necessary attributes for a PhenopacketPatientCreator object Args: + build (GenomeBuild): A genome build to use to load variant coordinates. phenotype_creator (PhenotypeCreator): A PhenotypeCreator object for Phenotype creation var_func_ann (FunctionalAnnotator): A FunctionalAnnotator object for Variant creation """ self._logger = logging.getLogger(__name__) # Violates DI, but it is specific to this class, so I'll leave it "as is". - self._coord_finder = PhenopacketVariantCoordinateFinder() + self._coord_finder = PhenopacketVariantCoordinateFinder(build) self._phenotype_creator = hpotk.util.validate_instance(phenotype_creator, PhenotypeCreator, 'phenotype_creator') self._func_ann = hpotk.util.validate_instance(var_func_ann, FunctionalAnnotator, 'var_func_ann') diff --git a/src/genophenocorr/preprocessing/_phenotype.py b/src/genophenocorr/preprocessing/_phenotype.py index b77dd279a..79de274fe 100644 --- a/src/genophenocorr/preprocessing/_phenotype.py +++ b/src/genophenocorr/preprocessing/_phenotype.py @@ -34,13 +34,13 @@ def __init__(self, hpo: hpotk.MinimalOntology, self._hpo = hpotk.util.validate_instance(hpo, hpotk.MinimalOntology, 'hpo') self._validator = hpotk.util.validate_instance(validator, hpotk.validate.ValidationRunner, 'validator') - def create_phenotype(self, term_ids: typing.Iterable[typing.Tuple[str, bool]]) -> list[Phenotype]: + def create_phenotype(self, term_ids: typing.Iterable[typing.Tuple[str, bool]]) -> typing.Sequence[Phenotype]: """Creates a list of Phenotype objects from term IDs and checks if the term IDs satisfy the validation requirements. Args: term_ids (Iterable[Tuple[str, bool]]): A list of Tuples, structured (HPO IDs, boolean- True if observed) Returns: - list[Phenotype]: A list of Phenotype objects + A sequence of Phenotype objects Error: PhenotypeValidationException: An instance of an issue with the ValidationRunner """ @@ -52,7 +52,7 @@ def create_phenotype(self, term_ids: typing.Iterable[typing.Tuple[str, bool]]) - terms.append((term, observed)) validation_results = self._validator.validate_all([term[0] for term in terms]) if validation_results.is_ok: - return [Phenotype.from_term(term, observed) for term, observed in terms] + return tuple(Phenotype.from_term(term, observed) for term, observed in terms) else: # We return the messages for now. We may provide more details in future, if necessary. issues = [r.message for r in validation_results.results] diff --git a/src/genophenocorr/preprocessing/_test_variant.py b/src/genophenocorr/preprocessing/_test_variant.py index 61220c788..0b67cbebe 100644 --- a/src/genophenocorr/preprocessing/_test_variant.py +++ b/src/genophenocorr/preprocessing/_test_variant.py @@ -8,6 +8,7 @@ from phenopackets import Phenopacket, GenomicInterpretation from genophenocorr.model import VariantCoordinates +from genophenocorr.model.genome import GRCh38, GenomicRegion, Strand from ._phenopacket import PhenopacketVariantCoordinateFinder from ._protein import ProteinAnnotationCache, ProtCachingFunctionalAnnotator @@ -15,7 +16,7 @@ from ._variant import verify_start_end_coordinates, VepFunctionalAnnotator, VariantAnnotationCache, VarCachingFunctionalAnnotator -@pytest.mark.parametrize('contig, start, end, ref, alt, chlen, expected', +@pytest.mark.parametrize('contig_name, start, end, ref, alt, chlen, expected', (['1', 100, 101, 'G', 'C', 0, '1:101-101/C'], # SNP ['1', 100, 102, 'GG', 'G', -1, '1:101-102/G'], # DEL @@ -53,15 +54,17 @@ # ['9', 133_359_999, 133_360_000, 'N', '', 29, '9:133360001-133360000/INS']) ['9', 133_360_000, 133_360_000, '', '', 30, '9:133360001-133360000/INS']) ) -def test_verify_start_end_coordinates(contig, start, end, ref, alt, chlen, expected): - vc = VariantCoordinates(contig, start, end, ref, alt, chlen, 'Whatever') +def test_verify_start_end_coordinates(contig_name, start, end, ref, alt, chlen, expected): + contig = GRCh38.contig_by_name(contig_name) + region = GenomicRegion(contig, start, end, Strand.POSITIVE) + vc = VariantCoordinates(region, ref, alt, chlen, 'Whatever') out = verify_start_end_coordinates(vc) assert out == expected @pytest.fixture def pp_vc_finder() -> PhenopacketVariantCoordinateFinder: - return PhenopacketVariantCoordinateFinder() + return PhenopacketVariantCoordinateFinder(GRCh38) @pytest.mark.parametrize("pp_path, expected", diff --git a/src/genophenocorr/preprocessing/_uniprot.py b/src/genophenocorr/preprocessing/_uniprot.py index ef881bb6f..2e9500861 100644 --- a/src/genophenocorr/preprocessing/_uniprot.py +++ b/src/genophenocorr/preprocessing/_uniprot.py @@ -3,6 +3,7 @@ import typing from genophenocorr.model import FeatureInfo, FeatureType, ProteinFeature, ProteinMetadata +from genophenocorr.model.genome import Region from ._api import ProteinMetadataService @@ -57,7 +58,7 @@ def annotate(self, protein_id: str) -> typing.Sequence[ProteinMetadata]: feat_name = feature['description'] feat_start = int(feature['location']['start']['value']) feat_end = int(feature['location']['end']['value']) - feat = ProteinFeature.create(FeatureInfo(feat_name, feat_start, feat_end), FeatureType[feat_type.upper()]) + feat = ProteinFeature.create(FeatureInfo(feat_name, Region(feat_start, feat_end)), FeatureType[feat_type.upper()]) all_features_list.append(feat) except KeyError: self._logger.warning(f"No features for {protein_id}") diff --git a/src/genophenocorr/preprocessing/_variant.py b/src/genophenocorr/preprocessing/_variant.py index 6cc1988e2..88d9e1ecb 100644 --- a/src/genophenocorr/preprocessing/_variant.py +++ b/src/genophenocorr/preprocessing/_variant.py @@ -7,9 +7,10 @@ import requests -from genophenocorr.model import VariantCoordinates, TranscriptAnnotation, Variant +from genophenocorr.model import VariantCoordinates, TranscriptAnnotation, Variant, TranscriptInfoAware +from genophenocorr.model.genome import TranscriptCoordinates -from ._api import FunctionalAnnotator, ProteinMetadataService +from ._api import FunctionalAnnotator, ProteinMetadataService, TranscriptCoordinateService def verify_start_end_coordinates(vc: VariantCoordinates): @@ -65,7 +66,7 @@ def __init__(self, protein_annotator: ProteinMetadataService): self._logging = logging.getLogger(__name__) self._protein_annotator = protein_annotator self._url = 'https://rest.ensembl.org/vep/human/region/%s?LoF=1&canonical=1&domains=1&hgvs=1' \ - '&mutfunc=1&numbers=1&protein=1&refseq=1&transcript_version=1&variant_class=1' + '&mutfunc=1&numbers=1&protein=1&refseq=1&mane=1&transcript_version=1&variant_class=1' def annotate(self, variant_coordinates: VariantCoordinates) -> Variant: """Creates a Variant object by searching variant coordinates with Variant Effect Predictor (VEP) REST API. @@ -78,14 +79,16 @@ def annotate(self, variant_coordinates: VariantCoordinates) -> Variant: variant = self._query_vep(variant_coordinates) variant_id = variant.get('id') variant_class = variant.get('variant_class') - canon_tx = None + # canon_tx = None transcript_list = [] for trans in variant.get('transcript_consequences'): trans_id = trans.get('transcript_id') if not trans_id.startswith('NM'): continue - if trans.get('canonical') == 1: - canon_tx = trans_id + # TODO - implement + is_preferred = False + # if trans.get('canonical') == 1: + # canon_tx = trans_id hgvsc_id = trans.get('hgvsc') consequences = trans.get('consequence_terms') gene_name = trans.get('gene_symbol') @@ -109,6 +112,7 @@ def annotate(self, variant_coordinates: VariantCoordinates) -> Variant: TranscriptAnnotation(gene_name, trans_id, hgvsc_id, + is_preferred, consequences, exons_effected, protein, @@ -220,3 +224,10 @@ def annotate(self, variant_coordinates: VariantCoordinates) -> Variant: ann = self._fallback.annotate(variant_coordinates) self._cache.store_annotations(variant_coordinates, ann) return ann + + +class EnsemblTranscriptCoordinateService(TranscriptCoordinateService): + + def fetch(self, tx: TranscriptInfoAware) -> TranscriptCoordinates: + # TODO - implement + pass diff --git a/src/genophenocorr/view/__init__.py b/src/genophenocorr/view/__init__.py index d29232791..b8bc74954 100644 --- a/src/genophenocorr/view/__init__.py +++ b/src/genophenocorr/view/__init__.py @@ -1,5 +1,7 @@ from ._cohort import CohortViewer +from ._tx import VariantTranscriptArtist __all__ = [ - 'CohortViewer' + 'CohortViewer', + 'VariantTranscriptArtist' ] diff --git a/src/genophenocorr/view/_tx.py b/src/genophenocorr/view/_tx.py new file mode 100644 index 000000000..afe053370 --- /dev/null +++ b/src/genophenocorr/view/_tx.py @@ -0,0 +1,14 @@ +import typing + +from genophenocorr.model import Variant +from genophenocorr.model.genome import TranscriptCoordinates + + +class VariantTranscriptArtist: + """ + `VariantTranscriptArtist` creates a graphic to show distributions of variants across a provided transcript. + """ + + def draw_variants(self, tx: TranscriptCoordinates, variants: typing.Sequence[Variant]): + # TODO - implement + pass diff --git a/tests/fixtures.py b/tests/fixtures.py index a11e1d4e9..fa584e7c6 100644 --- a/tests/fixtures.py +++ b/tests/fixtures.py @@ -4,56 +4,68 @@ import pytest from genophenocorr.model import * +from genophenocorr.model.genome import GRCh38, GenomicRegion, Region, Strand + + +def make_region(contig: str, start: int, end: int) -> GenomicRegion: + return GenomicRegion(GRCh38.contig_by_name(contig), start, end, Strand.POSITIVE) @pytest.fixture -def test_cohort() -> Cohort: +def toy_cohort() -> Cohort: prot = ProteinMetadata(protein_id='NP_037407.4', label='Ankyrin repeat domain-containing protein 11', - protein_features=(ProteinFeature.create(feature_type=FeatureType.REPEAT, info=FeatureInfo(name='ANK 1', start=167, end=196)), - ProteinFeature.create(feature_type=FeatureType.REPEAT, info=FeatureInfo(name='ANK 2', start=200, end=229)), - ProteinFeature.create(feature_type=FeatureType.REPEAT, info=FeatureInfo(name='ANK 3', start=233, end=262)), - ProteinFeature.create(feature_type=FeatureType.REPEAT, info=FeatureInfo(name='ANK 4', start=266, end=292)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=1, end=90)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=128, end=169)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=289, end=380)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=398, end=647)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=723, end=783)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=881, end=1043)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=1059, end=1393)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=1424, end=1710)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=1814, end=1836)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=1988, end=2019)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Disordered', start=2131, end=2406)), - ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo(name='Important for protein degradation', start=2369, end=2663)))) + protein_features=(ProteinFeature.create(feature_type=FeatureType.REPEAT, info=FeatureInfo('ANK 1', Region(start=167, end=196))), + ProteinFeature.create(feature_type=FeatureType.REPEAT, info=FeatureInfo('ANK 2', Region(start=200, end=229))), + ProteinFeature.create(feature_type=FeatureType.REPEAT, info=FeatureInfo('ANK 3', Region(start=233, end=262))), + ProteinFeature.create(feature_type=FeatureType.REPEAT, info=FeatureInfo('ANK 4', Region(start=266, end=292))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=1, end=90))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=128, end=169))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=289, end=380))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=398, end=647))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=723, end=783))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=881, end=1043))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=1059, end=1393))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=1424, end=1710))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=1814, end=1836))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=1988, end=2019))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Disordered', Region(start=2131, end=2406))), + ProteinFeature.create(feature_type=FeatureType.REGION, info=FeatureInfo('Important for protein degradation', Region(start=2369, end=2663))))) HetSingleVar = [Variant('16_89279851_-/C', 'insertion', - VariantCoordinates(chrom="16", start=89279849, end=89279851, ref='G', alt='GC', change_length=1, genotype='heterozygous'), - [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.6691dup', ['frameshift_variant'], + VariantCoordinates(make_region("16", 89279849, 89279851), + ref='G', alt='GC', change_length=1, genotype='heterozygous'), + [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.6691dup', False, ['frameshift_variant'], [9], [prot], 2231, 2231)],genotype='heterozygous')] HetDoubleVar1 = [Variant('16_89284601_GG/A', 'indel', - VariantCoordinates(chrom="16", start=89284600, end=89284602, ref='GG', alt='A', change_length=-1, genotype='heterozygous'), - [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.1940_1941delinsT', ['frameshift_variant'], + VariantCoordinates(make_region("16", 89284600, 89284602), + ref='GG', alt='A', change_length=-1, genotype='heterozygous'), + [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.1940_1941delinsT', False, ['frameshift_variant'], [9], [prot], 647, 647)],genotype='heterozygous'), Variant('16_89280752_G/T', 'SNV', - VariantCoordinates(chrom="16", start=89280751, end=89280752, ref='G', alt='T', change_length=0, genotype='heterozygous'), - [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.5790C>A', ['stop_gained'], + VariantCoordinates(make_region("16", 89280751, 89280752), + ref='G', alt='T', change_length=0, genotype='heterozygous'), + [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.5790C>A', False, ['stop_gained'], [9], [prot], 1930, 1930)],genotype='heterozygous')] HetDoubleVar2 = [Variant('16_89275128_G/A', 'SNV', - VariantCoordinates(chrom="16", start=89275127, end=89275128, ref='G', alt='A', change_length=0, genotype='heterozygous'), - [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.7534C>T', ['missense_variant'], + VariantCoordinates(make_region("16", 89275127, 89275128), + ref='G', alt='A', change_length=0, genotype='heterozygous'), + [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.7534C>T', False, ['missense_variant'], [10], [prot], 2512, 2512)],genotype='heterozygous'), Variant('16_89279708_AGTGTTCGGGGCGGGGCC/A', 'indel', - VariantCoordinates(chrom="16", start=89279707, end=89279725, ref='AGTGTTCGGGGCGGGGCC', alt='A', change_length=-17, genotype='heterozygous'), - [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.6817_6833del', ['frameshift_variant'], + VariantCoordinates(make_region("16", 89279707, 89279725), + ref='AGTGTTCGGGGCGGGGCC', alt='A', change_length=-17, genotype='heterozygous'), + [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.6817_6833del', False, ['frameshift_variant'], [9], [prot], 2273, 2278)],genotype='heterozygous')] HomoVar = [Variant('16_89279458_TG/T', 'indel', - VariantCoordinates(chrom="16", start=89279457, end=89279459, ref='TG', alt='T', change_length=-1, genotype='homozygous'), - [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.7083del', ['frameshift_variant'], + VariantCoordinates(make_region("16", 89279457, 89279459), + ref='TG', alt='T', change_length=-1, genotype='homozygous'), + [TranscriptAnnotation('ANKRD11', 'NM_013275.6', 'NM_013275.6:c.7083del', False, ['frameshift_variant'], [9], [prot], 2361, 2362)],genotype='homozygous')] LargeCNV = [Variant('16_89190071_deletion', 'deletion', - VariantCoordinates(chrom="16", start=89190070, end=89439815, ref='N', alt='', change_length=4, genotype='heterozygous'), - [TranscriptAnnotation('ANKRD11', 'NM_013275.6', None, ['stop_lost', 'feature_truncation', 'coding_sequence_variant', '5_prime_UTR_variant', '3_prime_UTR_variant', 'intron_variant'], + VariantCoordinates(make_region("16", 89190070, 89439815), + ref='N', alt='', change_length=4, genotype='heterozygous'), + [TranscriptAnnotation('ANKRD11', 'NM_013275.6', None, False, ['stop_lost', 'feature_truncation', 'coding_sequence_variant', '5_prime_UTR_variant', '3_prime_UTR_variant', 'intron_variant'], [2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13], [prot], None, None)],genotype='heterozygous')] phenos = get_test_phenotypes() diff --git a/tests/test_predicates.py b/tests/test_predicates.py index bdca3ba7c..08f651f0c 100644 --- a/tests/test_predicates.py +++ b/tests/test_predicates.py @@ -6,7 +6,7 @@ from genophenocorr.analysis.predicate import * from genophenocorr.constants import VariantEffect from genophenocorr.model import Cohort, Patient, FeatureType -from .fixtures import toy_hpo, test_cohort +from .fixtures import toy_hpo, toy_cohort def find_patient(pat_id, cohort) -> typing.Optional[Patient]: @@ -37,12 +37,12 @@ def find_patient(pat_id, cohort) -> typing.Optional[Patient]: 'HetSingleVar', HPOPresentPredicate.NOT_MEASURED), ]) -def test_HPOPresentPredicate(test_cohort: Cohort, +def test_HPOPresentPredicate(toy_cohort: Cohort, toy_hpo: hpotk.Ontology, query: str, patient_id: str, expected: PatientCategory): - patient = find_patient(patient_id, test_cohort) + patient = find_patient(patient_id, toy_cohort) predicate = HPOPresentPredicate(hpo=toy_hpo) actual = predicate.test(patient, query=hpotk.TermId.from_curie(query)) assert actual == expected @@ -58,8 +58,8 @@ def test_HPOPresentPredicate(test_cohort: Cohort, def test_VariantEffectPredicate(patient_id: str, variantEffect: VariantEffect, expected_result: PatientCategory, - test_cohort: Cohort): - patient = find_patient(patient_id, test_cohort) + toy_cohort: Cohort): + patient = find_patient(patient_id, toy_cohort) predicate = VariantEffectPredicate('NM_013275.6') result = predicate.test(patient, variantEffect) assert result == expected_result @@ -73,9 +73,9 @@ def test_VariantEffectPredicate(patient_id: str, ['HomoVar', '16_89280752_G/T', NO_VARIANT], ['HomoVar', '16_89279458_TG/T', HOMOZYGOUS], ['LargeCNV', '16_89190071_deletion', HETEROZYGOUS])) -def test_VariantPredicate(patient_id, variant, hasVarResult, test_cohort): +def test_VariantPredicate(patient_id, variant, hasVarResult, toy_cohort): predicate = VariantPredicate('NM_013275.6') - patient = find_patient(patient_id, test_cohort) + patient = find_patient(patient_id, toy_cohort) result = predicate.test(patient, variant) assert result == hasVarResult @@ -90,8 +90,8 @@ def test_VariantPredicate(patient_id, variant, hasVarResult, test_cohort): ['HomoVar', 9, HOMOZYGOUS], ['LargeCNV', 1, NO_VARIANT], ['LargeCNV', 13, HETEROZYGOUS])) -def test_ExonPredicate(patient_id, exon, hasVarResult, test_cohort): - patient = find_patient(patient_id, test_cohort) +def test_ExonPredicate(patient_id, exon, hasVarResult, toy_cohort): + patient = find_patient(patient_id, toy_cohort) predicate = ExonPredicate('NM_013275.6') result = predicate.test(patient, exon) assert result == hasVarResult @@ -105,8 +105,8 @@ def test_ExonPredicate(patient_id, exon, hasVarResult, test_cohort): ['HetDoubleVar1', FeatureType.REPEAT, NO_VARIANT])) ## TODO Why do CNV not show as affecting a feature? ##['LargeCNV', FeatureType.REGION , HETEROZYGOUS])) -def test_ProteinFeatureTypePredicate(patient_id, featureType, hasVarResult, test_cohort): - patient = find_patient(patient_id, test_cohort) +def test_ProteinFeatureTypePredicate(patient_id, featureType, hasVarResult, toy_cohort): + patient = find_patient(patient_id, toy_cohort) predicate = ProtFeatureTypePredicate('NM_013275.6') result = predicate.test(patient, featureType) assert result == hasVarResult @@ -118,9 +118,9 @@ def test_ProteinFeatureTypePredicate(patient_id, featureType, hasVarResult, test ['HetSingleVar', 'Disordered', HETEROZYGOUS], ['HomoVar', 'Disordered', HOMOZYGOUS], ['HetDoubleVar1', 'Disordered', HETEROZYGOUS])) -def test_ProteinFeaturePredicate(patient_id, feature, hasVarResult, test_cohort): +def test_ProteinFeaturePredicate(patient_id, feature, hasVarResult, toy_cohort): predicate = ProtFeaturePredicate('NM_013275.6') - patient = find_patient(patient_id, test_cohort) + patient = find_patient(patient_id, toy_cohort) result = predicate.test(patient, feature) assert result == hasVarResult