pax_global_header00006660000000000000000000000064132045100200014475gustar00rootroot0000000000000052 comment=18b1df553e58b4cd6a8ddb64e59bbd9a167d44f1 sambamba-0.6.7/000077500000000000000000000000001320451002000132525ustar00rootroot00000000000000sambamba-0.6.7/.drone.yml.template000066400000000000000000000014751320451002000170030ustar00rootroot00000000000000# this YAML file can be used with drone tool (https://github.com/drone/drone) # TODO remove dropbox dependency # Usage: copy to .drone.yml, edit dropbox access token, run 'drone exec' build: image: lomereiter/centos-ldc:latest commands: - export LANG=C - export PATH=/opt/llvm/bin:/usr/local/bin:$PATH - /usr/bin/scl enable devtoolset-4 -- - yum install -y git - llvm-config --version - ldc2 --version - gcc --version - git submodule update --init - git clone https://github.com/dlang/undeaD - make sambamba-ldmd2-64 - curl -L "https://dl.dropboxusercontent.com/u/7916095/shunit2-2.0.3.tgz" | tar zx - ./.run_tests.sh - readelf -V build/sambamba | grep 'Name:' | grep GLIBC - export ACCESS_TOKEN=# !!! PUT YOUR DROPBOX TOKEN HERE !!! - ./.dropbox.sh build/sambamba sambamba-0.6.7/.dropbox.sh000077500000000000000000000004771320451002000153540ustar00rootroot00000000000000#!/bin/bash for i in "$@"; do CONTENT_LENGTH=`ls -la "$i" | awk '{ print $5}'` curl --request PUT --header "Content-Length: "${CONTENT_LENGTH}"" --header "Content-Type: multipart/mixed" --data-binary "@"$i"" "https://api-content.dropbox.com/1/files_put/sandbox/$i?access_token="${ACCESS_TOKEN}"" printf "\n" done sambamba-0.6.7/.github/000077500000000000000000000000001320451002000146125ustar00rootroot00000000000000sambamba-0.6.7/.github/issue_template.md000066400000000000000000000024071320451002000201620ustar00rootroot00000000000000 sambamba-0.6.7/.gitignore000066400000000000000000000001261320451002000152410ustar00rootroot00000000000000build/ shunit* /*.sam /*.bam /*.bai /*.cram /*.crai /*.txt /utils/ldc_version_info_.d sambamba-0.6.7/.gitmodules000066400000000000000000000004541320451002000154320ustar00rootroot00000000000000[submodule "BioD"] path = BioD url = https://github.com/biod/BioD.git [submodule "htslib"] path = htslib url = https://github.com/lomereiter/htslib.git [submodule "lz4"] path = lz4 url = https://github.com/Cyan4973/lz4 [submodule "undeaD"] path = undeaD url = https://github.com/dlang/undeaD sambamba-0.6.7/.travis.yml.macos000066400000000000000000000031301320451002000164610ustar00rootroot00000000000000# this file is used in order to build sambamba for Mac OS X on Travis CI language: objective-c env: global: - ACCESS_LEVEL=sandbox - LDC_RELEASE=1.0.0 - LDC_VERSION=ldc2-${LDC_RELEASE}-osx-x86_64 - secure: blVtZH4Ia+4MkeTm0gRwL07r/bzhVRJJjUEbtvt0pIQNAtDq5aYuKnCI9sIw99XmEbv9+tSLc6DXq9d6LrDDR0EG7UUB4sTP6XW1XNJXm/kLIuoOCxTnVk6WBHZ4jusMWE0MNNDVmIS8nHrpoDp2ERXbfasD/9GT+3avVUvnsMg= - secure: Kzdt/6PLGBhD5f8yOPaPdX5yxHisCPvmfYEKUcEVksKOEurQoIpsNjzAky/yzso4R21T6xycjawFvDXvlVA83m/WJZSDDiFLZVgGoaMoZl9UYOPESeZlJR57/HkjgCss0iz/AX9abUzJ1jGfRt9ujtwcoXB15PqUhbjk2iHF0f0= - secure: K0J2r5R8xQMlAUwCaPVWHZUO4U+c+czK6H9bnN5RZPYs5BXpYjdV7/RgkOHsN9b+UksFx7LQRstgcVVcC+mQJRV8slGrx/GSmIA93Dp2mskU9eR1aQjxcUK10VMbIQI6qbXsZvvRSWPirNDQY4s3CjEKEv34t2IGALTkwaU1NmI= - secure: J1ta2/K8lj5dbHRvk+jTUAMICSnepfyc8ILCfM/HFCRaXMJQJTX1HDzEMwK3tAzzKaKEp9Tbm2b3IwE1tCtFaAfYUGozmHLirkFfKqCu/jNUkxL807M8NiqMx+H7tu2aR6t9opYyBjNhtuthbIdir3c42nldYdpse0ZLhzQTLfs= before_install: - brew install xz libconfig - curl -L "https://github.com/ldc-developers/ldc/releases/download/v${LDC_RELEASE}/${LDC_VERSION}.tar.xz" | tar Jx - export PATH=$(pwd)/${LDC_VERSION}/bin:${PATH} - export LIBRARY_PATH=$(pwd)/${LDC_VERSION}/lib:${LIBRARY_PATH} - git submodule update --init --recursive - wget https://github.com/craigcitro/r-travis/raw/master/scripts/dropbox.sh - chmod +x dropbox.sh - curl -L https://www.dropbox.com/s/7mmiwmc1wm8cuos/shunit2-2.0.3.tgz?dl=1 | tar zx script: - make sambamba-ldmd2-64 - ./run_tests.sh after_success: - tar cjvf sambamba_osx.tar.bz2 ./build/sambamba - ./dropbox.sh upload sambamba_osx.tar.bz2 sambamba-0.6.7/BioD/000077500000000000000000000000001320451002000140675ustar00rootroot00000000000000sambamba-0.6.7/LICENSE000066400000000000000000000431101320451002000142560ustar00rootroot00000000000000 GNU GENERAL PUBLIC LICENSE Version 2, June 1991 Copyright (C) 1989, 1991 Free Software Foundation, Inc. 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Everyone is permitted to copy and distribute verbatim copies of this license document, but changing it is not allowed. Preamble The licenses for most software are designed to take away your freedom to share and change it. By contrast, the GNU General Public License is intended to guarantee your freedom to share and change free software--to make sure the software is free for all its users. This General Public License applies to most of the Free Software Foundation's software and to any other program whose authors commit to using it. (Some other Free Software Foundation software is covered by the GNU Library General Public License instead.) You can apply it to your programs, too. When we speak of free software, we are referring to freedom, not price. Our General Public Licenses are designed to make sure that you have the freedom to distribute copies of free software (and charge for this service if you wish), that you receive source code or can get it if you want it, that you can change the software or use pieces of it in new free programs; and that you know you can do these things. To protect your rights, we need to make restrictions that forbid anyone to deny you these rights or to ask you to surrender the rights. These restrictions translate to certain responsibilities for you if you distribute copies of the software, or if you modify it. For example, if you distribute copies of such a program, whether gratis or for a fee, you must give the recipients all the rights that you have. You must make sure that they, too, receive or can get the source code. And you must show them these terms so they know their rights. We protect your rights with two steps: (1) copyright the software, and (2) offer you this license which gives you legal permission to copy, distribute and/or modify the software. Also, for each author's protection and ours, we want to make certain that everyone understands that there is no warranty for this free software. If the software is modified by someone else and passed on, we want its recipients to know that what they have is not the original, so that any problems introduced by others will not reflect on the original authors' reputations. Finally, any free program is threatened constantly by software patents. We wish to avoid the danger that redistributors of a free program will individually obtain patent licenses, in effect making the program proprietary. To prevent this, we have made it clear that any patent must be licensed for everyone's free use or not licensed at all. The precise terms and conditions for copying, distribution and modification follow. GNU GENERAL PUBLIC LICENSE TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION 0. This License applies to any program or other work which contains a notice placed by the copyright holder saying it may be distributed under the terms of this General Public License. The "Program", below, refers to any such program or work, and a "work based on the Program" means either the Program or any derivative work under copyright law: that is to say, a work containing the Program or a portion of it, either verbatim or with modifications and/or translated into another language. (Hereinafter, translation is included without limitation in the term "modification".) Each licensee is addressed as "you". Activities other than copying, distribution and modification are not covered by this License; they are outside its scope. The act of running the Program is not restricted, and the output from the Program is covered only if its contents constitute a work based on the Program (independent of having been made by running the Program). Whether that is true depends on what the Program does. 1. You may copy and distribute verbatim copies of the Program's source code as you receive it, in any medium, provided that you conspicuously and appropriately publish on each copy an appropriate copyright notice and disclaimer of warranty; keep intact all the notices that refer to this License and to the absence of any warranty; and give any other recipients of the Program a copy of this License along with the Program. You may charge a fee for the physical act of transferring a copy, and you may at your option offer warranty protection in exchange for a fee. 2. You may modify your copy or copies of the Program or any portion of it, thus forming a work based on the Program, and copy and distribute such modifications or work under the terms of Section 1 above, provided that you also meet all of these conditions: a) You must cause the modified files to carry prominent notices stating that you changed the files and the date of any change. b) You must cause any work that you distribute or publish, that in whole or in part contains or is derived from the Program or any part thereof, to be licensed as a whole at no charge to all third parties under the terms of this License. c) If the modified program normally reads commands interactively when run, you must cause it, when started running for such interactive use in the most ordinary way, to print or display an announcement including an appropriate copyright notice and a notice that there is no warranty (or else, saying that you provide a warranty) and that users may redistribute the program under these conditions, and telling the user how to view a copy of this License. (Exception: if the Program itself is interactive but does not normally print such an announcement, your work based on the Program is not required to print an announcement.) These requirements apply to the modified work as a whole. If identifiable sections of that work are not derived from the Program, and can be reasonably considered independent and separate works in themselves, then this License, and its terms, do not apply to those sections when you distribute them as separate works. But when you distribute the same sections as part of a whole which is a work based on the Program, the distribution of the whole must be on the terms of this License, whose permissions for other licensees extend to the entire whole, and thus to each and every part regardless of who wrote it. Thus, it is not the intent of this section to claim rights or contest your rights to work written entirely by you; rather, the intent is to exercise the right to control the distribution of derivative or collective works based on the Program. In addition, mere aggregation of another work not based on the Program with the Program (or with a work based on the Program) on a volume of a storage or distribution medium does not bring the other work under the scope of this License. 3. You may copy and distribute the Program (or a work based on it, under Section 2) in object code or executable form under the terms of Sections 1 and 2 above provided that you also do one of the following: a) Accompany it with the complete corresponding machine-readable source code, which must be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, b) Accompany it with a written offer, valid for at least three years, to give any third party, for a charge no more than your cost of physically performing source distribution, a complete machine-readable copy of the corresponding source code, to be distributed under the terms of Sections 1 and 2 above on a medium customarily used for software interchange; or, c) Accompany it with the information you received as to the offer to distribute corresponding source code. (This alternative is allowed only for noncommercial distribution and only if you received the program in object code or executable form with such an offer, in accord with Subsection b above.) The source code for a work means the preferred form of the work for making modifications to it. For an executable work, complete source code means all the source code for all modules it contains, plus any associated interface definition files, plus the scripts used to control compilation and installation of the executable. However, as a special exception, the source code distributed need not include anything that is normally distributed (in either source or binary form) with the major components (compiler, kernel, and so on) of the operating system on which the executable runs, unless that component itself accompanies the executable. If distribution of executable or object code is made by offering access to copy from a designated place, then offering equivalent access to copy the source code from the same place counts as distribution of the source code, even though third parties are not compelled to copy the source along with the object code. 4. You may not copy, modify, sublicense, or distribute the Program except as expressly provided under this License. Any attempt otherwise to copy, modify, sublicense or distribute the Program is void, and will automatically terminate your rights under this License. However, parties who have received copies, or rights, from you under this License will not have their licenses terminated so long as such parties remain in full compliance. 5. You are not required to accept this License, since you have not signed it. However, nothing else grants you permission to modify or distribute the Program or its derivative works. These actions are prohibited by law if you do not accept this License. Therefore, by modifying or distributing the Program (or any work based on the Program), you indicate your acceptance of this License to do so, and all its terms and conditions for copying, distributing or modifying the Program or works based on it. 6. Each time you redistribute the Program (or any work based on the Program), the recipient automatically receives a license from the original licensor to copy, distribute or modify the Program subject to these terms and conditions. You may not impose any further restrictions on the recipients' exercise of the rights granted herein. You are not responsible for enforcing compliance by third parties to this License. 7. If, as a consequence of a court judgment or allegation of patent infringement or for any other reason (not limited to patent issues), conditions are imposed on you (whether by court order, agreement or otherwise) that contradict the conditions of this License, they do not excuse you from the conditions of this License. If you cannot distribute so as to satisfy simultaneously your obligations under this License and any other pertinent obligations, then as a consequence you may not distribute the Program at all. For example, if a patent license would not permit royalty-free redistribution of the Program by all those who receive copies directly or indirectly through you, then the only way you could satisfy both it and this License would be to refrain entirely from distribution of the Program. If any portion of this section is held invalid or unenforceable under any particular circumstance, the balance of the section is intended to apply and the section as a whole is intended to apply in other circumstances. It is not the purpose of this section to induce you to infringe any patents or other property right claims or to contest validity of any such claims; this section has the sole purpose of protecting the integrity of the free software distribution system, which is implemented by public license practices. Many people have made generous contributions to the wide range of software distributed through that system in reliance on consistent application of that system; it is up to the author/donor to decide if he or she is willing to distribute software through any other system and a licensee cannot impose that choice. This section is intended to make thoroughly clear what is believed to be a consequence of the rest of this License. 8. If the distribution and/or use of the Program is restricted in certain countries either by patents or by copyrighted interfaces, the original copyright holder who places the Program under this License may add an explicit geographical distribution limitation excluding those countries, so that distribution is permitted only in or among countries not thus excluded. In such case, this License incorporates the limitation as if written in the body of this License. 9. The Free Software Foundation may publish revised and/or new versions of the General Public License from time to time. Such new versions will be similar in spirit to the present version, but may differ in detail to address new problems or concerns. Each version is given a distinguishing version number. If the Program specifies a version number of this License which applies to it and "any later version", you have the option of following the terms and conditions either of that version or of any later version published by the Free Software Foundation. If the Program does not specify a version number of this License, you may choose any version ever published by the Free Software Foundation. 10. If you wish to incorporate parts of the Program into other free programs whose distribution conditions are different, write to the author to ask for permission. For software which is copyrighted by the Free Software Foundation, write to the Free Software Foundation; we sometimes make exceptions for this. Our decision will be guided by the two goals of preserving the free status of all derivatives of our free software and of promoting the sharing and reuse of software generally. NO WARRANTY 11. BECAUSE THE PROGRAM IS LICENSED FREE OF CHARGE, THERE IS NO WARRANTY FOR THE PROGRAM, TO THE EXTENT PERMITTED BY APPLICABLE LAW. EXCEPT WHEN OTHERWISE STATED IN WRITING THE COPYRIGHT HOLDERS AND/OR OTHER PARTIES PROVIDE THE PROGRAM "AS IS" WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE. THE ENTIRE RISK AS TO THE QUALITY AND PERFORMANCE OF THE PROGRAM IS WITH YOU. SHOULD THE PROGRAM PROVE DEFECTIVE, YOU ASSUME THE COST OF ALL NECESSARY SERVICING, REPAIR OR CORRECTION. 12. IN NO EVENT UNLESS REQUIRED BY APPLICABLE LAW OR AGREED TO IN WRITING WILL ANY COPYRIGHT HOLDER, OR ANY OTHER PARTY WHO MAY MODIFY AND/OR REDISTRIBUTE THE PROGRAM AS PERMITTED ABOVE, BE LIABLE TO YOU FOR DAMAGES, INCLUDING ANY GENERAL, SPECIAL, INCIDENTAL OR CONSEQUENTIAL DAMAGES ARISING OUT OF THE USE OR INABILITY TO USE THE PROGRAM (INCLUDING BUT NOT LIMITED TO LOSS OF DATA OR DATA BEING RENDERED INACCURATE OR LOSSES SUSTAINED BY YOU OR THIRD PARTIES OR A FAILURE OF THE PROGRAM TO OPERATE WITH ANY OTHER PROGRAMS), EVEN IF SUCH HOLDER OR OTHER PARTY HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. END OF TERMS AND CONDITIONS How to Apply These Terms to Your New Programs If you develop a new program, and you want it to be of the greatest possible use to the public, the best way to achieve this is to make it free software which everyone can redistribute and change under these terms. To do so, attach the following notices to the program. It is safest to attach them to the start of each source file to most effectively convey the exclusion of warranty; and each file should have at least the "copyright" line and a pointer to where the full notice is found. Copyright (C) This program is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA Also add information on how to contact you by electronic and paper mail. If the program is interactive, make it output a short notice like this when it starts in an interactive mode: Gnomovision version 69, Copyright (C) year name of author Gnomovision comes with ABSOLUTELY NO WARRANTY; for details type `show w'. This is free software, and you are welcome to redistribute it under certain conditions; type `show c' for details. The hypothetical commands `show w' and `show c' should show the appropriate parts of the General Public License. Of course, the commands you use may be called something other than `show w' and `show c'; they could even be mouse-clicks or menu items--whatever suits your program. You should also get your employer (if you work as a programmer) or your school, if any, to sign a "copyright disclaimer" for the program, if necessary. Here is a sample; alter the names: Yoyodyne, Inc., hereby disclaims all copyright interest in the program `Gnomovision' (which makes passes at compilers) written by James Hacker. , 1 April 1989 Ty Coon, President of Vice This General Public License does not permit incorporating your program into proprietary programs. If your program is a subroutine library, you may consider it more useful to permit linking proprietary applications with the library. If this is what you want to do, use the GNU Library General Public License instead of this License. sambamba-0.6.7/Makefile000066400000000000000000000064461320451002000147240ustar00rootroot00000000000000D_COMPILER=dmd D_FLAGS=--compiler=dmd -IBioD -IundeaD/src -g -d#-O -release -inline # -version=serial LDMD=ldmd2 STATIC_LIB_PATH=-Lhtslib -Llz4/lib STATIC_LIB_SUBCMD=$(STATIC_LIB_PATH) -Wl,-Bstatic -lhts -llz4 -Wl,-Bdynamic RDMD_FLAGS=--force --build-only --compiler=$(D_COMPILER) $(D_FLAGS) PLATFORM := $(shell uname -s) ifeq "$(PLATFORM)" "Darwin" LINK_CMD=gcc -dead_strip -lphobos2-ldc -ldruntime-ldc -lm -lpthread htslib/libhts.a lz4/lib/liblz4.a build/sambamba.o -o build/sambamba DMD_STATIC_LIBS=htslib/libhts.a lz4/lib/liblz4.a define split-debug dsymutil build/sambamba -o build/sambamba.dSYM strip -S build/sambamba endef else LINK_CMD=gcc -Wl,--gc-sections -o build/sambamba build/sambamba.o $(STATIC_LIB_SUBCMD) -lphobos2-ldc -ldruntime-ldc -lrt -lpthread -lm -ldl DMD_STATIC_LIBS=-L-Lhtslib -L-l:libhts.a -L-l:libphobos2.a -L-Llz4/lib -L-l:liblz4.a define split-debug objcopy --only-keep-debug build/sambamba sambamba.debug objcopy --strip-debug build/sambamba objcopy --add-gnu-debuglink=sambamba.debug build/sambamba mv sambamba.debug build/ endef endif PREREQS := ldc-version-info htslib-static lz4-static # DMD only - this goal is used because of fast compilation speed, during development all: $(PREREQS) mkdir -p build/ rdmd --force --build-only $(D_FLAGS) $(DMD_STATIC_LIBS) -ofbuild/sambamba main.d # This is the main Makefile goal, used for building releases (best performance) sambamba-ldmd2-64: $(PREREQS) mkdir -p build/ $(LDMD) @sambamba-ldmd-release.rsp $(LINK_CMD) $(split-debug) # For debugging; GDB & Valgrind are more friendly to executables created using LDC/GDC than DMD sambamba-ldmd2-debug: $(PREREQS) mkdir -p build/ $(LDMD) @sambamba-ldmd-debug.rsp $(LINK_CMD) ldc-version-info: ./gen_ldc_version_info.py $(shell which $(LDMD)) > utils/ldc_version_info_.d htslib-static: cd htslib && $(MAKE) lz4-static: lz4/lib/liblz4.a lz4/lib/liblz4.a: lz4/lib/lz4.c lz4/lib/lz4hc.c lz4/lib/lz4frame.c lz4/lib/xxhash.c cd lz4/lib && $(CC) -O3 -c lz4.c lz4hc.c lz4frame.c xxhash.c && $(AR) rcs liblz4.a lz4.o lz4hc.o lz4frame.o xxhash.o # all below link to libhts dynamically for simplicity sambamba-flagstat: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-flagstat sambamba/flagstat.d sambamba-merge: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-merge sambamba/merge.d sambamba-index: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-index sambamba/index.d sambamba-sort: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-sort sambamba/sort.d sambamba-view: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-view sambamba/view.d sambamba-slice: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-slice sambamba/slice.d sambamba-markdup: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-markdup sambamba/markdup.d sambamba-depth: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-depth sambamba/depth.d sambamba-pileup: mkdir -p build/ rdmd $(RDMD_FLAGS) -L-lhts -version=standalone -ofbuild/sambamba-pileup sambamba/pileup.d .PHONY: clean ldc-version-info clean: rm -rf build/ ; $(MAKE) -C htslib clean ; $(MAKE) -C lz4 clean sambamba-0.6.7/Makefile.docker000066400000000000000000000041371320451002000161650ustar00rootroot00000000000000# Docker makefile # # To build sambamba using a Docker image # # make -f Makefile.docker # # To run with the DMD compiler instead: # # make DRUN="dlanguage/dmd dmd" -f Makefile.docker # # run with # # ./build/sambamba # # Note: you'll need to set the correct LIB_PATHS for libz and libz4 your system DRUN=dlanguage/ldc ldc2 # Mount the lib search paths on Docker for libz and libz4 LIBZ_LIB_PATH=/gnu/store/yd7bplsvf9nj72wn2z6n38rq9hfmjgd9-zlib-1.2.11/lib LIBZ4_LIB_PATH=/gnu/store/2n80sdqh39y3sgrfyd97ag0sjx5bx9dl-lz4-1.8.0/lib CWD=$(shell pwd) D_COMPILER=docker run -v $(LIBZ_LIB_PATH):$(LIBZ_LIB_PATH) -v $(LIBZ4_LIB_PATH):$(LIBZ4_LIB_PATH) -v $(CWD):/src $(DRUN) DFLAGS = -wi -I. -IBioD -IundeaD/src LIBS = htslib/libhts.a -L-L$(LIBZ4_LIB_PATH) -L-L$(LIBZ_LIB_PATH) -L-L$(LDC_LIB_PATH) -L-L$(CWD)/lib -L-lrt -L-lpthread -L-lm -L-lz -L-llz4 SRC = $(wildcard main.d utils/*.d thirdparty/*.d cram/*.d) $(wildcard undeaD/src/undead/*.d) $(wildcard BioD/bio/*/*.d BioD/bio/*/*/*.d) $(wildcard sambamba/*.d sambamba/*/*.d sambamba/*/*/*.d) OBJ = $(SRC:.d=.o) utils/ldc_version_info_.o OUT = build/sambamba .PHONY: all debug: DFLAGS += -O0 -g -d-debug -link-debuglib all: debug htslib-static: cd htslib && $(MAKE) ldc-version-info: ./gen_ldc_version_info.py $(shell which ldmd2) > utils/ldc_version_info_.d utils/ldc_version_info_.o: ldc-version-info $(D_COMPILER) $(DFLAGS) -c utils/ldc_version_info_.d -od=$(dir $@) build-setup: htslib-static ldc-version-info mkdir -p build/ guix guix-debug default debug release static profile: $(OUT) # ---- Compile step %.o: %.d $(D_COMPILER) $(DFLAGS) -c $< -od=$(dir $@) # ---- Link step $(OUT): build-setup $(OBJ) $(D_COMPILER) $(DFLAGS) -of=build/sambamba $(OBJ) $(LIBS) test: ./run_tests.sh check: test debug-strip: debug objcopy --only-keep-debug build/sambamba sambamba.debug objcopy --strip-debug build/sambamba objcopy --add-gnu-debuglink=sambamba.debug build/sambamba mv sambamba.debug build/ clean-d: rm -rf build/* rm -f $(OBJ) $(OUT) trace.{def,log} install: install -m 0755 build/sambamba $(prefix)/bin clean: clean-d cd htslib ; make clean sambamba-0.6.7/Makefile.guix000066400000000000000000000050441320451002000156700ustar00rootroot00000000000000# GNU Guix makefile # # To build sambamba on GNU Guix: # # make -f Makefile.guix # # run with # # ./build/sambamba # The following two are modified by the Guix package: D_COMPILER=ldc2 LDC_LIB_PATH=$(HOME)/.guix-profile/lib DFLAGS = -wi -I. -IBioD -IundeaD/src DLIBS = $(LDC_LIB_PATH)/libphobos2-ldc.a $(LDC_LIB_PATH)/libdruntime-ldc.a DLIBS_DEBUG = $(LDC_LIB_PATH)/libphobos2-ldc-debug.a $(LDC_LIB_PATH)/libdruntime-ldc-debug.a RPATH = -L--rpath=$(dir $(realpath $(LDC_LIB_PATH)/libz.so)):$(dir $(realpath $(LDC_LIB_PATH)/liblz4.so)) LIBS = htslib/libhts.a -L-L$(LDC_LIB_PATH) -L-lrt -L-lpthread -L-lm -L-lz -L-llz4 LIBS_STATIC = $(LDC_LIB_PATH)/libc.a $(DLIBS) htslib/libhts.a $(LDC_LIB_PATH)/liblz4.a SRC = $(wildcard main.d utils/*.d thirdparty/*.d cram/*.d) $(wildcard undeaD/src/undead/*.d) $(wildcard BioD/bio/*/*.d BioD/bio/*/*/*.d) $(wildcard sambamba/*.d sambamba/*/*.d sambamba/*/*/*.d) OBJ = $(SRC:.d=.o) utils/ldc_version_info_.o OUT = build/sambamba # The Guix targets resolve the RPATH automatically guix: DFLAGS += -O -release -g # Guix strips debug flags guix-debug: DFLAGS += -O0 -g -d-debug # The following options are run in development from ~/.guix-profile and need to inject the RPATH debug: DFLAGS += -O0 -g -d-debug $(RPATH) -link-debuglib release: DFLAGS += -O -release $(RPATH) static: DFLAGS += -O -release -static -L-Bstatic profile: DFLAGS += -g -O -profile $(RPATH) guix release: LIBS += $(DLIBS) static: LIBS = $(LIBS_STATIC) guix-debug debug profile: LIBS += $(DLIBS_DEBUG) .PHONY: all guix guix-debug debug release static profile clean test all: debug htslib-static: cd htslib && $(MAKE) ldc-version-info: ./gen_ldc_version_info.py $(shell which ldmd2) > utils/ldc_version_info_.d utils/ldc_version_info_.o: ldc-version-info $(D_COMPILER) $(DFLAGS) -c utils/ldc_version_info_.d -od=$(dir $@) build-setup: htslib-static ldc-version-info mkdir -p build/ guix guix-debug default debug release static profile: $(OUT) # ---- Compile step %.o: %.d $(D_COMPILER) $(DFLAGS) -c $< -od=$(dir $@) # ---- Link step $(OUT): build-setup $(OBJ) $(D_COMPILER) $(DFLAGS) -of=build/sambamba $(OBJ) $(LIBS) test: ./run_tests.sh check: test debug-strip: debug objcopy --only-keep-debug build/sambamba sambamba.debug objcopy --strip-debug build/sambamba objcopy --add-gnu-debuglink=sambamba.debug build/sambamba mv sambamba.debug build/ install: install -m 0755 build/sambamba $(prefix)/bin clean: clean-d cd htslib ; make clean clean-d: rm -rf build/* rm -f $(OBJ) $(OUT) trace.{def,log} sambamba-0.6.7/README.md000066400000000000000000000242171320451002000145370ustar00rootroot00000000000000# sambamba [![Anaconda-Server Badge](https://anaconda.org/bioconda/sambamba/badges/installer/conda.svg)](https://conda.anaconda.org/bioconda) [![DL](https://anaconda.org/bioconda/sambamba/badges/downloads.svg)](https://anaconda.org/bioconda/sambamba) ## Table of Contents - [Introduction](#intro) - [Binary installation](#install) - [Getting help](#help) - [Compiling](#compile) - [Debugging and troubleshooting](#debug) - [License](#license) - [Credits](#credits) # Introduction Sambamba is a high performance modern robust and fast tool (and library), written in the D programming language, for working with SAM and BAM files. Current functionality is an important subset of samtools functionality, including view, index, sort, markdup, and depth. Most tools support piping: just specify `/dev/stdin` or `/dev/stdout` as filenames. For almost 5 years the main advantage over `samtools` was parallelized BAM reading. Finally in March 2017 `samtools` 1.4 was released, reaching parity on this. That said, we still have quite a few interesting features to offer: - faster `sort` (no benchmarks yet, sorry) - automatic index creation when writing any coordinate-sorted file - `view -L ` utilizes BAM index to skip unrelated chunks - `depth` allows to measure base, sliding window, or region coverages - [Chanjo](https://www.chanjo.co/) builds upon this and gets you to exon/gene levels of abstraction - `markdup`, a fast implementation of Picard algorithm - `slice` quickly extracts a region into a new file, tweaking only first/last chunks Sambamba is free and open source software, licensed under GPLv2+. See manual pages [online](https://lomereiter.github.io/sambamba/docs/sambamba-view.html) to know more about what is available and how to use it. For more information on Sambamba you can contact Artem Tarasov and Pjotr Prins. # Binary installation ## Install stable release For those not in the mood to learn/install new package managers, there are Github source and binary [releases](https://github.com/biod/sambamba/releases). Simply download the tarball, unpack it and run it. For example ```sh wget https://github.com/biod/sambamba/releases/download/v0.6.6/sambamba_v0.6.6_linux.tar.bz2 tar xvjf sambamba_v0.6.6_linux.tar.bz2 ./sambamba_v0.6.6 sambamba 0.6.6 Usage: sambamba [command] [args...] Available commands: 'view', 'index', 'merge', 'sort', 'flagstat', 'slice', 'markdup', 'depth', 'mpileup' To get help on a particular command, just call it without args. ``` ## Install latest pre-release A *latest* pre-release of sambamba 0.6.7 for Linux that includes debug information and *all* dependencies is available from this [link](http://test-gn2.genenetwork.org/ipfs/QmakasNfZhdbPA3xJYNxNX7at5FtYnS4hUNnvDbzxhZf2J). This 24Mb download reflects the development edition and includes recent versions of libraries, samtools and bcftools. It should install on any Linux distribution, including old ones on HPC clusters. Install the tarball by unpacking it and running the contained install script with a target directory e.g. ```sh wget http://test-gn2.genenetwork.org/ipfs/QmakasNfZhdbPA3xJYNxNX7at5FtYnS4hUNnvDbzxhZf2J/hb13hjys1064jmb6z17yc1f822hv9zsz-sambamba-0.6.7-pre1-7cff065-x86_64.tar.bz2 tar xvjf QmakasNfZhdbPA3xJYNxNX7at5FtYnS4hUNnvDbzxhZf2J/hb13hjys1064jmb6z17yc1f822hv9zsz-sambamba-0.6.7-pre1-7cff065-x86_64.tar.bz2 ./install.sh ~/sambamba-test ~/sambamba-test/bin/sambamba sambamba 0.6.7-pre1 Usage: sambamba [command] [args...] Available commands: 'view', 'index', 'merge', 'sort', 'flagstat', 'slice', 'markdup', 'depth', 'mpileup' ``` Binaries are also available through the following packaging tools (note the version numbers): ## Bioconda install [![Install with CONDA](https://anaconda.org/bioconda/sambamba/badges/installer/conda.svg)](https://anaconda.org/bioconda/sambamba) With Conda use the [`bioconda`](https://bioconda.github.io/) channel. ## GNU Guix install A [GNU Guix package](https://www.gnu.org/software/guix/packages/s.html) for sambamba is available. The development version is packaged [here](https://gitlab.com/genenetwork/guix-bioinformatics/blob/master/gn/packages/sambamba.scm). ## Debian GNU/Linux install Debian: see Debian packages. ## Homebrew install Users of Homebrew can also use the formula from `homebrew-science`. # Getting help Sambamba has a [mailing list](https://groups.google.com/forum/#!forum/sambamba-discussion) for installation help and general discussion. ## Reporting a sambamba bug or issue Before posting an issue search the issue tracker and [mailing list](https://groups.google.com/forum/#!forum/sambamba-discussion) first. It is likely someone may have encountered something similar. Also try running the latest version of sambamba to make sure it has not been fixed already. Support/installation questions should be aimed at the mailing list. The issue tracker is for development issues around the software itself. When reporting an issue include the output of the program and the contents of the .log.txt file in the output directory. ## Check list: 1. [X] I have found and issue with sambamba 2. [ ] I have searched for it on the [issue tracker](https://github.com/biod/sambamba/issues) (also check closed issues) 3. [ ] I have searched for it on the [mailing list](https://groups.google.com/forum/#!forum/sambamba-discussion) 4. [ ] I have tried the latest [release](https://github.com/biod/sambamba/releases) of sambamba 5. [ ] I have read and agreed to below code of conduct 6. [ ] If it is a support/install question I have posted it to the [mailing list](https://groups.google.com/forum/#!forum/sambamba-discussion) 7. [ ] If it is software development related I have posted a new issue on the [issue tracker](https://github.com/biod/sambamba/issues) or added to an existing one 8. [ ] In the message I have included the output of my sambamba run 9. [ ] In the message I have included the relevant .log.txt file in the output directory 10. [ ] I have made available the data to reproduce the problem (optional) To find bugs the sambamba software developers may ask to install a development version of the software. They may also ask you for your data and will treat it confidentially. Please always remember that sambamba is written and maintained by volunteers with good intentions. Our time is valuable too. By helping us as much as possible we can provide this tool for everyone to use. ## Code of conduct By using sambamba and communicating with its communtity you implicitely agree to abide by the [code of conduct](https://software-carpentry.org/conduct/) as published by the Software Carpentry initiative. # Compiling Sambamba Note: in general there is no need to compile sambamba. You can use a recent binary install as listed above. The preferred method for compiling Sambamba is with the LDC compiler which targets LLVM. ## Compilation dependencies - zlib - htslib (submodule) - lz4 (submodule) - BioD (submodule) - undeaD (submodule) - python2 ## Compiling for Linux The LDC compiler's github repository also provides binary images. The current preferred release for sambamba is LDC - the LLVM D compiler (>= 1.1.0). After installing LDC: ```sh git clone --recursive https://github.com/biod/sambamba.git cd sambamba git clone https://github.com/dlang/undeaD make sambamba-ldmd2-64 ``` Installing LDC only means unpacking an archive and setting some environmental variables, e.g. unpacking into `$HOME`: ```sh cd wget https://github.com/ldc-developers/ldc/releases/download/v$ver/ldc2-$ver-linux-x86_64.tar.xz tar xJf ldc2-$ver-linux-x86_64.tar.xz export PATH=~/ldc2-$ver-linux-x86_64/bin/:$PATH export LIBRARY_PATH=~/ldc2-$ver-linux-x86_64/lib/ ``` ### GNU Guix To build sambamba the LDC compiler is also available in GNU Guix: ```sh guix package -i ldc ``` ## Compiling for Mac OS X ```sh brew install ldc git clone --recursive https://github.com/biod/sambamba.git cd sambamba git clone https://github.com/dlang/undeaD make sambamba-ldmd2-64 ``` ## Development Sambamba development and issue tracker is on [github](https://github.com/biod/sambamba). Developer documentation can be found in the source code and the [development documentation](https://github.com/biod/sambamba-dev-docs). # Debugging and troubleshooting ## Dump core In a crash sambamba can dump a core. To make this happen set ```sh ulimit -c unlimited ``` and run your command. Send us the core file so we can reproduce the state at time of segfault. ## Use catchsegv Another option is to use catchsegv ```sh catchsegv ./build/sambamba command ``` this will show state on stdout which can be sent to us. ## Using gdb In case of crashes it's helpful to have GDB stacktraces (`bt` command). A full stacktrace for all threads: ``` thread apply all backtrace full ``` Note that GDB should be made aware of D garbage collector: ``` handle SIGUSR1 SIGUSR2 nostop noprint ``` A binary relocatable install of sambamba with debug information and all dependencies can be fetched from the binary link above. Unpack the tarball and run the contained install.sh script with TARGET ``` ./install.sh ~/sambamba-test ``` Run sambamba in gdb with ``` gdb --args ~/sambamba-test/sambamba-*/bin/sambamba view --throw-error ``` # License Sambamba is distributed under GNU Public License v2+. # Credit If you are using Sambamba in your research and want to support future work on Sambamba, please cite the following publication: A. Tarasov, A. J. Vilella, E. Cuppen, I. J. Nijman, and P. Prins. [Sambamba: fast processing of NGS alignment formats](https://doi.org/10.1093/bioinformatics/btv098). Bioinformatics, 2015. ```bibtex @article{doi:10.1093/bioinformatics/btv098, author = {Tarasov, Artem and Vilella, Albert J. and Cuppen, Edwin and Nijman, Isaac J. and Prins, Pjotr}, title = {Sambamba: fast processing of NGS alignment formats}, journal = {Bioinformatics}, volume = {31}, number = {12}, pages = {2032-2034}, year = {2015}, doi = {10.1093/bioinformatics/btv098}, URL = { + http://dx.doi.org/10.1093/bioinformatics/btv098} ``` sambamba-0.6.7/bioconda_push.sh000066400000000000000000000007401320451002000164240ustar00rootroot00000000000000RECIPES=~/github/bioconda-recipes # location of the cloned fork REMOTE=bioconda # bioconda/bioconda-recipes remote UPDATED_RECIPE=/tmp/sambamba.yaml python bioconda_yaml_gen.py > $UPDATED_RECIPE VERSION=`grep version $UPDATED_RECIPE | cut -d\' -f2` cd $RECIPES git checkout master git pull $REMOTE master git checkout -b sambamba-${VERSION} cp $UPDATED_RECIPE recipes/sambamba/meta.yaml git commit -am "sambamba ${VERSION}" git push origin sambamba-${VERSION} sambamba-0.6.7/bioconda_yaml_gen.py000066400000000000000000000024021320451002000172530ustar00rootroot00000000000000template = """package: name: sambamba version: '{version}' source: fn: sambamba_v{version}.tar.bz2 url: {linux_url} # [linux] md5: {linux_md5} # [linux] url: {osx_url} # [osx] md5: {osx_md5} # [osx] build: number: 0 requirements: build: run: - samtools # required for mpileup - bcftools # required for mpileup test: commands: - sambamba view about: home: https://github.com/biod/sambamba license: GPLv2 summary: Tools for working with SAM/BAM data""" import json from urllib2 import urlopen from hashlib import md5 latest_release = json.loads(urlopen("https://api.github.com/repos/biod/sambamba/releases").read())[0] sambamba_version = latest_release['tag_name'][1:] downloads = {} for asset in latest_release['assets']: url = asset['browser_download_url'] platform = asset['name'].split(sambamba_version)[1].split(".")[0][1:] downloads[platform] = url def md5sum(download): h = md5() h.update(urlopen(download).read()) return h.hexdigest() linux_md5 = md5sum(downloads['linux']) osx_md5 = md5sum(downloads['osx']) print template.format(version=sambamba_version, linux_url=downloads['linux'], osx_url=downloads['osx'], linux_md5=linux_md5, osx_md5=osx_md5) sambamba-0.6.7/cram/000077500000000000000000000000001320451002000141745ustar00rootroot00000000000000sambamba-0.6.7/cram/exception.d000066400000000000000000000001771320451002000163440ustar00rootroot00000000000000module cram.exception; public import std.exception; class CramException : Exception { this(string msg) { super(msg); } } sambamba-0.6.7/cram/htslib.d000066400000000000000000001042651320451002000156360ustar00rootroot00000000000000module cram.htslib; // TODO: structs with bitfields are not represented correctly import core.stdc.stdio; import core.stdc.config; import core.stdc.stdarg; import core.sys.posix.pthread; extern (C): alias __kstring_t kstring_t; alias _Anonymous_0 htsFile; alias __hts_idx_t hts_idx_t; alias _Anonymous_1 hts_pair64_t; alias int function (BGZF*, void*, void*, int*, int*, int*) hts_readrec_func; alias _Anonymous_2 hts_itr_t; alias int function (void*, const(char)*) hts_name2id_f; alias _Anonymous_2* function (const(__hts_idx_t)*, int, int, int, int function (BGZF*, void*, void*, int*, int*, int*)) hts_itr_query_func; alias const(char)* function (void*, int) hts_id2name_f; alias _Anonymous_3 bam_hdr_t; alias _Anonymous_4 bam1_core_t; alias _Anonymous_5 bam1_t; alias _Anonymous_0 samFile; alias _Anonymous_6 bam_pileup1_t; alias int function (void*, _Anonymous_5*) bam_plp_auto_f; alias __bam_plp_t* bam_plp_t; alias __bam_mplp_t* bam_mplp_t; alias _Anonymous_5 bam_seq_t; alias _Anonymous_7 string_t; alias _Anonymous_8 string_alloc_t; alias _Anonymous_9 pool_t; alias _Anonymous_10 pool_alloc_t; alias uint khint32_t; alias c_ulong khint64_t; alias uint khint_t; alias uint khiter_t; alias const(char)* kh_cstr_t; alias _Anonymous_11 ks_tokaux_t; alias SAM_hdr_tag_s SAM_hdr_tag; alias SAM_hdr_item_s SAM_hdr_type; alias _Anonymous_12 SAM_SQ; alias _Anonymous_13 SAM_RG; alias _Anonymous_14 SAM_PG; alias kh_sam_hdr_s kh_sam_hdr_t; alias kh_m_s2i_s kh_m_s2i_t; alias _Anonymous_15 SAM_hdr; alias t_res t_pool_result; alias _Anonymous_16 t_pool_worker_t; alias _Anonymous_17 mFILE; alias kh_m_i2i_s kh_m_i2i_t; alias kh_s_i2i_s kh_s_i2i_t; alias ubyte uc; alias _Anonymous_18 pmap_t; alias kh_map_s kh_map_t; alias _Anonymous_19 cram_stats; alias _Anonymous_20 cram_file_def; alias _Anonymous_21 cram_metrics; alias _Anonymous_22 cram_block; alias _Anonymous_23 cram_block_compression_hdr; alias _Anonymous_24 cram_block_slice_hdr; alias _Anonymous_25 cram_container; alias _Anonymous_26 cram_record; alias _Anonymous_27 cram_feature; alias _Anonymous_28 refs_t; alias _Anonymous_29 cram_range; alias _Anonymous_30 cram_huffman_code; alias _Anonymous_31 cram_huffman_decoder; alias _Anonymous_32 cram_huffman_encoder; alias _Anonymous_33 cram_beta_decoder; alias _Anonymous_34 cram_gamma_decoder; alias _Anonymous_35 cram_subexp_decoder; alias _Anonymous_36 cram_external_decoder; alias _Anonymous_37 cram_byte_array_len_decoder; alias _Anonymous_38 cram_byte_array_stop_decoder; alias _Anonymous_39 cram_byte_array_len_encoder; extern __gshared int hts_verbose; extern __gshared const ubyte[256] seq_nt16_table; extern __gshared const ubyte* seq_nt16_str; extern __gshared const double __ac_HASH_UPPER; enum htsFormatCategory { unknown_category = 0, sequence_data = 1, variant_data = 2, index_file = 3, region_list = 4, category_maximum = 32767 } enum htsExactFormat { unknown_format = 0, binary_format = 1, text_format = 2, sam = 3, bam = 4, bai = 5, cram = 6, crai = 7, vcf = 8, bcf = 9, csi = 10, gzi = 11, tbi = 12, bed = 13, format_maximum = 32767 } enum htsCompression { no_compression = 0, gzip = 1, bgzf = 2, custom = 3, compression_maximum = 32767 } enum sam_fields { SAM_QNAME = 1, SAM_FLAG = 2, SAM_RNAME = 4, SAM_POS = 8, SAM_MAPQ = 16, SAM_CIGAR = 32, SAM_RNEXT = 64, SAM_PNEXT = 128, SAM_TLEN = 256, SAM_SEQ = 512, SAM_QUAL = 1024, SAM_AUX = 2048, SAM_RGAUX = 4096 } enum cram_option { CRAM_OPT_DECODE_MD = 0, CRAM_OPT_PREFIX = 1, CRAM_OPT_VERBOSITY = 2, CRAM_OPT_SEQS_PER_SLICE = 3, CRAM_OPT_SLICES_PER_CONTAINER = 4, CRAM_OPT_RANGE = 5, CRAM_OPT_VERSION = 6, CRAM_OPT_EMBED_REF = 7, CRAM_OPT_IGNORE_MD5 = 8, CRAM_OPT_REFERENCE = 9, CRAM_OPT_MULTI_SEQ_PER_SLICE = 10, CRAM_OPT_NO_REF = 11, CRAM_OPT_USE_BZIP2 = 12, CRAM_OPT_SHARED_REF = 13, CRAM_OPT_NTHREADS = 14, CRAM_OPT_THREAD_POOL = 15, CRAM_OPT_USE_LZMA = 16, CRAM_OPT_USE_RANS = 17, CRAM_OPT_REQUIRED_FIELDS = 18 } enum cigar_op { BAM_CMATCH_ = 0, BAM_CINS_ = 1, BAM_CDEL_ = 2, BAM_CREF_SKIP_ = 3, BAM_CSOFT_CLIP_ = 4, BAM_CHARD_CLIP_ = 5, BAM_CPAD_ = 6, BAM_CBASE_MATCH = 7, BAM_CBASE_MISMATCH = 8 } enum sam_sort_order { ORDER_UNKNOWN = -1, ORDER_UNSORTED = 0, ORDER_NAME = 1, ORDER_COORD = 2 } enum cram_encoding { E_NULL = 0, E_EXTERNAL = 1, E_GOLOMB = 2, E_HUFFMAN = 3, E_BYTE_ARRAY_LEN = 4, E_BYTE_ARRAY_STOP = 5, E_BETA = 6, E_SUBEXP = 7, E_GOLOMB_RICE = 8, E_GAMMA = 9 } enum cram_external_type { E_INT = 1, E_LONG = 2, E_BYTE = 3, E_BYTE_ARRAY = 4, E_BYTE_ARRAY_BLOCK = 5 } enum cram_DS_ID { DS_CORE = 0, DS_aux = 1, DS_aux_OQ = 2, DS_aux_BQ = 3, DS_aux_BD = 4, DS_aux_BI = 5, DS_aux_FZ = 6, DS_aux_oq = 7, DS_aux_os = 8, DS_aux_oz = 9, DS_ref = 10, DS_RN = 11, DS_QS = 12, DS_IN = 13, DS_SC = 14, DS_BF = 15, DS_CF = 16, DS_AP = 17, DS_RG = 18, DS_MQ = 19, DS_NS = 20, DS_MF = 21, DS_TS = 22, DS_NP = 23, DS_NF = 24, DS_RL = 25, DS_FN = 26, DS_FC = 27, DS_FP = 28, DS_DL = 29, DS_BA = 30, DS_BS = 31, DS_TL = 32, DS_RI = 33, DS_RS = 34, DS_PD = 35, DS_HC = 36, DS_BB = 37, DS_QQ = 38, DS_TN = 39, DS_RN_len = 40, DS_SC_len = 41, DS_BB_len = 42, DS_QQ_len = 43, DS_TC = 44, DS_TM = 45, DS_TV = 46, DS_END = 47 } enum cram_block_method { ERROR = -1, RAW = 0, GZIP = 1, BZIP2 = 2, LZMA = 3, RANS = 4, RANS0 = 4, RANS1 = 10, GZIP_RLE = 11 } enum cram_content_type { CT_ERROR = -1, FILE_HEADER = 0, COMPRESSION_HEADER = 1, MAPPED_SLICE = 2, UNMAPPED_SLICE = 3, EXTERNAL = 4, CORE = 5 } enum cram_fields { CRAM_BF = 1, CRAM_AP = 2, CRAM_FP = 4, CRAM_RL = 8, CRAM_DL = 16, CRAM_NF = 32, CRAM_BA = 64, CRAM_QS = 128, CRAM_FC = 256, CRAM_FN = 512, CRAM_BS = 1024, CRAM_IN = 2048, CRAM_RG = 4096, CRAM_MQ = 8192, CRAM_TL = 16384, CRAM_RN = 32768, CRAM_NS = 65536, CRAM_NP = 131072, CRAM_TS = 262144, CRAM_MF = 524288, CRAM_CF = 1048576, CRAM_RI = 2097152, CRAM_RS = 4194304, CRAM_PD = 8388608, CRAM_HC = 16777216, CRAM_SC = 33554432, CRAM_BB = 67108864, CRAM_BB_len = 134217728, CRAM_QQ = 268435456, CRAM_QQ_len = 536870912, CRAM_aux = 1073741824, CRAM_ALL = 2147483647 } struct __kstring_t { size_t l; size_t m; char* s; } struct htsFormat { enum htsFormatCategory { unknown_category = 0, sequence_data = 1, variant_data = 2, index_file = 3, region_list = 4, category_maximum = 32767 } htsFormatCategory category; enum htsExactFormat { unknown_format = 0, binary_format = 1, text_format = 2, sam = 3, bam = 4, bai = 5, cram = 6, crai = 7, vcf = 8, bcf = 9, csi = 10, gzi = 11, tbi = 12, bed = 13, format_maximum = 32767 } htsExactFormat format; struct { short major; short minor; } enum htsCompression { no_compression = 0, gzip = 1, bgzf = 2, custom = 3, compression_maximum = 32767 } htsCompression compression; short compression_level; void* specific; } struct _Anonymous_0 { uint is_bin; uint is_write; uint is_be; uint is_cram; uint dummy; long lineno; kstring_t line; char* fn; char* fn_aux; union { BGZF* bgzf; cram_fd* cram; hFILE* hfile; void* voidp; } htsFormat format; } struct _Anonymous_1 { ulong u; ulong v; } struct _Anonymous_2 { uint read_rest; uint finished; uint dummy; int tid; int beg; int end; int n_off; int i; int curr_tid; int curr_beg; int curr_end; ulong curr_off; hts_pair64_t* off; int function (BGZF*, void*, void*, int*, int*, int*) readrec; struct { int n; int m; int* a; } } struct _Anonymous_3 { int n_targets; int ignore_sam_err; uint l_text; uint* target_len; byte* cigar_tab; char** target_name; char* text; void* sdict; } struct _Anonymous_4 { int tid; int pos; ushort bin; ubyte qual; ubyte l_qname; ushort flag; ushort n_cigar; int l_qseq; int mtid; int mpos; int isize; } struct _Anonymous_5 { bam1_core_t core; int l_data; int m_data; ubyte* data; ulong id; } struct _Anonymous_6 { bam1_t* b; int qpos; int indel; int level; uint is_del; uint is_head; uint is_tail; uint is_refskip; uint aux; } struct _Anonymous_7 { char* str; size_t used; } struct _Anonymous_8 { size_t max_length; size_t nstrings; string_t* strings; } struct _Anonymous_9 { void* pool; size_t used; } struct _Anonymous_10 { size_t dsize; size_t npools; pool_t* pools; void* free; } struct _Anonymous_11 { ulong[4] tab; int sep; int finished; const(char)* p; } struct SAM_hdr_tag_s { SAM_hdr_tag_s* next; char* str; int len; } struct SAM_hdr_item_s { SAM_hdr_item_s* next; SAM_hdr_item_s* prev; SAM_hdr_tag* tag; int order; } struct _Anonymous_12 { char* name; uint len; SAM_hdr_type* ty; SAM_hdr_tag* tag; } struct _Anonymous_13 { char* name; SAM_hdr_type* ty; SAM_hdr_tag* tag; int name_len; int id; } struct _Anonymous_14 { char* name; SAM_hdr_type* ty; SAM_hdr_tag* tag; int name_len; int id; int prev_id; } struct kh_sam_hdr_s { khint_t n_buckets; khint_t size; khint_t n_occupied; khint_t upper_bound; khint32_t* flags; khint32_t* keys; SAM_hdr_type** vals; } struct kh_m_s2i_s { khint_t n_buckets; khint_t size; khint_t n_occupied; khint_t upper_bound; khint32_t* flags; kh_cstr_t* keys; int* vals; } struct _Anonymous_15 { kstring_t text; kh_sam_hdr_t* h; string_alloc_t* str_pool; pool_alloc_t* type_pool; pool_alloc_t* tag_pool; int nref; SAM_SQ* ref_; kh_m_s2i_t* ref_hash; int nrg; SAM_RG* rg; kh_m_s2i_t* rg_hash; int npg; int npg_end; int npg_end_alloc; SAM_PG* pg; kh_m_s2i_t* pg_hash; int* pg_end; sam_sort_order sort_order; char[1024] ID_buf; int ID_cnt; int ref_count; } struct t_pool_job { void* function (void*) func; void* arg; t_pool_job* next; t_pool* p; t_results_queue* q; int serial; } struct t_res { t_res* next; int serial; void* data; } struct _Anonymous_16 { t_pool* p; int idx; pthread_t tid; pthread_cond_t pending_c; long wait_time; } struct t_pool { int qsize; int njobs; int nwaiting; int shutdown; t_pool_job* head; t_pool_job* tail; int tsize; t_pool_worker_t* t; pthread_mutex_t pool_m; pthread_cond_t empty_c; pthread_cond_t pending_c; pthread_cond_t full_c; int* t_stack; int t_stack_top; long total_time; long wait_time; } struct t_results_queue { t_pool_result* result_head; t_pool_result* result_tail; int next_serial; int curr_serial; int queue_len; int pending; pthread_mutex_t result_m; pthread_cond_t result_avail_c; } struct _Anonymous_17 { FILE* fp; char* data; size_t alloced; int eof; int mode; size_t size; size_t offset; size_t flush_pos; } struct kh_m_i2i_s { khint_t n_buckets; khint_t size; khint_t n_occupied; khint_t upper_bound; khint32_t* flags; khint32_t* keys; int* vals; } struct kh_s_i2i_s { khint_t n_buckets; khint_t size; khint_t n_occupied; khint_t upper_bound; khint32_t* flags; khint32_t* keys; char* vals; } struct kh_map_s { khint_t n_buckets; khint_t size; khint_t n_occupied; khint_t upper_bound; khint32_t* flags; kh_cstr_t* keys; pmap_t* vals; } struct _Anonymous_19 { int[1024] freqs; kh_m_i2i_t* h; int nsamp; int nvals; } struct _Anonymous_20 { char[4] magic; ubyte major_version; ubyte minor_version; char[20] file_id; } struct _Anonymous_21 { int trial; int next_trial; int sz_gz_rle; int sz_gz_def; int sz_rans0; int sz_rans1; int sz_bzip2; int sz_lzma; int method; int strat; int gz_rle_cnt; int gz_def_cnt; int rans0_cnt; int rans1_cnt; int bzip2_cnt; int lzma_cnt; int revised_method; double gz_rle_extra; double gz_def_extra; double rans0_extra; double rans1_extra; double bzip2_extra; double lzma_extra; } struct _Anonymous_22 { enum cram_block_method { ERROR = -1, RAW = 0, GZIP = 1, BZIP2 = 2, LZMA = 3, RANS = 4, RANS0 = 4, RANS1 = 10, GZIP_RLE = 11 } cram_block_method method; cram_block_method orig_method; enum cram_content_type { CT_ERROR = -1, FILE_HEADER = 0, COMPRESSION_HEADER = 1, MAPPED_SLICE = 2, UNMAPPED_SLICE = 3, EXTERNAL = 4, CORE = 5 } cram_content_type content_type; int content_id; int comp_size; int uncomp_size; uint crc32; int idx; ubyte* data; size_t alloc; size_t byte_; int bit; } struct _Anonymous_23 { int ref_seq_id; int ref_seq_start; int ref_seq_span; int num_records; int num_landmarks; int* landmark; int mapped_qs_included; int unmapped_qs_included; int unmapped_placed; int qs_included; int read_names_included; int AP_delta; char[4][5] substitution_matrix; cram_block* TD_blk; int nTL; ubyte** TL; kh_m_s2i_t* TD_hash; string_alloc_t* TD_keys; kh_map_t* preservation_map; cram_map*[32] rec_encoding_map; cram_map*[32] tag_encoding_map; cram_codec*[47] codecs; char* uncomp; size_t uncomp_size; size_t uncomp_alloc; uint data_series; } struct cram_map { int key; enum cram_encoding { E_NULL = 0, E_EXTERNAL = 1, E_GOLOMB = 2, E_HUFFMAN = 3, E_BYTE_ARRAY_LEN = 4, E_BYTE_ARRAY_STOP = 5, E_BETA = 6, E_SUBEXP = 7, E_GOLOMB_RICE = 8, E_GAMMA = 9 } cram_encoding encoding; int offset; int size; cram_codec* codec; cram_map* next; } struct _Anonymous_24 { enum cram_content_type { CT_ERROR = -1, FILE_HEADER = 0, COMPRESSION_HEADER = 1, MAPPED_SLICE = 2, UNMAPPED_SLICE = 3, EXTERNAL = 4, CORE = 5 } cram_content_type content_type; int ref_seq_id; int ref_seq_start; int ref_seq_span; int num_records; long record_counter; int num_blocks; int num_content_ids; int* block_content_ids; int ref_base_id; ubyte[16] md5; } struct _Anonymous_25 { int length; int ref_seq_id; int ref_seq_start; int ref_seq_span; long record_counter; long num_bases; int num_records; int num_blocks; int num_landmarks; int* landmark; size_t offset; cram_block_compression_hdr* comp_hdr; cram_block* comp_hdr_block; int max_slice; int curr_slice; int max_rec; int curr_rec; int max_c_rec; int curr_c_rec; int slice_rec; int curr_ref; int last_pos; cram_slice** slices; cram_slice* slice; int pos_sorted; int max_apos; int last_slice; int multi_seq; int unsorted; int ref_start; int first_base; int last_base; int ref_id; int ref_end; char* ref_; bam_seq_t** bams; cram_stats*[47] stats; kh_s_i2i_t* tags_used; int* refs_used; uint crc32; } struct _Anonymous_26 { cram_slice* s; int ref_id; int flags; int cram_flags; int len; int apos; int rg; int name; int name_len; int mate_line; int mate_ref_id; int mate_pos; int tlen; int ntags; int aux; int aux_size; int TN_idx; int TL; int seq; int qual; int cigar; int ncigar; int aend; int mqual; int feature; int nfeature; int mate_flags; } struct _Anonymous_27 { } struct cram_slice { cram_block_slice_hdr* hdr; cram_block* hdr_block; cram_block** block; cram_block** block_by_id; int last_apos; int max_apos; cram_record* crecs; uint* cigar; uint cigar_alloc; uint ncigar; cram_feature* features; int nfeatures; int afeatures; uint* TN; int nTN; int aTN; cram_block* name_blk; cram_block* seqs_blk; cram_block* qual_blk; cram_block* base_blk; cram_block* soft_blk; cram_block* aux_blk; cram_block* aux_OQ_blk; cram_block* aux_BQ_blk; cram_block* aux_BD_blk; cram_block* aux_BI_blk; cram_block* aux_FZ_blk; cram_block* aux_oq_blk; cram_block* aux_os_blk; cram_block* aux_oz_blk; string_alloc_t* pair_keys; kh_m_s2i_t*[2] pair; char* ref_; int ref_start; int ref_end; int ref_id; } struct ref_entry { char* name; char* fn; long length; long offset; int bases_per_line; int line_length; long count; char* seq; mFILE* mf; } struct kh_refs_s { khint_t n_buckets; khint_t size; khint_t n_occupied; khint_t upper_bound; khint32_t* flags; kh_cstr_t* keys; ref_entry** vals; } alias kh_refs_s kh_refs_t; struct _Anonymous_28 { string_alloc_t* pool; kh_refs_t* h_meta; ref_entry** ref_id; int nref; char* fn; BGZF* fp; int count; pthread_mutex_t lock; ref_entry* last; int last_id; } struct cram_index { int nslice; int nalloc; cram_index* e; int refid; int start; int end; int nseq; int slice; int len; long offset; } struct _Anonymous_29 { int refid; int start; int end; } struct spare_bams { bam_seq_t** bams; spare_bams* next; } struct cram_fd { hFILE* fp; int mode; int version_; cram_file_def* file_def; SAM_hdr* header; char* prefix; long record_counter; int err; cram_container* ctr; int first_base; int last_base; refs_t* refs; char* ref_; char* ref_free; int ref_id; int ref_start; int ref_end; char* ref_fn; int level; cram_metrics*[47] m; int decode_md; int verbose; int seqs_per_slice; int slices_per_container; int embed_ref; int no_ref; int ignore_md5; int use_bz2; int use_rans; int use_lzma; int shared_ref; uint required_fields; cram_range range; uint[4096] bam_flag_swap; uint[4096] cram_flag_swap; ubyte[256] L1; ubyte[256] L2; char[32][32] cram_sub_matrix; int index_sz; cram_index* index; off_t first_container; int eof; int last_slice; int multi_seq; int unsorted; int empty_container; int own_pool; t_pool* pool; t_results_queue* rqueue; pthread_mutex_t metrics_lock; pthread_mutex_t ref_lock; spare_bams* bl; pthread_mutex_t bam_list_lock; void* job_pending; int ooc; } struct _Anonymous_30 { int symbol; int p; int code; int len; } struct _Anonymous_31 { int ncodes; cram_huffman_code* codes; } struct _Anonymous_32 { cram_huffman_code* codes; int nvals; int[129] val2code; } struct _Anonymous_33 { int offset; int nbits; } struct _Anonymous_34 { int offset; } struct _Anonymous_35 { int offset; int k; } struct _Anonymous_36 { int content_id; enum cram_external_type { E_INT = 1, E_LONG = 2, E_BYTE = 3, E_BYTE_ARRAY = 4, E_BYTE_ARRAY_BLOCK = 5 } cram_external_type type; } struct _Anonymous_37 { cram_codec* len_codec; cram_codec* value_codec; } struct _Anonymous_38 { ubyte stop; int content_id; } struct _Anonymous_39 { enum cram_encoding { E_NULL = 0, E_EXTERNAL = 1, E_GOLOMB = 2, E_HUFFMAN = 3, E_BYTE_ARRAY_LEN = 4, E_BYTE_ARRAY_STOP = 5, E_BETA = 6, E_SUBEXP = 7, E_GOLOMB_RICE = 8, E_GAMMA = 9 } cram_encoding len_encoding; cram_encoding val_encoding; void* len_dat; void* val_dat; cram_codec* len_codec; cram_codec* val_codec; } struct cram_codec { enum cram_encoding { E_NULL = 0, E_EXTERNAL = 1, E_GOLOMB = 2, E_HUFFMAN = 3, E_BYTE_ARRAY_LEN = 4, E_BYTE_ARRAY_STOP = 5, E_BETA = 6, E_SUBEXP = 7, E_GOLOMB_RICE = 8, E_GAMMA = 9 } cram_encoding codec; cram_block* out_; void function (cram_codec*) free; int function (cram_slice*, cram_codec*, cram_block*, char*, int*) decode; int function (cram_slice*, cram_codec*, char*, int) encode; int function (cram_codec*, cram_block*, char*, int) store; } struct hFILE; struct __bam_plp_t; struct BGZF; struct __bam_mplp_t; struct __hts_idx_t; struct hts_md5_context; union _Anonymous_18 { int i; char* p; } const(char)* hts_version (); int hts_detect_format (hFILE* fp, htsFormat* fmt); const(char)* hts_format_description (const(htsFormat)* format); htsFile* hts_open (const(char)* fn, const(char)* mode); htsFile* hts_hopen (hFILE* fp, const(char)* fn, const(char)* mode); int hts_close (htsFile* fp); const(htsFormat)* hts_get_format (htsFile* fp); int hts_set_opt (htsFile* fp, cram_option opt, ...); int hts_getline (htsFile* fp, int delimiter, kstring_t* str); char** hts_readlines (const(char)* fn, int* _n); char** hts_readlist (const(char)* fn, int is_file, int* _n); int hts_set_threads (htsFile* fp, int n); int hts_set_fai_filename (htsFile* fp, const(char)* fn_aux); hts_idx_t* hts_idx_init (int n, int fmt, ulong offset0, int min_shift, int n_lvls); void hts_idx_destroy (hts_idx_t* idx); int hts_idx_push (hts_idx_t* idx, int tid, int beg, int end, ulong offset, int is_mapped); void hts_idx_finish (hts_idx_t* idx, ulong final_offset); void hts_idx_save (const(hts_idx_t)* idx, const(char)* fn, int fmt); hts_idx_t* hts_idx_load (const(char)* fn, int fmt); ubyte* hts_idx_get_meta (hts_idx_t* idx, int* l_meta); void hts_idx_set_meta (hts_idx_t* idx, int l_meta, ubyte* meta, int is_copy); int hts_idx_get_stat (const(hts_idx_t)* idx, int tid, ulong* mapped, ulong* unmapped); ulong hts_idx_get_n_no_coor (const(hts_idx_t)* idx); long hts_parse_decimal (const(char)* str, char** end); const(char)* hts_parse_reg (const(char)* str, int* beg, int* end); hts_itr_t* hts_itr_query (const(hts_idx_t)* idx, int tid, int beg, int end, int function (BGZF*, void*, void*, int*, int*, int*) readrec); void hts_itr_destroy (hts_itr_t* iter); hts_itr_t* hts_itr_querys (const(hts_idx_t)* idx, const(char)* reg, hts_name2id_f getid, void* hdr, hts_itr_t* function (const(hts_idx_t)*, int, int, int, int function (BGZF*, void*, void*, int*, int*, int*)) itr_query, int function (BGZF*, void*, void*, int*, int*, int*) readrec); int hts_itr_next (BGZF* fp, hts_itr_t* iter, void* r, void* data); const(char*)* hts_idx_seqnames (const(hts_idx_t)* idx, int* n, hts_id2name_f getid, void* hdr); int hts_file_type (const(char)* fname); hts_md5_context* hts_md5_init (); void hts_md5_update (hts_md5_context* ctx, const(void)* data, c_ulong size); void hts_md5_final (ubyte* digest, hts_md5_context* ctx); void hts_md5_reset (hts_md5_context* ctx); void hts_md5_hex (char* hex, const(ubyte)* digest); void hts_md5_destroy (hts_md5_context* ctx); int hts_reg2bin (long beg, long end, int min_shift, int n_lvls); int hts_bin_bot (int bin, int n_lvls); int ed_is_big (); ushort ed_swap_2 (ushort v); void* ed_swap_2p (void* x); uint ed_swap_4 (uint v); void* ed_swap_4p (void* x); ulong ed_swap_8 (ulong v); void* ed_swap_8p (void* x); bam_hdr_t* bam_hdr_init (); bam_hdr_t* bam_hdr_read (BGZF* fp); int bam_hdr_write (BGZF* fp, const(bam_hdr_t)* h); void bam_hdr_destroy (bam_hdr_t* h); int bam_name2id (bam_hdr_t* h, const(char)* ref_); bam_hdr_t* bam_hdr_dup (const(bam_hdr_t)* h0); bam1_t* bam_init1 (); void bam_destroy1 (bam1_t* b); int bam_read1 (BGZF* fp, bam1_t* b); int bam_write1 (BGZF* fp, const(bam1_t)* b); bam1_t* bam_copy1 (bam1_t* bdst, const(bam1_t)* bsrc); bam1_t* bam_dup1 (const(bam1_t)* bsrc); int bam_cigar2qlen (int n_cigar, const(uint)* cigar); int bam_cigar2rlen (int n_cigar, const(uint)* cigar); int bam_endpos (const(bam1_t)* b); int bam_str2flag (const(char)* str); char* bam_flag2str (int flag); int bam_index_build (const(char)* fn, int min_shift); hts_idx_t* sam_index_load (htsFile* fp, const(char)* fn); hts_itr_t* sam_itr_queryi (const(hts_idx_t)* idx, int tid, int beg, int end); hts_itr_t* sam_itr_querys (const(hts_idx_t)* idx, bam_hdr_t* hdr, const(char)* region); int sam_open_mode (char* mode, const(char)* fn, const(char)* format); bam_hdr_t* sam_hdr_parse (int l_text, const(char)* text); bam_hdr_t* sam_hdr_read (samFile* fp); int sam_hdr_write (samFile* fp, const(bam_hdr_t)* h); int sam_parse1 (kstring_t* s, bam_hdr_t* h, bam1_t* b); int sam_format1 (const(bam_hdr_t)* h, const(bam1_t)* b, kstring_t* str); int sam_read1 (samFile* fp, bam_hdr_t* h, bam1_t* b); int sam_write1 (samFile* fp, const(bam_hdr_t)* h, const(bam1_t)* b); ubyte* bam_aux_get (const(bam1_t)* b, const char[2] tag); int bam_aux2i (const(ubyte)* s); double bam_aux2f (const(ubyte)* s); char bam_aux2A (const(ubyte)* s); char* bam_aux2Z (const(ubyte)* s); void bam_aux_append (bam1_t* b, const char[2] tag, char type, int len, ubyte* data); int bam_aux_del (bam1_t* b, ubyte* s); bam_plp_t bam_plp_init (bam_plp_auto_f func, void* data); void bam_plp_destroy (bam_plp_t iter); int bam_plp_push (bam_plp_t iter, const(bam1_t)* b); const(bam_pileup1_t)* bam_plp_next (bam_plp_t iter, int* _tid, int* _pos, int* _n_plp); const(bam_pileup1_t)* bam_plp_auto (bam_plp_t iter, int* _tid, int* _pos, int* _n_plp); void bam_plp_set_maxcnt (bam_plp_t iter, int maxcnt); void bam_plp_reset (bam_plp_t iter); bam_mplp_t bam_mplp_init (int n, bam_plp_auto_f func, void** data); void bam_mplp_init_overlaps (bam_mplp_t iter); void bam_mplp_destroy (bam_mplp_t iter); void bam_mplp_set_maxcnt (bam_mplp_t iter, int maxcnt); int bam_mplp_auto (bam_mplp_t iter, int* _tid, int* _pos, int* n_plp, const(bam_pileup1_t*)* plp); string_alloc_t* string_pool_create (size_t max_length); void string_pool_destroy (string_alloc_t* a_str); char* string_alloc (string_alloc_t* a_str, size_t length); char* string_dup (string_alloc_t* a_str, char* instr); char* string_ndup (string_alloc_t* a_str, char* instr, size_t len); pool_alloc_t* pool_create (size_t dsize); void pool_destroy (pool_alloc_t* p); void* pool_alloc (pool_alloc_t* p); void pool_free (pool_alloc_t* p, void* ptr); khint_t __ac_X31_hash_string (const(char)* s); khint_t __ac_Wang_hash (khint_t key); int kvsprintf (kstring_t* s, const(char)* fmt, va_list ap); int ksprintf (kstring_t* s, const(char)* fmt, ...); int ksplit_core (char* s, int delimiter, int* _max, int** _offsets); char* kstrstr (const(char)* str, const(char)* pat, int** _prep); char* kstrnstr (const(char)* str, const(char)* pat, int n, int** _prep); void* kmemmem (const(void)* _str, int n, const(void)* _pat, int m, int** _prep); char* kstrtok (const(char)* str, const(char)* sep, ks_tokaux_t* aux); int ks_resize (kstring_t* s, size_t size); char* ks_str (kstring_t* s); size_t ks_len (kstring_t* s); char* ks_release (kstring_t* s); int kputsn (const(char)* p, int l, kstring_t* s); int kputs (const(char)* p, kstring_t* s); int kputc (int c, kstring_t* s); int kputc_ (int c, kstring_t* s); int kputsn_ (const(void)* p, int l, kstring_t* s); int kputw (int c, kstring_t* s); int kputuw (uint c, kstring_t* s); int kputl (c_long c, kstring_t* s); int* ksplit (kstring_t* s, int delimiter, int* n); kh_sam_hdr_t* kh_init_sam_hdr (); void kh_destroy_sam_hdr (kh_sam_hdr_t* h); void kh_clear_sam_hdr (kh_sam_hdr_t* h); khint_t kh_get_sam_hdr (const(kh_sam_hdr_t)* h, khint32_t key); int kh_resize_sam_hdr (kh_sam_hdr_t* h, khint_t new_n_buckets); khint_t kh_put_sam_hdr (kh_sam_hdr_t* h, khint32_t key, int* ret); void kh_del_sam_hdr (kh_sam_hdr_t* h, khint_t x); kh_m_s2i_t* kh_init_m_s2i (); void kh_destroy_m_s2i (kh_m_s2i_t* h); void kh_clear_m_s2i (kh_m_s2i_t* h); khint_t kh_get_m_s2i (const(kh_m_s2i_t)* h, kh_cstr_t key); int kh_resize_m_s2i (kh_m_s2i_t* h, khint_t new_n_buckets); khint_t kh_put_m_s2i (kh_m_s2i_t* h, kh_cstr_t key, int* ret); void kh_del_m_s2i (kh_m_s2i_t* h, khint_t x); SAM_hdr* sam_hdr_new (); SAM_hdr* sam_hdr_parse_ (const(char)* hdr, int len); SAM_hdr* sam_hdr_dup (SAM_hdr* hdr); void sam_hdr_incr_ref (SAM_hdr* hdr); void sam_hdr_decr_ref (SAM_hdr* hdr); void sam_hdr_free (SAM_hdr* hdr); int sam_hdr_length (SAM_hdr* hdr); char* sam_hdr_str (SAM_hdr* hdr); int sam_hdr_add_lines (SAM_hdr* sh, const(char)* lines, int len); int sam_hdr_add (SAM_hdr* sh, const(char)* type, ...); int sam_hdr_vadd (SAM_hdr* sh, const(char)* type, va_list ap, ...); SAM_hdr_type* sam_hdr_find (SAM_hdr* hdr, char* type, char* ID_key, char* ID_value); char* sam_hdr_find_line (SAM_hdr* hdr, char* type, char* ID_key, char* ID_value); SAM_hdr_tag* sam_hdr_find_key (SAM_hdr* sh, SAM_hdr_type* type, char* key, SAM_hdr_tag** prev); int sam_hdr_update (SAM_hdr* hdr, SAM_hdr_type* type, ...); sam_sort_order sam_hdr_sort_order (SAM_hdr* hdr); int sam_hdr_rebuild (SAM_hdr* hdr); int sam_hdr_name2ref (SAM_hdr* hdr, const(char)* ref_); SAM_RG* sam_hdr_find_rg (SAM_hdr* hdr, const(char)* rg); int sam_hdr_link_pg (SAM_hdr* hdr); int sam_hdr_add_PG (SAM_hdr* sh, const(char)* name, ...); bam_hdr_t* cram_header_to_bam (SAM_hdr* h); SAM_hdr* bam_header_to_cram (bam_hdr_t* h); int bam_construct_seq (bam_seq_t** bp, size_t extra_len, const(char)* qname, size_t qname_len, int flag, int rname, int pos, int end, int mapq, uint ncigar, const(uint)* cigar, int mrnm, int mpos, int isize, int len, const(char)* seq, const(char)* qual); t_pool* t_pool_init (int qsize, int tsize); int t_pool_dispatch (t_pool* p, t_results_queue* q, void* function (void*) func, void* arg); int t_pool_dispatch2 (t_pool* p, t_results_queue* q, void* function (void*) func, void* arg, int nonblock); int t_pool_flush (t_pool* p); void t_pool_destroy (t_pool* p, int kill); t_pool_result* t_pool_next_result (t_results_queue* q); t_pool_result* t_pool_next_result_wait (t_results_queue* q); void t_pool_delete_result (t_pool_result* r, int free_data); t_results_queue* t_results_queue_init (); void t_results_queue_destroy (t_results_queue* q); int t_pool_results_queue_empty (t_results_queue* q); int t_pool_results_queue_len (t_results_queue* q); int t_pool_results_queue_sz (t_results_queue* q); mFILE* mfreopen (const(char)* path, const(char)* mode, FILE* fp); mFILE* mfopen (const(char)* path, const(char)* mode); int mfdetach (mFILE* mf); int mfclose (mFILE* mf); int mfdestroy (mFILE* mf); int mfseek (mFILE* mf, c_long offset, int whence); c_long mftell (mFILE* mf); void mrewind (mFILE* mf); void mftruncate (mFILE* mf, c_long offset); int mfeof (mFILE* mf); size_t mfread (void* ptr, size_t size, size_t nmemb, mFILE* mf); size_t mfwrite (void* ptr, size_t size, size_t nmemb, mFILE* mf); int mfgetc (mFILE* mf); int mungetc (int c, mFILE* mf); mFILE* mfcreate (char* data, int size); mFILE* mfcreate_from (const(char)* path, const(char)* mode_str, FILE* fp); void mfrecreate (mFILE* mf, char* data, int size); void* mfsteal (mFILE* mf, size_t* size_out); char* mfgets (char* s, int size, mFILE* mf); int mfflush (mFILE* mf); int mfprintf (mFILE* mf, char* fmt, ...); mFILE* mstdin (); mFILE* mstdout (); mFILE* mstderr (); void mfascii (mFILE* mf); kh_m_i2i_t* kh_init_m_i2i (); void kh_destroy_m_i2i (kh_m_i2i_t* h); void kh_clear_m_i2i (kh_m_i2i_t* h); khint_t kh_get_m_i2i (const(kh_m_i2i_t)* h, khint32_t key); int kh_resize_m_i2i (kh_m_i2i_t* h, khint_t new_n_buckets); khint_t kh_put_m_i2i (kh_m_i2i_t* h, khint32_t key, int* ret); void kh_del_m_i2i (kh_m_i2i_t* h, khint_t x); kh_s_i2i_t* kh_init_s_i2i (); void kh_destroy_s_i2i (kh_s_i2i_t* h); void kh_clear_s_i2i (kh_s_i2i_t* h); khint_t kh_get_s_i2i (const(kh_s_i2i_t)* h, khint32_t key); int kh_resize_s_i2i (kh_s_i2i_t* h, khint_t new_n_buckets); khint_t kh_put_s_i2i (kh_s_i2i_t* h, khint32_t key, int* ret); void kh_del_s_i2i (kh_s_i2i_t* h, khint_t x); kh_map_t* kh_init_map (); void kh_destroy_map (kh_map_t* h); void kh_clear_map (kh_map_t* h); khint_t kh_get_map (const(kh_map_t)* h, kh_cstr_t key); int kh_resize_map (kh_map_t* h, khint_t new_n_buckets); khint_t kh_put_map (kh_map_t* h, kh_cstr_t key, int* ret); void kh_del_map (kh_map_t* h, khint_t x); kh_refs_t* kh_init_refs (); void kh_destroy_refs (kh_refs_t* h); void kh_clear_refs (kh_refs_t* h); khint_t kh_get_refs (const(kh_refs_t)* h, kh_cstr_t key); int kh_resize_refs (kh_refs_t* h, khint_t new_n_buckets); khint_t kh_put_refs (kh_refs_t* h, kh_cstr_t key, int* ret); void kh_del_refs (kh_refs_t* h, khint_t x); int is_directory (char* fn); int is_file (char* fn); int file_size (char* fn); int itf8_decode (cram_fd* fd, int* val); int ltf8_get (char* cp, long* val_p); int ltf8_put (char* cp, long val); int itf8_put_blk (cram_block* blk, int val); cram_block* cram_new_block (cram_content_type content_type, int content_id); cram_block* cram_read_block (cram_fd* fd); int cram_write_block (cram_fd* fd, cram_block* b); void cram_free_block (cram_block* b); char* zlib_mem_inflate (char* cdata, size_t csize, size_t* size); int cram_uncompress_block (cram_block* b); int cram_compress_block (cram_fd* fd, cram_block* b, cram_metrics* metrics, int method, int level); cram_metrics* cram_new_metrics (); char* cram_block_method2str (cram_block_method m); char* cram_content_type2str (cram_content_type t); ubyte* append_uint32 (ubyte* cp, uint i); ubyte* append_sub32 (ubyte* cp, uint i); ubyte* append_uint64 (ubyte* cp, ulong i); int cram_load_reference (cram_fd* fd, const(char)* fn); int refs2id (refs_t* r, SAM_hdr* bfd); void refs_free (refs_t* r); char* cram_get_ref (cram_fd* fd, int id, int start, int end); void cram_ref_incr (refs_t* r, int id); void cram_ref_decr (refs_t* r, int id); cram_container* cram_new_container (int nrec, int nslice); void cram_free_container (cram_container* c); cram_container* cram_read_container (cram_fd* fd); int cram_write_container (cram_fd* fd, cram_container* h); int cram_flush_container (cram_fd* fd, cram_container* c); int cram_flush_container_mt (cram_fd* fd, cram_container* c); cram_block_compression_hdr* cram_new_compression_header (); void cram_free_compression_header (cram_block_compression_hdr* hdr); void cram_free_slice_header (cram_block_slice_hdr* hdr); void cram_free_slice (cram_slice* s); cram_slice* cram_new_slice (cram_content_type type, int nrecs); cram_slice* cram_read_slice (cram_fd* fd); cram_file_def* cram_read_file_def (cram_fd* fd); int cram_write_file_def (cram_fd* fd, cram_file_def* def); void cram_free_file_def (cram_file_def* def); SAM_hdr* cram_read_SAM_hdr (cram_fd* fd); int cram_write_SAM_hdr (cram_fd* fd, SAM_hdr* hdr); cram_fd* cram_open (const(char)* filename, const(char)* mode); cram_fd* cram_dopen (hFILE* fp, const(char)* filename, const(char)* mode); int cram_close (cram_fd* fd); int cram_seek (cram_fd* fd, off_t offset, int whence); int cram_flush (cram_fd* fd); int cram_eof (cram_fd* fd); int cram_set_option (cram_fd* fd, cram_option opt, ...); int cram_set_voption (cram_fd* fd, cram_option opt, va_list args); int cram_set_header (cram_fd* fd, SAM_hdr* hdr); int cram_put_bam_seq (cram_fd* fd, bam_seq_t* b); cram_block* cram_encode_compression_header (cram_fd* fd, cram_container* c, cram_block_compression_hdr* h); cram_block* cram_encode_slice_header (cram_fd* fd, cram_slice* s); int cram_encode_container (cram_fd* fd, cram_container* c); cram_record* cram_get_seq (cram_fd* fd); int cram_get_bam_seq (cram_fd* fd, bam_seq_t** bam); cram_block_compression_hdr* cram_decode_compression_header (cram_fd* fd, cram_block* b); cram_block_slice_hdr* cram_decode_slice_header (cram_fd* fd, cram_block* b); int cram_decode_slice (cram_fd* fd, cram_container* c, cram_slice* s, SAM_hdr* hdr); int cram_to_bam (SAM_hdr* bfd, cram_fd* fd, cram_slice* s, cram_record* cr, int rec, bam_seq_t** bam); cram_stats* cram_stats_create (); void cram_stats_add (cram_stats* st, int val); void cram_stats_del (cram_stats* st, int val); void cram_stats_dump (cram_stats* st); void cram_stats_free (cram_stats* st); cram_encoding cram_stats_encoding (cram_fd* fd, cram_stats* st); char* cram_encoding2str (cram_encoding t); cram_codec* cram_decoder_init (cram_encoding codec, char* data, int size, cram_external_type option, int version_); cram_codec* cram_encoder_init (cram_encoding codec, cram_stats* st, cram_external_type option, void* dat, int version_); int cram_codec_to_id (cram_codec* c, int* id2); int cram_index_load (cram_fd* fd, const(char)* fn); void cram_index_free (cram_fd* fd); cram_index* cram_index_query (cram_fd* fd, int refid, int pos, cram_index* frm); void cram_index_free (cram_fd* fd); int cram_seek_to_refpos (cram_fd* fd, cram_range* r); int cram_index_build (cram_fd* fd, const(char)* fn_base); sambamba-0.6.7/cram/reader.d000066400000000000000000000072711320451002000156120ustar00rootroot00000000000000module cram.reader; // uses some internal functions of htslib => static linking is necessary import cram.htslib; import cram.reference; import cram.exception; import cram.wrappers; import cram.slicereader; import bio.bam.abstractreader, bio.bam.referenceinfo, bio.sam.header, bio.bam.reference, bio.bam.read; import std.string, std.array, std.range, std.algorithm, std.conv, std.typecons; import std.parallelism; class CramReader : IBamSamReader { private { string _fn; string _mode; CramFd _fd; TaskPool _task_pool; SamHeader _header; // (RE-)parsed lazily SamHeader parseHeader() { auto ptr = sam_hdr_str(_fd.header); auto len = sam_hdr_length(_fd.header); // FIXME: avoid reparsing header; turn it into an interface // with two implementations? return new SamHeader(cast(string)(ptr[0 .. len])); } ReferenceSequenceInfo[] _reference_sequences; int[string] _reference_sequence_dict; } this(string filename, TaskPool pool=taskPool) { _fn = filename; _task_pool = pool; _fd = openCram(filename); _reference_sequences.length = _fd.header.nref; foreach (k; 0 .. _fd.header.nref) { auto seq = _fd.header.ref_[k]; _reference_sequences[k] = ReferenceSequenceInfo(seq.name.to!string, seq.len); _reference_sequence_dict[_reference_sequences[k].name] = cast(int)k; } } /// bool hasReference(string reference) { return null != (reference in _reference_sequence_dict); } /// string filename() @property const { return _fn; } /// cram.reference.ReferenceSequence opIndex(string ref_name) { enforce(hasReference(ref_name), "Reference with name " ~ ref_name ~ " is not present in the header"); auto ref_id = _reference_sequence_dict[ref_name]; return reference(ref_id); } /// cram.reference.ReferenceSequence reference(int ref_id) { enforce(ref_id < _reference_sequences.length, "Invalid reference index"); return cram.reference.ReferenceSequence(this, fd(), _seq_op, ref_id, _reference_sequences[ref_id], _task_pool); } BamRead[] unmappedReads() { throw new Exception("* region unimplemented for CRAM files"); } SamHeader header() @property { if (_header is null) _header = parseHeader(); return _header; } const(ReferenceSequenceInfo)[] reference_sequences() @property const nothrow { return _reference_sequences; } private bool _seq_op; void assumeSequentialProcessing() { _seq_op = true; } private CramFd fd() { return _fn == "-" ? _fd : openCram(_fn); } auto reads() { alias R = CramFilterResult; auto s = fd().slices(c => c.length > 0 ? R.pass : R.skip, null, _task_pool); // no trust for delegates implementation => use zip-repeat trick auto reads = s.zip(repeat(this), repeat(bamReadAlloc(_seq_op))) .map!(x => bamReads(x[0], x[1], x[2])) .joiner2; return reads; } std.range.InputRange!(bio.bam.read.BamRead) allReads() @property { return inputRangeObject(reads()); } void createIndex(string fn_prefix=null) { int ret = cram_index_build(_fd, toStringz(fn_prefix is null ? _fn : fn_prefix)); if (ret != 0) { throw new Exception("failed to build index for CRAM file " ~ _fn); } } } sambamba-0.6.7/cram/reference.d000066400000000000000000000062031320451002000163000ustar00rootroot00000000000000module cram.reference; import cram.exception, cram.wrappers, cram.slicereader; import cram.htslib; import bio.bam.abstractreader; import bio.bam.referenceinfo; import bio.bam.read; import std.string; import std.parallelism; import std.range, std.algorithm; int ref_seq_id(BamRead r) { return r.ref_id; } int ref_seq_start(BamRead r) { return r.position + 1; } int ref_seq_span(BamRead r) { return r.basesCovered(); } struct PositionChecker { cram_range range; private CramFilterResult passImpl(T)(T x) { if (x.ref_seq_id < range.refid) return CramFilterResult.skip; if (x.ref_seq_id > range.refid) return CramFilterResult.stop; if (x.ref_seq_start > range.end) return CramFilterResult.stop; // order of checks matters: ref_seq_span is relatively slow for reads if (x.ref_seq_start + x.ref_seq_span - 1 < range.start) return CramFilterResult.skip; return CramFilterResult.pass; } auto pass(cram_container* c) { if (c.length == 0) return CramFilterResult.skip; return passImpl(c); } auto pass(cram_slice* s) { return passImpl(s.hdr); } auto pass(BamRead r) { return passImpl(r); } } struct ReferenceSequence { /// Name string name() @property const { return _info.name; } /// Length in base pairs int length() @property const { return _info.length; } /// Reference ID int id() @property const { return _ref_id; } private TaskPool _task_pool; this(IBamSamReader reader, CramFd fd, bool seq_op, int ref_id, ReferenceSequenceInfo info, TaskPool task_pool) { _reader = reader; _fd = fd; _seq_op = seq_op; _ref_id = ref_id; _info = info; _task_pool = task_pool; } /// Get alignments overlapping [start, end) region. /// $(BR) /// Coordinates are 0-based. auto opSlice(uint start, uint end) { enforce(start < end, "start must be less than end"); enforce(_ref_id >= 0, "invalid reference id"); enforce(cram_index_load(_fd, toStringz(_reader.filename)) == 0, "couldn't load CRAM index"); cram_range r; r.refid = _ref_id; r.start = start + 1; r.end = end; if (cram_seek_to_refpos(_fd, &r) == -1) throw new CramException("Failure in cram_seek_to_refpos"); auto checker = PositionChecker(r); auto alloc = bamReadAlloc(_seq_op); return _fd.slices(c => checker.pass(c), s => checker.pass(s), _task_pool) .zip(repeat(checker), repeat(_reader), repeat(alloc)) .map!(x => bamReads(x[0], x[2], x[3]) .zip(repeat(x[1])) .filter!(y => y[1].pass(y[0]) == CramFilterResult.pass) .map!(y => y[0])) .joiner2; } /// All alignments auto opSlice() { assert(length > 0); return opSlice(0, length); } private: IBamSamReader _reader; CramFd _fd; int _ref_id; bool _seq_op; ReferenceSequenceInfo _info; } sambamba-0.6.7/cram/slicereader.d000066400000000000000000000061751320451002000166340ustar00rootroot00000000000000module cram.slicereader; import cram.htslib, cram.wrappers, cram.exception; import bio.bam.abstractreader, bio.bam.read; alias AllocateFunc = ubyte[] function(size_t); ubyte[] reusableChunkAllocator(size_t size) { static ubyte[] _block; if (size > _block.length) { _block.assumeSafeAppend(); _block.length = size; } return _block[0 .. size]; } ubyte[] chunkAllocator(size_t size) { static ubyte[] _block; static size_t _capa = 65536; static size_t _used; if (size + _used <= _capa && _block !is null) { auto result = _block[_used .. $][0 .. size]; _used += size; return result; } else { if (size > _capa) _capa = size; _block = uninitializedArray!(ubyte[])(_capa); _used = size; return _block[0 .. size]; } } AllocateFunc bamReadAlloc(bool buffer_is_safe_to_reuse) { if (buffer_is_safe_to_reuse) return &reusableChunkAllocator; else return &chunkAllocator; } struct CramSliceReader { private { CramSlice _slice; int _n_curr; size_t _n_total; alias RcBamSeq = RcPtr!(bam_seq_t, bam_destroy1); RcBamSeq _bam_seq_ptr; IBamSamReader _reader; AllocateFunc _alloc; } BamRead front; bool empty; this(CramSlice slice, IBamSamReader reader, AllocateFunc alloc) { _bam_seq_ptr = RcBamSeq(bam_init1()); _slice = slice; _reader = reader; _alloc = alloc; _n_total = slice.hdr.num_records; popFront(); } void popFront() { if (_n_curr == _n_total) { empty = true; return; } int ret = cram_to_bam(_slice.fd.header, _slice.fd.data.ptr, _slice.data.ptr, &_slice.crecs[_n_curr], _n_curr, &_bam_seq_ptr.data.ptr); if (ret == -1) throw new CramException("Failure in cram_to_bam"); front = toBamRead(_bam_seq_ptr); front.associateWithReader(_reader); ++_n_curr; } private BamRead toBamRead(bam_seq_t* record) { auto chunk = _alloc(32 + record.l_data); chunk[32 .. $] = record.data[0 .. record.l_data]; auto ptr = cast(void*)(chunk.ptr); *(cast(int*)ptr + 0) = record.core.tid; *(cast(int*)ptr + 1) = record.core.pos; auto bin = record.core.bin; auto mq = record.core.qual; auto nl = record.core.l_qname; *(cast(uint*)ptr + 2) = (bin << 16) | (mq << 8) | nl; auto flag = record.core.flag; auto nc = record.core.n_cigar; *(cast(uint*)ptr + 3) = (flag << 16) | nc; *(cast(int*)ptr + 4) = record.core.l_qseq; *(cast(int*)ptr + 5) = record.core.mtid; *(cast(int*)ptr + 6) = record.core.mpos; *(cast(int*)ptr + 7) = record.core.isize; return BamRead(chunk); } } auto bamReads(CramSlice slice, IBamSamReader reader=null, AllocateFunc alloc=&chunkAllocator) { return CramSliceReader(slice, reader, alloc); } sambamba-0.6.7/cram/wrappers.d000066400000000000000000000274151320451002000162150ustar00rootroot00000000000000module cram.wrappers; import cram.htslib, cram.exception; import std.typecons, std.parallelism, std.range; debug import std.stdio; auto zeroChecked(alias func, T...)(string err_msg, auto ref T params) { int ret = func(params); if (!ret) throw new CramException(err_msg); } struct RcPtr(T, alias Free) { static struct Payload { debug { static size_t payload_counter; size_t payload_id; } T* ptr; this(T* ptr) { this.ptr = ptr; debug { payload_id = ++payload_counter; stderr.writeln("Init ", T.stringof, "* #", payload_id); } } ~this() { debug { stderr.writeln("Free ", T.stringof, "* #", payload_id); } Free(ptr); } alias ptr this; this(this) { assert(false); } void opAssign(Payload rhs) { assert(false); } } alias Data = RefCounted!(Payload, RefCountedAutoInitialize.no); Data data; alias data this; bool isNull() @property const { return !data.refCountedStore.isInitialized || data.ptr is null; } this(this) { static if (is(T == cram_slice)) { debug writeln("COPIED #", data.payload_id + 1); } } this(T* ptr) { data = Data(ptr); } } auto nullChecked(alias func, T...)(string err_msg, cram_fd* fd, auto ref T other_params) { auto ptr = func(fd, other_params); if (ptr !is null) return ptr; if (fd.err == 0) return null; throw new CramException(err_msg); } // instances of these types must be used within the same thread! void my_cram_close(cram_fd* fd) { import core.sys.posix.pthread; pthread_mutex_destroy(&fd.metrics_lock); pthread_mutex_destroy(&fd.ref_lock); pthread_mutex_destroy(&fd.bam_list_lock); cram_close(fd); } alias RcCramFd = RcPtr!(cram_fd, my_cram_close); alias CramFd = RcCramFd; CramFd openCram(string filename) { import std.string : toStringz; auto fd = cram_open(toStringz(filename), "rb"); if (fd == null) throw new CramException("Can't open file " ~ filename); cram_set_option(fd, cram_option.CRAM_OPT_DECODE_MD); // initialize locks, but we will use the pool from D standard library // instead of the htslib implementation import core.sys.posix.pthread; pthread_mutex_init(&fd.metrics_lock, null); pthread_mutex_init(&fd.ref_lock, null); pthread_mutex_init(&fd.bam_list_lock, null); fd.shared_ref = 1; fd.own_pool = 0; fd.pool = null; return CramFd(fd); } enum CramFilterResult { skip, // skip over the object pass, // the filter doesn't reject the object stop // skip, and further iteration won't give any results } alias RcCramContainer = RcPtr!(cram_container, cram_free_container); alias CramContainer = RcCramContainer; alias CramContainerFilter = CramFilterResult delegate(cram_container*); alias RcCramSlice = RcPtr!(cram_slice, cram_free_slice); alias UndecodedSliceFilter = CramFilterResult delegate(cram_slice*); struct CramSlice { CramFd fd; RcCramContainer container; RcCramSlice slice; alias slice this; bool is_decoded() @property const { return slice.crecs !is null; } } struct CramContainerRange { CramContainer front; bool empty; private CramFd _fd; private CramContainerFilter _filter; // the containers that doesn't pass the filter // will be simply skipped without any decoding this(CramFd fd, CramContainerFilter f) { _fd = fd; _filter = f; popFront(); } void popFront() { if (!front.isNull) { // skip remaining blocks of previous container while (front.curr_slice != front.max_slice) { ++front.curr_slice; auto next_slice = cram_read_slice(_fd); if (!next_slice) throw new CramException("Failure in cram_read_slice"); cram_free_slice(next_slice); } } auto err_msg = "Failed to read container header"; while (true) { // read container header debug writeln("cram_read_container"); auto ptr = nullChecked!cram_read_container(err_msg, _fd); if (ptr is null) { empty = true; break; } front = CramContainer(ptr); // apply the filter if (_filter is null) break; auto res = _filter(front); if (res == CramFilterResult.stop) { empty = true; break; } if (res == CramFilterResult.pass) { break; } if (-1 == cram_seek(_fd, front.length, 1)) throw new CramException("Failed to seek in CRAM file"); } if (empty) return; // read compression header block err_msg = "Failed to read compression header block"; front.comp_hdr_block = nullChecked!cram_read_block(err_msg, _fd); auto content_type = front.comp_hdr_block.content_type; if (content_type != cram_content_type.COMPRESSION_HEADER) throw new CramException(err_msg); err_msg = "Failed to decode compression header"; front.comp_hdr = cram_decode_compression_header(_fd, front.comp_hdr_block); if (front.comp_hdr is null) throw new CramException(err_msg); if (!(front.comp_hdr.AP_delta)) { // FIXME: in cram_decode.c, there's a mutex locked around this line, // but it looks unnecessary _fd.unsorted = 1; } } } auto containers(CramFd fd, CramContainerFilter f) { return CramContainerRange(fd, f); } class UndecodedSliceRange { private { CramFd _fd; ref CramContainer _container() @property { assert(!_containers.empty); return _containers.front; } CramContainerRange _containers; UndecodedSliceFilter _sf; } this(CramFd fd, CramContainerFilter cf, UndecodedSliceFilter sf) { _fd = fd; _sf = sf; _containers = containers(_fd, cf); if (_containers.empty) empty = true; popFront(); } CramSlice front; bool empty; // true == either front or empty is set private bool readNextSliceFromCurrentContainer() { assert(_container.curr_slice < _container.max_slice); _container.curr_slice++; auto err_msg = "Failure in cram_read_slice"; debug stderr.writeln("cram_read_slice (", _container.curr_slice, "/", _container.max_slice, ")"); auto ptr = cram_read_slice(_fd); if (ptr is null) { throw new CramException(err_msg); } assert(ptr.hdr !is null); ptr.last_apos = ptr.hdr.ref_seq_start; if (_sf is null) { setupFront(ptr); return true; } auto ret = _sf(ptr); if (ret == CramFilterResult.pass) { setupFront(ptr); return true; } if (ret == CramFilterResult.stop) { empty = true; return true; } return false; } private void setupFront(cram_slice* ptr) { front = CramSlice(_fd, _container, RcCramSlice(ptr)); } void popFront() { while (!empty) { while (_container.curr_slice < _container.max_slice) if (readNextSliceFromCurrentContainer()) return; // no slice (satisfying the filter) in the current container _containers.popFront(); if (_containers.empty) { empty = true; return; } } } } auto undecodedSlices(CramFd fd, CramContainerFilter cf, UndecodedSliceFilter sf=null) { return new UndecodedSliceRange(fd, cf, sf); } void decodeSlice(cram_fd* fd, cram_container* c, cram_slice* s) { auto err_msg = "Failure in cram_decode_slice"; // debug writeln("DECODING slice #", s.id + 1); int ret = cram_decode_slice(fd, c, s, fd.header); if (ret != 0) throw new CramException(err_msg); } void decodeSlice(CramSlice slice) { decodeSlice(slice.fd, slice.container, slice.data.ptr); } import bio.core.utils.roundbuf; struct CramSliceDecoder(R) if (isInputRange!R && is(ElementType!R == CramSlice)) { private { R _slices; TaskPool _pool; // FIXME: D arrays don't call element destructors when GC-d :( RoundBuf!CramSlice _input_queue; alias DecodeTask = Task!(decodeSlice, cram_fd*, cram_container*, cram_slice*)*; RoundBuf!DecodeTask _output_queue; void putNextSliceIntoQueue() { auto slice = _slices.front; _input_queue.put(slice); _slices.popFront(); // don't copy it between threads (ref. counting is not atomic) cram_fd* fd = slice.fd; cram_container* c = slice.container; cram_slice* s = slice; // debug writeln("PUT slice #", s.id + 1, " into queue"); version (serial) { decodeSlice(fd, c, s); } else { auto t = task!decodeSlice(fd, c, s); _pool.put(t); _output_queue.put(t); } } } this(R slices, TaskPool pool) { _slices = slices; _pool = pool; import std.algorithm : max; auto size = max(1, pool.size) * 2; _input_queue = RoundBuf!CramSlice(size); _output_queue = RoundBuf!DecodeTask(size); while (!_slices.empty && !_input_queue.full) putNextSliceIntoQueue(); popFront(); } CramSlice front; bool empty; void popFront() { if (_input_queue.empty) { empty = true; return; } version (serial) {} else { auto t = _output_queue.front; _output_queue.popFront(); t.yieldForce(); // now _input_queue.front is decoded } front = _input_queue.front; _input_queue.popFront(); // debug writeln("GET slice #", front.id + 1, " from queue"); if (!_slices.empty) putNextSliceIntoQueue(); } } auto decode(R)(R slices, std.parallelism.TaskPool pool) if(isInputRange!R && is(ElementType!R == CramSlice)) { return CramSliceDecoder!R(slices, pool); } auto slices(CramFd fd, CramContainerFilter cf, UndecodedSliceFilter sf, TaskPool pool) { auto undecoded_slices = new UndecodedSliceRange(fd, cf, sf); return undecoded_slices.decode(pool); } // workaround for LDC #795 - doesn't use short-circuit evaluation // TODO remove when 0.15.0 release comes out auto joiner2(RoR)(RoR r) if (isInputRange!RoR && isInputRange!(ElementType!RoR)) { static struct Result { private: RoR _items; ElementType!RoR _current; public: this(RoR r) { _items = r; _current = ElementType!RoR.init; while (!_items.empty) { _current = _items.front; if (!_current.empty) break; _items.popFront(); } } @property auto empty() { return _items.empty; } @property auto ref front() { assert(!empty); return _current.front; } void popFront() { assert(!_current.empty); _current.popFront(); if (_current.empty) { assert(!_items.empty); _items.popFront(); while (!_items.empty) { _current = _items.front; if (!_current.empty) break; _items.popFront(); } } } } return Result(r); } sambamba-0.6.7/cram/writer.d000066400000000000000000000062171320451002000156630ustar00rootroot00000000000000module cram.writer; import undead.stream; import std.string; import cram.htslib; import cram.exception; import bio.bam.read; import bio.bam.referenceinfo; import bio.sam.header; extern(C) { int fai_build(const(char)* fn); } string fastaIndexFilename(string fasta_fn) { import std.file : exists, isFile; auto fn = fasta_fn ~ ".fai"; if (fn.exists && fn.isFile) return fn; if (fai_build(toStringz(fasta_fn)) < 0) throw new Exception("Failed to build fasta index for " ~ fasta_fn); return fn; } final class CramWriter { private { cram_fd* _fd; string _fn; size_t _n_threads; string _reference_fn; string _fasta_idx_fn; } this(string filename, size_t n_threads) { _fn = filename; _n_threads = n_threads; _fd = cram_open(toStringz(filename), "wb"); if (_fd is null) throw new CramException("Can't open file for writing: " ~ filename); if (_n_threads > 1) cram_set_option(_fd, cram_option.CRAM_OPT_NTHREADS, _n_threads); } void setFastaFilename(string ref_fn) { _reference_fn = ref_fn ~ "\0"; _fasta_idx_fn = fastaIndexFilename(ref_fn); } void writeSamHeader(SamHeader header) { writeSamHeader(header.text); } void writeSamHeader(string header_text) { auto hdr = sam_hdr_parse_(header_text.ptr, cast(int)header_text.length); if (cram_set_header(_fd, hdr) < 0) throw new CramException("Failed to set SAM header"); if (_reference_fn !is null) cram_load_reference(_fd, _reference_fn.ptr); if (cram_write_SAM_hdr(_fd, _fd.header) < 0) throw new CramException("Failed to write SAM header"); } private void convertToBamSeq(R)(ref R read, bam_seq_t* bam_seq) { with (bam_seq.core) { tid = read.ref_id; pos = read.position; bin = cast(ushort)read.bin.id; qual = read.mapping_quality; l_qname = cast(ubyte)(read.name.length + 1); flag = read.flag; n_cigar = cast(ushort)read.cigar.length; l_qseq = cast(int)read.sequence.length; mtid = read.mate_ref_id; mpos = read.mate_position; isize = read.template_length; } bam_seq.l_data = bam_seq.m_data = cast(int)(read.raw_data.length - 32); bam_seq.data = read.raw_data.ptr + 32; } void writeRecord(R)(auto ref R read) if(isBamRead!R) { // somewhat messy code because of the decision // to use ending zero byte of qname for flags auto offset = 32 + read.name.length; ubyte old_byte = read.raw_data[offset]; read.raw_data[offset] = 0; scope(exit) read.raw_data[offset] = old_byte; bam_seq_t bam_seq; convertToBamSeq(read, &bam_seq); cram_put_bam_seq(_fd, &bam_seq); } void flush() { if (cram_flush(_fd) == -1) throw new CramException("Failed to flush block (" ~ _fn ~ ")"); } void finish() { if (cram_close(_fd) == -1) throw new CramException("Failed to close CRAM file: " ~ _fn); } } sambamba-0.6.7/deb/000077500000000000000000000000001320451002000140045ustar00rootroot00000000000000sambamba-0.6.7/deb/DEBIAN_CHANGELOG000066400000000000000000000105751320451002000162300ustar00rootroot00000000000000sambamba (0.4.7) unstable, urgency=low * use random subdirectories for temporary files in both sort and markdup utilities (allows to run multiple processes in parallel) * fixed bug in slice tool: when slicing last reference, unmapped reads were written too * fixed a bug in uncompressed BAM output * fixed a bug in intersecting with BED -- Artem Tarasov Fri, 20 Jun 2014 16:27:19 +0400 sambamba (0.4.6) unstable, urgency=low * fixed a bug in duplicate marking tool * fixed handling empty BAM files in sort tool -- Artem Tarasov Mon, 28 Apr 2014 23:47:20 +0400 sambamba (0.4.5) unstable, urgency=low * new -L option in the 'view' tool for intersecting a file with BED * preventing incidental file overwrites by checking output filename * slightly improved performance of converting to SAM/JSON -- Artem Tarasov Tue, 04 Feb 2014 10:57:21 +0400 sambamba (0.4.4) unstable, urgency=low * fixed sorting by name which didn't work in recent releases -- Artem Tarasov Wed, 18 Dec 2013 20:38:39 +0400 sambamba (0.4.3) unstable, urgency=low * improved sorting performance * bug fixed in the 'sort' tool * 'view' supports '*' region, '--unmapped' option removed -- Artem Tarasov Sun, 01 Dec 2013 17:11:42 +0400 sambamba (0.4.2) unstable; urgency=low * new option '--unmapped' in view tool (for indexed BAMs) * fixed an epic bug in region queries introduced in 0.4.1 -- Artem Tarasov Thu, 14 Nov 2013 02:45:58 +0400 sambamba (0.4.1) unstable, urgency=low * integrated new BAM reader (better scaling on multicore) * `index` tool now collects optional statistics (for idxstats) * fixed a bug with outputting SAM when requested JSON -- Artem Tarasov Wed, 30 Oct 2013 00:42:33 +0400 sambamba (0.4.0) unstable; urgency=low * added tool for marking duplicates, which uses Picard criteria -- Artem Tarasov Wed, 02 Oct 2013 23:07:14 +0400 sambamba (0.3.3) unstable; urgency=low * reduced buffer size for uncompressed BAM output so that it is less than pipe buffer size * added subsampling option to sambamba view -- Artem Tarasov Sat, 13 Jul 2013 16:27:25 +0400 sambamba (0.3.2) unstable; urgency=low * fixed bug in flagstat parameter parsing * consistent naming for number of threads in CLI -- Artem Tarasov Tue, 16 Apr 2013 09:23:35 +0400 sambamba (0.3.1) unstable; urgency=low * numerous bugfixes * now requires at least v2.061 of D compiler -- Artem Tarasov Sun, 11 Mar 2013 01:03:17 +0400 sambamba (0.3.0) unstable; urgency=low * new command line tool -- sambamba-slice * several minor bugfixes * compiles with LDC2 -- Artem Tarasov Wed, 12 Dec 2012 22:57:12 +0400 sambamba (0.2.9) unstable; urgency=low * random access speedup -- Artem Tarasov Sun, 08 Oct 2012 01:39:26 +0400 sambamba (0.2.8) unstable; urgency=low * fix segfault on opening unexistent file * fix random-access for files >2GB -- Artem Tarasov Wed, 26 Sep 2012 17:17:03 +0400 sambamba (0.2.7) unstable; urgency=low * fix a stupid bug related to determining end of file * add support for BAM files of size > 2GB (workaround for Phobos bug) -- Artem Tarasov Sun, 16 Sep 2012 14:45:09 +0400 sambamba (0.2.6) unstable; urgency=low * add output in MessagePack format to sambamba-view -- Artem Tarasov Sun, 19 Aug 2012 19:42:48 +0400 sambamba (0.2.5) unstable; urgency=low * fix bug in indexing (worked correctly for < 73Mbp long references) -- Artem Tarasov Sat, 18 Aug 2012 20:02:12 +0400 sambamba (0.2.4) unstable; urgency=low * fix bug about outputting header to a file in SAM/JSON output * consistent use of stderr for error messages and usage information -- Artem Tarasov Tue, 14 Aug 2012 21:31:52 +0400 sambamba (0.2.3) unstable; urgency=low * fix bug in BAM output * support for non-seekable streams (pipes, stdin/stdout) -- Artem Tarasov Sat, 11 Aug 2012 16:20:44 +0400 sambamba (0.2.1) unstable; urgency=low * Initial release -- Artem Tarasov Tue, 7 Aug 2012 17:51:11 +0400 sambamba-0.6.7/deb/makepackage.rb000077500000000000000000000110731320451002000165670ustar00rootroot00000000000000#!/usr/bin/env ruby require 'fileutils' def print_usage puts 'usage: ./makepackage.rb ' puts puts ' makes a debian package for specified architecture' end if ARGV.length.zero? print_usage exit end $debdir = Dir.pwd ################################################################################ def get_current_tag `git describe --tags \`git rev-list --tags --max-count=1\``.strip end def get_current_version if $current_version.nil? # tag is expected to be of form vX.Y.Z tag = get_current_tag $current_version = tag[1 .. -1] end $current_version end def generate_copyright_file gpl2_notice =<' f.puts 'Source: https://github.com/lomereiter/sambamba' f.puts f.puts 'Files: *' f.puts 'Copyright: 2012-2014 Artem Tarasov' f.puts 'License: GPL-2+' f.puts gpl2_notice end end def copy_changelog_to_usr_share_doc_sambamba FileUtils.copy '../DEBIAN_CHANGELOG', 'usr/share/doc/sambamba/changelog' end def gzip_changelog `gzip --best usr/share/doc/sambamba/changelog` end def make_sambamba Dir.chdir '../..' if $arch == 'i386' then `make sambamba-ldmd2-32` elsif $arch == 'amd64' then `make sambamba-ldmd2-64` else puts 'architecture must be one of i386, amd64' exit 1 end Dir.chdir $debdir Dir.chdir $rootdir end def copy_sambamba_to_usr_bin FileUtils.copy '../../build/sambamba', 'usr/bin' end def strip_sambamba_executable `strip usr/bin/sambamba` end def copy_manpages_to_usr_share_man_man1 Dir.glob('../../man/*.1').each do |fn| FileUtils.copy fn, 'usr/share/man/man1' end end def gzip_manpages `gzip --best usr/share/man/man1/*.1` end def get_dependencies # TODO: get from dpkg-shlibdeps "Depends: libc6 (>= 2.3.2), libgcc1 (>= 1:4.1.1)" end def compute_installed_size sz = `du -bs .`.to_i puts "package size: #{sz}" (sz / 1024.0).ceil * 1024 end def generate_control_file text = < Description: tool for working with data in SAM/BAM file formats It provides a number of utilities (including sort, merge, and index) all of which use parallel compression and decompression of BAM files, wisely using resources of modern multi-core machines. CONTROL File.open('DEBIAN/control', 'w+') do |f| f.puts text end end def add_lintian_override_concerning_embedded_zlib File.open('usr/share/lintian/overrides/sambamba', 'w+') do |f| f.puts '# Phobos links with Zlib statically' f.puts 'sambamba binary: embedded-zlib' end end def build_debian_package Dir.chdir '..' `fakeroot dpkg-deb --build #{$rootdir}` end ################################################################################ $arch = ARGV[0] $rootdir = "sambamba-#{get_current_version}_#{$arch}" FileUtils.remove_entry_secure $rootdir if File.exists? $rootdir Dir.mkdir $rootdir Dir.chdir $rootdir Dir.mkdir 'DEBIAN' FileUtils.mkdir_p 'usr/bin' FileUtils.mkdir_p 'usr/share/doc/sambamba' FileUtils.mkdir_p 'usr/share/lintian/overrides' FileUtils.mkdir_p 'usr/share/man/man1' # stay in rootdir generate_copyright_file copy_changelog_to_usr_share_doc_sambamba gzip_changelog make_sambamba copy_sambamba_to_usr_bin strip_sambamba_executable copy_manpages_to_usr_share_man_man1 gzip_manpages generate_control_file add_lintian_override_concerning_embedded_zlib build_debian_package sambamba-0.6.7/etc/000077500000000000000000000000001320451002000140255ustar00rootroot00000000000000sambamba-0.6.7/etc/bash_completion.d/000077500000000000000000000000001320451002000174155ustar00rootroot00000000000000sambamba-0.6.7/etc/bash_completion.d/sambamba000066400000000000000000000060001320451002000210770ustar00rootroot00000000000000_sambamba() { local cur=${COMP_WORDS[COMP_CWORD]} local subcommand=${COMP_WORDS[1]} if [[ $COMP_CWORD == 1 ]]; then COMPREPLY=( $(compgen -W "view index merge sort \ flagstat slice markdup" -- $cur) ) compopt +o nospace elif [[ $cur == -* ]]; then case "$subcommand" in view) COMPREPLY=( $(compgen -W "-F -f -h -H -I -c -S -p \ -l -o -t -s --filter= --header \ --format= --with-header --count \ --reference-info --show-progress \ --sam-input --output-filename= \ --nthreads= --compression-level= \ --subsample= --subsampling-seed=" -- $cur) ) ;; index) COMPREPLY=( $(compgen -W "-p -t --nthreads= --show-progress" -- $cur) ) ;; merge) COMPREPLY=( $(compgen -W "-p -t --nthreads= -l -H --header \ --compression-level=" -- $cur) ) ;; sort) COMPREPLY=( $(compgen -W "-m --memory-limit= --tmpdir= -o --out \ -n --compression-level= -u -p -t \ --uncompressed-chunks --show-progress \ --nthreads=" -- $cur) ) ;; flagstat) COMPREPLY=( $(compgen -W "-t -p --nthreads= --show-progress" -- $cur) ) ;; slice) COMPREPLY=( $(compgen -W "-o --output-filename=" -- $cur) ) ;; markdup) COMPREPLY=( $(compgen -W "-r -t -l -p --tmpdir= --remove-duplicates \ --nthreads= --compression-level= \ --show-progress" -- $cur) ) ;; esac if [[ ${#COMPREPLY[@]} == 1 && ${COMPREPLY[0]} != "--"*"=" ]] ; then compopt +o nospace fi elif [[ ${COMP_WORDS[COMP_CWORD - 2]} == "--format" || ${COMP_WORDS[COMP_CWORD - 1]} == "-f" ]]; then COMPREPLY=( $(compgen -W "sam bam json msgpack" -- $cur) ) compopt +o nospace elif [[ $subcommand == "view" || $subcommand == "slice" ]]; then for word in ${COMP_WORDS[@]}; do if [[ $word == *.bam && $word != "" ]]; then eval abspath=$word COMPREPLY=( $(sambamba view -H -t4 $abspath | grep @SQ | \ cut -f 2 | cut -f2 -d: 2>/dev/null | grep "^$cur") ) break fi done if [[ ${#COMPREPLY[@]} == 0 ]]; then compopt +o nospace fi compopt -o default compopt -o filenames else compopt +o nospace compopt -o default fi } complete -o nospace -F _sambamba sambamba # vim: set syntax=sh : sambamba-0.6.7/gen_ldc_version_info.py000077500000000000000000000015201320451002000200000ustar00rootroot00000000000000#!/usr/bin/env python2 from __future__ import print_function import re, sys, subprocess if len(sys.argv) < 2: print("Usage: {0} ".format(sys.argv[0])) sys.exit(1) ldc = sys.argv[1].replace("ldmd2", "ldc2") ldc_output = subprocess.Popen([ldc, '-version'], stdout=subprocess.PIPE).communicate()[0] version_re = r"""^.+\((?P[^\)]+)\):\n\s*based on DMD (?P\S+) and LLVM (?P\S+)\n(?:\s*built with (?P.*)\n)?""" match = re.match(version_re, ldc_output, re.MULTILINE) if not match: sys.exit("ERROR: failed to generated LDC version information") print("module utils.ldc_version_info_;") for component, version in match.groupdict().items(): if version is None: version = "version not available" print("immutable {0}_VERSION_STRING = \"{1}\";".format(component, version)) sambamba-0.6.7/htslib/000077500000000000000000000000001320451002000145375ustar00rootroot00000000000000sambamba-0.6.7/lz4/000077500000000000000000000000001320451002000137635ustar00rootroot00000000000000sambamba-0.6.7/main.d000066400000000000000000000063661320451002000143560ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2016 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ import sambamba.view; import sambamba.index; import sambamba.merge; import sambamba.sort; import sambamba.flagstat; import sambamba.slice; import sambamba.markdup; import sambamba.depth; import sambamba.pileup; import sambamba.fixbins; import sambamba.utils.common.ldc_gc_workaround; import utils.strip_bcf_header; import utils.lz4; import utils.version_ : VERSION; import utils.ldc_version_info_ : LDC_VERSION_STRING, DMD_VERSION_STRING, LLVM_VERSION_STRING, BOOTSTRAP_VERSION_STRING; import std.stdio; void printUsage() { stderr.writeln("sambamba " ~ VERSION); stderr.writeln(); stderr.writeln("Usage: sambamba [command] [args...]"); stderr.writeln(); stderr.writeln(" Available commands: 'view', 'index', 'merge', 'sort',"); stderr.writeln(" 'flagstat', 'slice', 'markdup', 'depth', 'mpileup'"); stderr.writeln(" To get help on a particular command, just call it without args."); stderr.writeln(); stderr.writeln("Leave bug reports and feature requests at"); stderr.writeln("https://github.com/lomereiter/sambamba/issues"); stderr.writeln(); } void printVersion() { stderr.writeln("sambamba " ~ VERSION); stderr.writeln(); stderr.writeln("This version was built with:"); stderr.writeln(" LDC " ~ LDC_VERSION_STRING); stderr.writeln(" using DMD " ~ DMD_VERSION_STRING); stderr.writeln(" using LLVM " ~ LLVM_VERSION_STRING); stderr.writeln(" bootstrapped with " ~ BOOTSTRAP_VERSION_STRING); stderr.writeln(); } int main(string[] args) { if (args.length == 1) { printUsage(); return 1; } auto _args = args[0] ~ args[2 .. $]; switch (args[1]) { case "view": return view_main(_args); case "index": return index_main(_args); case "merge": return merge_main(_args); case "sort": return sort_main(_args); case "flagstat": return flagstat_main(_args); case "slice": return slice_main(_args); case "markdup": return markdup_main(_args); case "depth": return depth_main(_args); case "mpileup": return pileup_main(_args); // hidden commands case "fixbins": return fixbins_main(_args); case "strip_bcf_header": return strip_bcf_header_main(_args); case "lz4compress": return lz4compress_main(); case "--version": printVersion(); return 0; default: printUsage(); return 1; } } sambamba-0.6.7/man/000077500000000000000000000000001320451002000140255ustar00rootroot00000000000000sambamba-0.6.7/man/.gitignore000066400000000000000000000000071320451002000160120ustar00rootroot00000000000000*.html sambamba-0.6.7/man/README.md000066400000000000000000000014461320451002000153110ustar00rootroot00000000000000# Guide for developers ## Ronn All documentation is written in Markdown format with `.ronn` extension. [Ronn](https://rtomayko.github.io/ronn/) is a generator that can produce both man pages and HTML snippets. You can install it as a Ruby gem or through your package manager (`ruby-ronn` on Ubuntu). During editing, it's very helpful to check that output looks as intended; this is done by running `ronn -m ` which will launch the man pager. ## Generated files * Man pages, generated by `ronn -r`, currently go here, alongside `.ronn` files. * HTML snippets are generated by `ronn -f` and go into `gh-pages` branch. The branch should be cloned to a separate directory on your machine, and the destination for the snippets (`.html_fragment` extension) is the `_includes` directory. sambamba-0.6.7/man/sambamba-flagstat.1000066400000000000000000000026061320451002000174610ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA\-FLAGSTAT" "1" "August 2014" "" "" . .SH "NAME" \fBsambamba\-flagstat\fR \- getting flag statistics from BAM file . .SH "SYNOPSIS" \fBsambamba flagstat\fR \fIOPTIONS\fR . .SH "DESCRIPTION" Outputs some statistics drawn from read flags\. . .P First line contains numbers of QC\-passed and QC\-failed reads\. Then come pairs of numbers, the former for QC\-passed reads, the latter for QC\-failed ones: . .IP "\(bu" 4 duplicates . .IP "\(bu" 4 mapped reads (plus percentage relative to the numbers from the first line) . .IP "\(bu" 4 reads with \'is_paired\' flag set . .IP "\(bu" 4 paired reads which are first mates . .IP "\(bu" 4 paired reads which are second mates . .IP "\(bu" 4 paired reads with \'proper_pair\' flag set (plus percentage relative to the numbers of QC\-passed/failed reads with \'is_paired\' flag set) . .IP "\(bu" 4 paired reads where both mates are mapped . .IP "\(bu" 4 paired reads where read itself is unmapped but mate is mapped . .IP "\(bu" 4 paired reads where mate is mapped to a different chromosome . .IP "\(bu" 4 the same as previous but mapping quality is not less than 5 . .IP "" 0 . .SH "OPTIONS" . .TP \fB\-t\fR, \fB\-\-nthreads\fR=\fINTHREADS\fR Specify number of threads to use for BAM decompression . .TP \fB\-p\fR, \fB\-\-show\-progress\fR Show progressbar in STDERR sambamba-0.6.7/man/sambamba-flagstat.1.ronn000066400000000000000000000021621320451002000204310ustar00rootroot00000000000000sambamba-flagstat(1) -- getting flag statistics from BAM file ============================================================= ## SYNOPSIS `sambamba flagstat` [OPTIONS] ## DESCRIPTION Outputs some statistics drawn from read flags. First line contains numbers of QC-passed and QC-failed reads. Then come pairs of numbers, the former for QC-passed reads, the latter for QC-failed ones: * duplicates * mapped reads (plus percentage relative to the numbers from the first line) * reads with 'is_paired' flag set * paired reads which are first mates * paired reads which are second mates * paired reads with 'proper_pair' flag set (plus percentage relative to the numbers of QC-passed/failed reads with 'is_paired' flag set) * paired reads where both mates are mapped * paired reads where read itself is unmapped but mate is mapped * paired reads where mate is mapped to a different chromosome * the same as previous but mapping quality is not less than 5 ## OPTIONS * `-t`, `--nthreads`=: Specify number of threads to use for BAM decompression * `-p`, `--show-progress`: Show progressbar in STDERR sambamba-0.6.7/man/sambamba-index.1000066400000000000000000000026041320451002000167610ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA\-INDEX" "1" "2016-10-24" "" "" . .SH "NAME" \fBsambamba\-index\fR \- tool for building standard index files for BAM data . .SH "SYNOPSIS" \fBsambamba index\fR [\fB\-p\fR|\fB\-\-show\-progress\fR] [\fB\-t\fR|\fB\-\-nthreads\fR=NTHREADS] [] . .SH "DESCRIPTION" \fBsambamba index\fR builds an index for a sorted by coordinate BAM file\. This step is required for effective region querying in most tools for working with BAM data\. . .P An index is by default written to the file with the same filename except \fB\.bai\fR extension added to the end\. The user can, however, override this default by providing desired output filename explicitly as an optional command\-line argument\. . .SH "OPTIONS" . .TP \fB\-p\fR, \fB\-\-show\-progress\fR Show a wget\-like progressbar in STDERR\. . .TP \fB\-t\fR, \fB\-\-nthreads\fR=\fINTHREADS\fR Number of threads to use\. . .SH "EXAMPLES" Build index file example\.bam\.bai given a sorted BAM file example\.bam: . .P $ sambamba index example\.bam . .P Build index file at custom location showing progress: . .P $ sambamba index \-\-show\-progress example\.bam /tmp/example\.bam\.bai . .SH "SEE ALSO" For more information on the original samtools INDEX behaviour, check out the samtools documentation \fIhttp://samtools\.sourceforge\.net/samtools\.shtml\fR sambamba-0.6.7/man/sambamba-index.1.ronn000066400000000000000000000023251320451002000177340ustar00rootroot00000000000000sambamba-index(1) -- tool for building standard index files for BAM data ======================================================================== ## SYNOPSIS `sambamba index` [`-p`|`--show-progress`] [`-t`|`--nthreads`=NTHREADS] [] ## DESCRIPTION `sambamba index` builds an index for a sorted by coordinate BAM file. This step is required for effective region querying in most tools for working with BAM data. An index is by default written to the file with the same filename except `.bai` extension added to the end. The user can, however, override this default by providing desired output filename explicitly as an optional command-line argument. ## OPTIONS * `-p`, `--show-progress`: Show a wget-like progressbar in STDERR. * `-t`, `--nthreads`=: Number of threads to use. ## EXAMPLES Build index file example.bam.bai given a sorted BAM file example.bam: $ sambamba index example.bam Build index file at custom location showing progress: $ sambamba index --show-progress example.bam /tmp/example.bam.bai ## SEE ALSO For more information on the original samtools INDEX behaviour, check out the [samtools documentation](http://samtools.sourceforge.net/samtools.shtml) sambamba-0.6.7/man/sambamba-markdup.1000066400000000000000000000037721320451002000173240ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA\-MARKDUP" "1" "February 2015" "" "" . .SH "NAME" \fBsambamba\-markdup\fR \- finding duplicate reads in BAM file . .SH "SYNOPSIS" \fBsambamba markdup\fR \fIOPTIONS\fR . .SH "DESCRIPTION" Marks (by default) or removes duplicate reads\. For determining whether a read is a duplicate or not, the same `sum of base qualities\' method is used as in Picard \fIhttps://broadinstitute\.github\.io/picard/picard\-metric\-definitions\.html\fR\. . .SH "OPTIONS" . .TP \fB\-r\fR, \fB\-\-remove\-duplicates\fR remove duplicates instead of just marking them . .TP \fB\-t\fR, \fB\-\-nthreads\fR=\fINTHREADS\fR number of threads to use . .TP \fB\-l\fR, \fB\-\-compression\-level\fR=\fIN\fR specify compression level of the resulting file (from 0 to 9)"); . .TP \fB\-p\fR, \fB\-\-show\-progress\fR show progressbar in STDERR . .TP \fB\-\-tmpdir\fR=\fITMPDIR\fR specify directory for temporary files; default is \fB/tmp\fR . .TP \fB\-\-hash\-table\-size\fR=\fIHASHTABLESIZE\fR size of hash table for finding read pairs (default is 262144 reads); will be rounded down to the nearest power of two; should be \fB> (average coverage) * (insert size)\fR for good performance . .TP \fB\-\-overflow\-list\-size\fR=\fIOVERFLOWLISTSIZE\fR size of the overflow list where reads, thrown away from the hash table, get a second chance to meet their pairs (default is 200000 reads); increasing the size reduces the number of temporary files created . .TP \fB\-\-io\-buffer\-size\fR=\fIBUFFERSIZE\fR controls sizes of two buffers of BUFFERSIZE \fImegabytes\fR each, used for reading and writing BAM during the second pass (default is 128) . .SH "SEE ALSO" Picard \fIhttps://broadinstitute\.github\.io/picard/picard\-metric\-definitions\.html\fR metric definitions for removing duplicates\. . .SH "BUGS" External sort is not implemented\. Thus, memory consumption grows by 2Gb per each 100M reads\. Check that you have enough RAM before running the tool\. sambamba-0.6.7/man/sambamba-markdup.1.ronn000066400000000000000000000035061320451002000202720ustar00rootroot00000000000000sambamba-markdup(1) -- finding duplicate reads in BAM file ============================================================= ## SYNOPSIS `sambamba markdup` [OPTIONS] ## DESCRIPTION Marks (by default) or removes duplicate reads. For determining whether a read is a duplicate or not, the same `sum of base qualities' method is used as in [Picard](https://broadinstitute.github.io/picard/picard-metric-definitions.html). ## OPTIONS * `-r`, `--remove-duplicates`: remove duplicates instead of just marking them * `-t`, `--nthreads`=: number of threads to use * `-l`, `--compression-level`=: specify compression level of the resulting file (from 0 to 9)"); * `-p`, `--show-progress`: show progressbar in STDERR * `--tmpdir`=: specify directory for temporary files; default is `/tmp` * `--hash-table-size`=: size of hash table for finding read pairs (default is 262144 reads); will be rounded down to the nearest power of two; should be `> (average coverage) * (insert size)` for good performance * `--overflow-list-size`=: size of the overflow list where reads, thrown away from the hash table, get a second chance to meet their pairs (default is 200000 reads); increasing the size reduces the number of temporary files created * `--io-buffer-size`=: controls sizes of two buffers of BUFFERSIZE *megabytes* each, used for reading and writing BAM during the second pass (default is 128) ## SEE ALSO [Picard](https://broadinstitute.github.io/picard/picard-metric-definitions.html) metric definitions for removing duplicates. ## BUGS External sort is not implemented. Thus, memory consumption grows by 2Gb per each 100M reads. Check that you have enough RAM before running the tool. sambamba-0.6.7/man/sambamba-merge.1000066400000000000000000000023031320451002000167450ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA\-MERGE" "1" "February 2015" "" "" . .SH "NAME" \fBsambamba\-merge\fR \- tool for merging several BAM files into one . .SH "SYNOPSIS" \fBsambamba merge\fR \fIOPTIONS\fR [\.\.\.] . .SH "DESCRIPTION" \fBsambamba merge\fR is used for merging several sorted BAM files into one\. The sorting order of all the files must be the same, and it is maintained in the output file\. . .P SAM headers are merged automatically like in Picard merging tool\. . .SH "OPTIONS" . .TP \fB\-t\fR, \fB\-\-nthreads\fR=\fINTHREADS\fR Specify number of threads to use for compression/decompression tasks\. . .TP \fB\-l\fR, \fB\-\-compression\-level\fR=\fICOMPRESSION_LEVEL\fR Specify compression level of output file as a number from 0 to 9 . .TP \fB\-H\fR, \fB\-\-header\fR Output only merged header to stdout in SAM format (e\.g\. for debugging purposes)\. Other options are ignored\. . .TP \fB\-p\fR, \fB\-\-show\-progress\fR Show progressbar in STDERR\. For more information on the original samtools MERGE behaviour, check out the [samtools documentation](http://samtools\.sourceforge\.net/samtools\.shtml sambamba-0.6.7/man/sambamba-merge.1.ronn000066400000000000000000000020641320451002000177240ustar00rootroot00000000000000sambamba-merge(1) -- tool for merging several BAM files into one ================================================================ ## SYNOPSIS `sambamba merge` [OPTIONS] [...] ## DESCRIPTION `sambamba merge` is used for merging several sorted BAM files into one. The sorting order of all the files must be the same, and it is maintained in the output file. SAM headers are merged automatically like in Picard merging tool. ## OPTIONS * `-t`, `--nthreads`=: Specify number of threads to use for compression/decompression tasks. * `-l`, `--compression-level`=: Specify compression level of output file as a number from 0 to 9 * `-H`, `--header`: Output only merged header to stdout in SAM format (e.g. for debugging purposes). Other options are ignored. * `-p`, `--show-progress`: Show progressbar in STDERR. # SEE ALSO For more information on the original samtools MERGE behaviour, check out the [samtools documentation](http://samtools.sourceforge.net/samtools.shtml sambamba-0.6.7/man/sambamba-pileup.1000066400000000000000000000035411320451002000171510ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA\-MILEUP" "1" "January 2015" "" "" . .SH "NAME" \fBsambamba\-mileup\fR \- make a pileup . .SH "SYNOPSIS" \fBsambamba mpileup\fR \fIOPTIONS\fR [\.\.\.] [\-\-samtools \fIsamtools mpileup args\fR] [\-\-bcftools \fIbcftools args\fR] . .SH "DESCRIPTION" Parallel version of samtools mpileup in map\-reduce fashion\. Sambamba splits input BAM files into chunks and feeds them to samtools mpileup and, optionally, bcftools in parallel\. The chunks are slightly overlapping so that variant calling should not be impacted by these manipulations\. The obtained results from the multiple processes are combined as ordered output\. Named pipes are created in TMPDIR\. . .P Sambamba mpileup relies on external tools and acts as a multi\-core implementation of samtools + bcftools\. Therefore, the following tools should be present in the PATH: . .IP "" 4 . .nf * samtools * bcftools (when used) . .fi . .IP "" 0 . .IP "\(bu" 4 If \-\-samtools is skipped, samtools mpileup is called with default arguments \'samtools\' . .IP "\(bu" 4 If \-\-bcftools is used without parameters, samtools is called with switch \'\-gu\' and bcftools is called as \'bcftools view \-Ov\' . .IP "\(bu" 4 If \-\-bcftools is skipped, bcftools is not called . .IP "" 0 . .SH "OPTIONS" . .IP "\(bu" 4 \fB\-F\fR, \fB\-\-filter=FILTER\fR set custom filter for alignments . .IP "\(bu" 4 \fB\-L\fR, \fB\-\-regions=FILENAME\fR provide BED file with regions (no need to duplicate it in samtools args); all input files must be indexed . .IP "\(bu" 4 \fB\-o\fR, \fB\-\-output\-filename=\fR specify output filename . .IP "\(bu" 4 \fB\-t\fR, \fB\-\-nthreads=NTHREADS\fR maximum number of threads to use . .IP "\(bu" 4 \fB\-b\fR, \fB\-\-buffer\-size=4_000_000\fR chunk size (in bytes) . .IP "" 0 . .SH "BUGS" sambamba-0.6.7/man/sambamba-pileup.1.ronn000066400000000000000000000031531320451002000201230ustar00rootroot00000000000000sambamba-mileup(1) -- make a pileup ============================================================= ## SYNOPSIS `sambamba mpileup` [OPTIONS] [...] [--samtools ] [--bcftools ] ## DESCRIPTION Parallel version of samtools mpileup in map-reduce fashion. Sambamba splits input BAM files into chunks and feeds them to samtools mpileup and, optionally, bcftools in parallel. The chunks are slightly overlapping so that variant calling should not be impacted by these manipulations. The obtained results from the multiple processes are combined as ordered output. Named pipes are created in TMPDIR. Sambamba mpileup relies on external tools and acts as a multi-core implementation of samtools + bcftools. Therefore, the following tools should be present in the PATH: * samtools * bcftools (when used) * If --samtools is skipped, samtools mpileup is called with default arguments 'samtools' * If --bcftools is used without parameters, samtools is called with switch '-gu' and bcftools is called as 'bcftools view -Ov' * If --bcftools is skipped, bcftools is not called ## OPTIONS * `-F`, `--filter=FILTER` set custom filter for alignments * `-L`, `--regions=FILENAME` provide BED file with regions (no need to duplicate it in samtools args); all input files must be indexed * `-o`, `--output-filename=` specify output filename * `-t`, `--nthreads=NTHREADS` maximum number of threads to use * `-b`, `--buffer-size=4_000_000` chunk size (in bytes) ## BUGS sambamba-0.6.7/man/sambamba-slice.1000066400000000000000000000020321320451002000167440ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA\-SLICE" "1" "August 2014" "" "" . .SH "NAME" \fBsambamba\-slice\fR \- copying a slice of BAM file . .SH "SYNOPSIS" \fBsambamba slice\fR \fIOPTIONS\fR \fIregion\fR . .SH "DESCRIPTION" Outputs reads overlapping specified region into new BAM file\. (Default destination is STDOUT\.) Input file must be coordinate\-sorted and indexed\. . .P While the same can be done with \fIsambamba\-view\fR, that would be much slower due to a lot of compression/decompression work\. Instead of naive method, \fIsambamba\-slice\fR leverages knowledge about structure of BAM file and recompresses only a few BGZF blocks at the beginning and the end of the region, while the BGZF blocks in the middle are copied as is\. As such, this tool doesn\'t offer any options related to number of threads or compression level \- most of the time is spent on I/O operations\. . .SH "OPTIONS" . .TP \fB\-o\fR, \fB\-\-output\-filename\fR=\fIOUTPUTFILE\fR Name of output file sambamba-0.6.7/man/sambamba-slice.1.ronn000066400000000000000000000016201320451002000177210ustar00rootroot00000000000000sambamba-slice(1) -- copying a slice of BAM file ============================================================= ## SYNOPSIS `sambamba slice` [OPTIONS] ## DESCRIPTION Outputs reads overlapping specified region into new BAM file. (Default destination is STDOUT.) Input file must be coordinate-sorted and indexed. While the same can be done with *sambamba-view*, that would be much slower due to a lot of compression/decompression work. Instead of naive method, *sambamba-slice* leverages knowledge about structure of BAM file and recompresses only a few BGZF blocks at the beginning and the end of the region, while the BGZF blocks in the middle are copied as is. As such, this tool doesn't offer any options related to number of threads or compression level - most of the time is spent on I/O operations. ## OPTIONS * `-o`, `--output-filename`=: Name of output file sambamba-0.6.7/man/sambamba-sort.1000066400000000000000000000056741320451002000166530ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA\-SORT" "1" "February 2015" "" "" . .SH "NAME" \fBsambamba\-sort\fR \- tool for sorting BAM files . .SH "SYNOPSIS" \fBsambamba sort\fR \fIOPTIONS\fR . .SH "DESCRIPTION" BAM files can have either \'coordinate\' sort order, or \'qname\' one\. . .P The first one means to sort the file by (integer) reference ID, and for each reference sort corresponding reads by start coordinate\. . .P \'qname\' sorting order is when reads are sorted lexicographically by their names\. . .P \fBsambamba sort\fR does an external \fBstable\fR\-type sort on input file\. That means it reads the source BAM file in chunks that fit into memory, sorts them and writes to a temporary directory, and then merges them\. After merging temporary files are removed automatically\. . .P Both sorting orders are supported\. Default one is \'coordinate\' because this is the one used for building index later\. In order to switch to \'qname\' sorting order, use \fB\-n\fR|\fB\-\-sort\-by\-name\fR flag\. . .SH "OPTIONS" . .TP \fB\-m\fR, \fB\-\-memory\-limit\fR=\fILIMIT\fR Sets an upper bound for used memory\. However, this is very approximate\. Default memory limit is 512MiB\. Increasing it will allow to make chunk sizes larger and also reduce amount of I/O seeks thus improving the overall performance\. . .IP \fILIMIT\fR must be a number with an optional suffix specyfying unit of measumerent\. The following endings are recognized: K, KiB, KB, M, MiB, MB, G, GiB, GB\. . .TP \fB\-\-tmpdir\fR=\fITMPDIR\fR Use \fITMPDIR\fR to output sorted chunks\. Default behaviour is to use system temporary directory\. . .TP \fB\-o\fR, \fB\-\-out\fR=\fIOUTPUTFILE\fR Output file name\. If not provided, the result is written to a file with \.sorted\.bam extension\. . .TP \fB\-n\fR, \fB\-\-sort\-by\-name\fR Sort by read name instead of doing coordinate sort\. . .TP \fB\-l\fR, \fB\-\-compression\-level\fR=\fICOMPRESSION_LEVEL\fR Compression level to use for \fIsorted\fR BAM, from 0 (known as uncompressed BAM in samtools) to 9\. . .TP \fB\-u\fR, \fB\-\-uncompressed\-chunks\fR Write sorted chunks as uncompressed BAM\. Default behaviour is to write them with compression level 1, because that reduces time spent on I/O, but in some cases using this option can give you a better speed\. Note, however, that the disk space needed for sorting will typically be 3\-4 times more than without enabling this option\. . .TP \fB\-p\fR, \fB\-\-show\-progress\fR Show wget\-like progressbar in STDERR (in fact, two of them one after another, first one for sorting, and then another one for merging)\. . .TP \fB\-t\fR, \fB\-\-nthreads\fR=\fINTHREADS\fR Number of threads to use\. . .SH "SEE ALSO" For more information on the original samtools SORT behaviour, check out the samtools documentation \fIhttp://samtools\.sourceforge\.net/samtools\.shtml\fR\. . .SH "BUGS" At the moment, the memory is used quite ineffectively for really large files\. sambamba-0.6.7/man/sambamba-sort.1.ronn000066400000000000000000000052751320451002000176230ustar00rootroot00000000000000sambamba-sort(1) -- tool for sorting BAM files ============================================== ## SYNOPSIS `sambamba sort` [OPTIONS] ## DESCRIPTION BAM files can have either 'coordinate' sort order, or 'qname' one. The first one means to sort the file by (integer) reference ID, and for each reference sort corresponding reads by start coordinate. 'qname' sorting order is when reads are sorted lexicographically by their names. `sambamba sort` does an external `stable`-type sort on input file. That means it reads the source BAM file in chunks that fit into memory, sorts them and writes to a temporary directory, and then merges them. After merging temporary files are removed automatically. Both sorting orders are supported. Default one is 'coordinate' because this is the one used for building index later. In order to switch to 'qname' sorting order, use `-n`|`--sort-by-name` flag. ## OPTIONS * `-m`, `--memory-limit`=: Sets an upper bound for used memory. However, this is very approximate. Default memory limit is 512MiB. Increasing it will allow to make chunk sizes larger and also reduce amount of I/O seeks thus improving the overall performance. must be a number with an optional suffix specyfying unit of measumerent. The following endings are recognized: K, KiB, KB, M, MiB, MB, G, GiB, GB. * `--tmpdir`=: Use to output sorted chunks. Default behaviour is to use system temporary directory. * `-o`, `--out`=: Output file name. If not provided, the result is written to a file with .sorted.bam extension. * `-n`, `--sort-by-name`: Sort by read name instead of doing coordinate sort. * `-l`, `--compression-level`=: Compression level to use for *sorted* BAM, from 0 (known as uncompressed BAM in samtools) to 9. * `-u`, `--uncompressed-chunks`: Write sorted chunks as uncompressed BAM. Default behaviour is to write them with compression level 1, because that reduces time spent on I/O, but in some cases using this option can give you a better speed. Note, however, that the disk space needed for sorting will typically be 3-4 times more than without enabling this option. * `-p`, `--show-progress`: Show wget-like progressbar in STDERR (in fact, two of them one after another, first one for sorting, and then another one for merging). * `-t`, `--nthreads`=: Number of threads to use. ## SEE ALSO For more information on the original samtools SORT behaviour, check out the [samtools documentation](http://samtools.sourceforge.net/samtools.shtml). ## BUGS At the moment, the memory is used quite ineffectively for really large files. sambamba-0.6.7/man/sambamba-view.1000066400000000000000000000120661320451002000166270ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA\-VIEW" "1" "June 2016" "" "" . .SH "NAME" \fBsambamba\-view\fR \- tool for extracting information from SAM/BAM/CRAM files . .SH "SYNOPSIS" \fBsambamba view\fR \fIOPTIONS\fR [region1 [\.\.\.]] . .SH "DESCRIPTION" \fBsambamba view\fR allows to efficiently filter SAM/BAM/CRAM files for alignments satisfying various conditions, as well as access its SAM header and information about reference sequences\. In order to make these data readily available for consumption by scripts in Perl/Python/Ruby, JSON output is provided\. . .P By default, the tool expects BAM file as an input\. In order to work with CRAM, specify \-C and for SAM, specify \fB\-S\fR|\fB\-\-sam\-input\fR as a command\-line option, the tool does NOT try to guess file format from the extension\. Beware that when reading SAM, the tool will skip tags which don\'t conform to the SAM/BAM specification, and set invalid fields to their default values\. . .SH "FILTERING" Filtering is presented in two ways\. First, you can specify a condition with \fB\-F\fR option, using a special language for filtering, described at . .P https://github\.com/lomereiter/sambamba/wiki/%5Bsambamba\-view%5D\-Filter\-expression\-syntax . .P Second, if you have an indexed BAM file, several regions can be specified as well\. The syntax for regions is the same as in samtools: \fIchr\fR:\fIbeg\fR\-\fIend\fR where \fIbeg\fR and \fIend\fR are 1\-based start and end of a closed\-end interval on the reference \fIchr\fR\. . .SH "JSON" Alignment record JSON representation is a hash with keys \'qname\', \'flag\', \'rname\', \'pos\', \'mapq\', \'cigar\', \'rnext\', \'qual\', \'tags\', e\.g\. . .P {"qname":"EAS56_57:6:190:289:82","flag":69,"rname":"chr1","pos":100, . .br "mapq":0,"cigar":"*","rnext":"=","pnext":100,"tlen":0, . .br "seq":"CTCAAGGTTGTTGCAAGGGGGTCTATGTGAACAAA", . .br "qual":[27,27,27,22,27,27,27,26,27,27,27,27,27,27,27,27,23,26,26,27, . .br 22,26,19,27,26,27,26,26,26,26,26,24,19,27,26],"tags":{"MF":192}} . .P JSON representation mimics SAM format except quality is given as an array of integers\. . .P Postprocessing JSON output is best accomplished with https://stedolan\.github\.io/jq/ . .P The output is one line per read, for building a proper JSON array pipe the output into \fBjq \-\-slurp\fR\. . .SH "OPTIONS" . .TP \fB\-F\fR, \fB\-\-filter\fR=\fIFILTER\fR Set custom filter for alignments\. . .TP \fB\-f\fR, \fB\-\-format\fR=\fIFORMAT\fR Specify output format\. \fIFORMAT\fR must be one of sam, bam, cram, or json (in lowercase)\. Default is SAM\. . .TP \fB\-h\fR, \fB\-\-with\-header\fR Print SAM header before reads\. This is always done for BAM output\. . .TP \fB\-H\fR, \fB\-\-header\fR Print only SAM header to STDOUT\. If \fIFORMAT\fR is sam or bam, its text version is printed, otherwise JSON object is written\. . .TP \fB\-I\fR, \fB\-\-reference\-info\fR Output to STDOUT reference sequence names and lengths in JSON (see \fIEXAMPLES\fR)\. . .TP \fB\-L\fR, \fB\-\-regions\fR=\fIBEDFILE\fR Intersect a file with regions specified in the BED file\. . .TP \fB\-c\fR, \fB\-\-count\fR Output to STDOUT only the number of matching records, \-hHI options are ignored\. . .TP \fB\-v\fR, \fB\-\-valid\fR Output only valid reads\. . .TP \fB\-S\fR, \fB\-\-sam\-input\fR Specify that the input is SAM file (default is BAM for all operations)\. . .TP \fB\-C\fR, \fB\-\-cram\-input\fR Specify that input is in CRAM format . .TP \fB\-p\fR, \fB\-\-show\-progress\fR Show progressbar in STDERR\. Works only for BAM files, and with no regions specified, i\.e\. only when reading full file\. . .TP \fB\-l\fR, \fB\-\-compression\-level\fR=\fICOMPRESSION_LEVEL\fR Set compression level for BAM output, a number from 0 to 9\. . .TP \fB\-o\fR, \fB\-\-output\-filename\fR=\fIFILENAME\fR Specify output filename (by default everything is written to STDOUT)\. . .TP \fB\-t\fR, \fB\-\-nthreads\fR=\fINTHREADS\fR Number of threads to use\. . .SH "EXAMPLES" Print basic reference sequence information: . .IP "" 4 . .nf $ sambamba view \-\-reference\-info ex1_header\.bam [{"name":"chr1","length":1575},{"name":"chr2","length":1584}] . .fi . .IP "" 0 . .P Count reads with mapping quality not less than 50: . .IP "" 4 . .nf $ sambamba view \-c \-F "mapping_quality >= 50" ex1_header\.bam 3124 . .fi . .IP "" 0 . .P Count properly paired reads overlapping 100\.\.200 on chr1: . .IP "" 4 . .nf $ sambamba view \-c \-F "proper_pair" ex1_header\.bam chr1:100\-200 39 . .fi . .IP "" 0 . .P Output header in JSON format: . .IP "" 4 . .nf $ sambamba view \-\-header \-\-format=json ex1_header\.bam {"format_version":"1\.3","rg_lines":[], "sq_lines":[{"sequence_length":1575,"species":"","uri":"", "sequence_name":"chr1","assembly":"","md5":""}, {"sequence_length":1584,"species":"","uri":"", "sequence_name":"chr2","assembly":"","md5":""}], "sorting_order":"coordinate","pg_lines":[]} . .fi . .IP "" 0 . .SH "SEE ALSO" For more information on the original samtools VIEW behaviour, check out the samtools documentation \fIhttp://samtools\.sourceforge\.net/samtools\.shtml\fR\. sambamba-0.6.7/man/sambamba-view.1.ronn000066400000000000000000000111221320451002000175720ustar00rootroot00000000000000sambamba-view(1) -- tool for extracting information from SAM/BAM/CRAM files ====================================================================== ## SYNOPSIS `sambamba view` [OPTIONS] [region1 [...]] ## DESCRIPTION `sambamba view` allows to efficiently filter SAM/BAM/CRAM files for alignments satisfying various conditions, as well as access its SAM header and information about reference sequences. In order to make these data readily available for consumption by scripts in Perl/Python/Ruby, JSON output is provided. By default, the tool expects BAM file as an input. In order to work with CRAM, specify -C and for SAM, specify `-S`|`--sam-input` as a command-line option, the tool does NOT try to guess file format from the extension. Beware that when reading SAM, the tool will skip tags which don't conform to the SAM/BAM specification, and set invalid fields to their default values. ## FILTERING Filtering is presented in two ways. First, you can specify a condition with `-F` option, using a special language for filtering, described at https://github.com/lomereiter/sambamba/wiki/%5Bsambamba-view%5D-Filter-expression-syntax Second, if you have an indexed BAM file, several regions can be specified as well. The syntax for regions is the same as in samtools: :- where and are 1-based start and end of a closed-end interval on the reference . ## JSON Alignment record JSON representation is a hash with keys 'qname', 'flag', 'rname', 'pos', 'mapq', 'cigar', 'rnext', 'qual', 'tags', e.g. {"qname":"EAS56_57:6:190:289:82","flag":69,"rname":"chr1","pos":100, "mapq":0,"cigar":"*","rnext":"=","pnext":100,"tlen":0, "seq":"CTCAAGGTTGTTGCAAGGGGGTCTATGTGAACAAA", "qual":[27,27,27,22,27,27,27,26,27,27,27,27,27,27,27,27,23,26,26,27, 22,26,19,27,26,27,26,26,26,26,26,24,19,27,26],"tags":{"MF":192}} JSON representation mimics SAM format except quality is given as an array of integers. Postprocessing JSON output is best accomplished with https://stedolan.github.io/jq/ The output is one line per read, for building a proper JSON array pipe the output into `jq --slurp`. ## OPTIONS * `-F`, `--filter`=: Set custom filter for alignments. * `-f`, `--format`=: Specify output format. must be one of sam, bam, cram, or json (in lowercase). Default is SAM. * `-h`, `--with-header`: Print SAM header before reads. This is always done for BAM output. * `-H`, `--header`: Print only SAM header to STDOUT. If is sam or bam, its text version is printed, otherwise JSON object is written. * `-I`, `--reference-info`: Output to STDOUT reference sequence names and lengths in JSON (see [EXAMPLES][]). * `-L`, `--regions`=: Intersect a file with regions specified in the BED file. * `-c`, `--count`: Output to STDOUT only the number of matching records, -hHI options are ignored. * `-v`, `--valid`: Output only valid reads. * `-S`, `--sam-input`: Specify that the input is SAM file (default is BAM for all operations). * `-C`, `--cram-input`: Specify that input is in CRAM format * `-p`, `--show-progress`: Show progressbar in STDERR. Works only for BAM files, and with no regions specified, i.e. only when reading full file. * `-l`, `--compression-level`=: Set compression level for BAM output, a number from 0 to 9. * `-o`, `--output-filename`=: Specify output filename (by default everything is written to STDOUT). * `-t`, `--nthreads`=: Number of threads to use. ## EXAMPLES Print basic reference sequence information: $ sambamba view --reference-info ex1_header.bam [{"name":"chr1","length":1575},{"name":"chr2","length":1584}] Count reads with mapping quality not less than 50: $ sambamba view -c -F "mapping_quality >= 50" ex1_header.bam 3124 Count properly paired reads overlapping 100..200 on chr1: $ sambamba view -c -F "proper_pair" ex1_header.bam chr1:100-200 39 Output header in JSON format: $ sambamba view --header --format=json ex1_header.bam {"format_version":"1.3","rg_lines":[], "sq_lines":[{"sequence_length":1575,"species":"","uri":"", "sequence_name":"chr1","assembly":"","md5":""}, {"sequence_length":1584,"species":"","uri":"", "sequence_name":"chr2","assembly":"","md5":""}], "sorting_order":"coordinate","pg_lines":[]} ## SEE ALSO For more information on the original samtools VIEW behaviour, check out the [samtools documentation](http://samtools.sourceforge.net/samtools.shtml). sambamba-0.6.7/man/sambamba.1000066400000000000000000000016061320451002000156550ustar00rootroot00000000000000.\" generated with Ronn/v0.7.3 .\" http://github.com/rtomayko/ronn/tree/0.7.3 . .TH "SAMBAMBA" "1" "February 2015" "" "" . .SH "NAME" \fBsambamba\fR \- toolkit for working with SAM/BAM/CRAM files . .SH "SYNOPSIS" \fBsambamba\fR [subcommand] [arguments\.\.\.] . .SH "DESCRIPTION" \fBsambamba\fR unifies several independent tools in one executable: . .IP "\(bu" 4 sambamba\-view(1) . .IP "\(bu" 4 sambamba\-index(1) . .IP "\(bu" 4 sambamba\-merge(1) . .IP "\(bu" 4 sambamba\-sort(1) . .IP "\(bu" 4 sambamba\-markdup(1) . .IP "\(bu" 4 sambamba\-flagstat(1) . .IP "\(bu" 4 sambamba\-slice(1) . .IP "\(bu" 4 sambamba\-pileup(1) . .IP "" 0 . .P Thus available subcommands are \fIview\fR, \fIindex\fR, \fImerge\fR, \fIsort\fR, \fImarkdup\fR, \fIflagstat\fR, \fIslice\fR, and \fImpileup\fR\. Their use is explained on the corresponding man pages\. . .P Note that sambamba uses all available cores by default\. sambamba-0.6.7/man/sambamba.1.ronn000066400000000000000000000012021320451002000166200ustar00rootroot00000000000000sambamba(1) -- toolkit for working with SAM/BAM/CRAM files ========================================================== ## SYNOPSIS `sambamba` [subcommand] [arguments...] ## DESCRIPTION `sambamba` unifies several independent tools in one executable: * sambamba-view(1) * sambamba-index(1) * sambamba-merge(1) * sambamba-sort(1) * sambamba-markdup(1) * sambamba-flagstat(1) * sambamba-slice(1) * sambamba-pileup(1) Thus available subcommands are *view*, *index*, *merge*, *sort*, *markdup*, *flagstat*, *slice*, and *mpileup*. Their use is explained on the corresponding man pages. Note that sambamba uses all available cores by default.sambamba-0.6.7/randomize_bases.d000066400000000000000000000010241320451002000165610ustar00rootroot00000000000000import bio.bam.reader; import bio.bam.writer; import std.random; void main(string[] args) { auto bam = new BamReader(args[1]); auto w = new BamWriter(args[2]); scope(exit) w.finish(); auto gen = Random(unpredictableSeed); w.writeSamHeader(bam.header); w.writeReferenceSequenceInfo(bam.reference_sequences); foreach (r; bam.reads) { auto new_seq = new ubyte[r.sequence.length]; foreach (ref x; new_seq) x = "ACGT"[uniform(0, 4, gen)]; r.sequence = cast(string)new_seq; w.writeRecord(r); } } sambamba-0.6.7/run_tests.sh000077500000000000000000000003401320451002000156340ustar00rootroot00000000000000#!/usr/bin/env bash # download shunit2 in order to run tests: # curl -L "https://dl.dropboxusercontent.com/u/7916095/shunit2-2.0.3.tgz" | tar zx --overwrite ./test_suite.sh | tee /dev/stderr | grep -q 'success rate: 100%' sambamba-0.6.7/sambamba-ldmd-debug.rsp000066400000000000000000000051111320451002000175430ustar00rootroot00000000000000"-g" "-c" "-m64" "-noboundscheck" "-IBioD/" "-ofbuild/sambamba.o" "-odbuild" "-I." "main.d" "BioD/bio/bam/baifile.d" "sambamba/depth.d" "BioD/bio/core/utils/switchendianness.d" "sambamba/utils/common/readstorage.d" "BioD/bio/core/utils/tmpfile.d" "sambamba/utils/common/bed.d" "BioD/bio/bam/utils/samheadermerger.d" "thirdparty/mergesort.d" "BioD/bio/bam/readrange.d" "cram/exception.d" "sambamba/utils/view/headerserializer.d" "BioD/bio/bam/splitter.d" "cram/htslib.d" "BioD/bio/core/utils/roundbuf.d" "BioD/bio/bam/md/operation.d" "BioD/bio/sam/utils/fastrecordparser.d" "sambamba/utils/common/ldc_gc_workaround.d" "BioD/bio/bam/read.d" "sambamba/utils/common/filtering.d" "BioD/bio/bam/bai/indexing.d" "BioD/bio/bam/utils/value.d" "BioD/bio/bam/randomaccessmanager.d" "sambamba/utils/common/queryparser.d" "BioD/bio/bam/md/reconstruct.d" "BioD/bio/core/base.d" "BioD/bio/core/utils/zlib.d" "BioD/bio/sam/header.d" "BioD/bio/bam/writer.d" "BioD/bio/core/bgzf/block.d" "BioD/bio/bam/md/core.d" "cram/reader.d" "sambamba/utils/common/overwrite.d" "BioD/bio/core/utils/format.d" "BioD/bio/bam/reader.d" "BioD/bio/core/bgzf/inputstream.d" "BioD/bio/core/sequence.d" "BioD/bio/core/utils/bylinefast.d" "sambamba/index.d" "sambamba/markdup.d" "BioD/bio/bam/referenceinfo.d" "BioD/bio/core/tinymap.d" "cram/reference.d" "BioD/bio/bam/constants.d" "BioD/bio/core/bgzf/outputstream.d" "sambamba/utils/common/intervaltree.d" "BioD/bio/bam/utils/graph.d" "BioD/bio/core/utils/algo.d" "BioD/bio/bam/tagvalue.d" "BioD/bio/sam/reader.d" "BioD/bio/core/utils/outbuffer.d" "sambamba/sort.d" "BioD/bio/bam/validation/samheader.d" "sambamba/flagstat.d" "BioD/bio/bam/pileup.d" "sambamba/pileup.d" "BioD/bio/bam/thirdparty/msgpack.d" "BioD/bio/bam/reference.d" "BioD/bio/core/utils/range.d" "BioD/bio/bam/bai/bin.d" "sambamba/utils/view/alignmentrangeprocessor.d" "sambamba/utils/common/tmpdir.d" "sambamba/slice.d" "BioD/bio/core/bgzf/chunk.d" "BioD/bio/core/bgzf/compress.d" "BioD/bio/bam/region.d" "BioD/bio/core/bgzf/virtualoffset.d" "BioD/bio/core/region.d" "BioD/bio/bam/md/parse.d" "BioD/bio/core/utils/stream.d" "sambamba/utils/common/progressbar.d" "thirdparty/unstablesort.d" "BioD/bio/bam/abstractreader.d" "BioD/bio/core/utils/memoize.d" "sambamba/utils/common/pratt_parser.d" "BioD/bio/core/bgzf/constants.d" "sambamba/merge.d" "sambamba/view.d" "BioD/bio/bam/utils/array.d" "BioD/bio/bam/validation/alignment.d" "cram/writer.d" "cram/slicereader.d" "cram/wrappers.d" "BioD/bio/bam/multireader.d" "utils/lz4.d" "utils/strip_bcf_header.d" "sambamba/fixbins.d" "sambamba/utils/common/file.d" "utils/version_.d" "utils/ldc_version_info_.d" sambamba-0.6.7/sambamba-ldmd-release.rsp000066400000000000000000000055741320451002000201120ustar00rootroot00000000000000"-g" "-O2" "-c" "-m64" "-release" "-IBioD/" "-IundeaD/src/" "-ofbuild/sambamba.o" "-odbuild" "-I." "main.d" "BioD/bio/bam/baifile.d" "sambamba/depth.d" "BioD/bio/core/utils/switchendianness.d" "sambamba/utils/common/readstorage.d" "BioD/bio/core/utils/tmpfile.d" "sambamba/utils/common/bed.d" "BioD/bio/bam/utils/samheadermerger.d" "thirdparty/mergesort.d" "BioD/bio/bam/readrange.d" "cram/exception.d" "sambamba/utils/view/headerserializer.d" "BioD/bio/bam/splitter.d" "cram/htslib.d" "BioD/bio/core/utils/roundbuf.d" "BioD/bio/bam/md/operation.d" "BioD/bio/sam/utils/fastrecordparser.d" "sambamba/utils/common/ldc_gc_workaround.d" "BioD/bio/bam/read.d" "sambamba/utils/common/filtering.d" "BioD/bio/bam/bai/indexing.d" "BioD/bio/bam/utils/value.d" "BioD/bio/bam/randomaccessmanager.d" "sambamba/utils/common/queryparser.d" "BioD/bio/bam/md/reconstruct.d" "BioD/bio/core/base.d" "BioD/bio/core/utils/zlib.d" "BioD/bio/sam/header.d" "BioD/bio/bam/writer.d" "BioD/bio/core/bgzf/block.d" "BioD/bio/bam/md/core.d" "cram/reader.d" "sambamba/utils/common/overwrite.d" "BioD/bio/core/utils/format.d" "BioD/bio/bam/reader.d" "BioD/bio/core/bgzf/inputstream.d" "BioD/bio/core/sequence.d" "BioD/bio/core/utils/bylinefast.d" "sambamba/index.d" "sambamba/markdup.d" "BioD/bio/bam/referenceinfo.d" "BioD/bio/core/tinymap.d" "cram/reference.d" "BioD/bio/bam/constants.d" "BioD/bio/core/bgzf/outputstream.d" "sambamba/utils/common/intervaltree.d" "BioD/bio/bam/utils/graph.d" "BioD/bio/core/utils/algo.d" "BioD/bio/bam/tagvalue.d" "BioD/bio/sam/reader.d" "BioD/bio/core/utils/outbuffer.d" "sambamba/sort.d" "BioD/bio/bam/validation/samheader.d" "sambamba/flagstat.d" "BioD/bio/bam/pileup.d" "sambamba/pileup.d" "BioD/bio/bam/thirdparty/msgpack.d" "BioD/bio/bam/reference.d" "BioD/bio/core/utils/range.d" "BioD/bio/bam/bai/bin.d" "sambamba/utils/view/alignmentrangeprocessor.d" "sambamba/utils/common/tmpdir.d" "sambamba/slice.d" "BioD/bio/core/bgzf/chunk.d" "BioD/bio/core/bgzf/compress.d" "BioD/bio/bam/region.d" "BioD/bio/core/bgzf/virtualoffset.d" "BioD/bio/core/region.d" "BioD/bio/bam/md/parse.d" "BioD/bio/core/utils/stream.d" "sambamba/utils/common/progressbar.d" "thirdparty/unstablesort.d" "BioD/bio/bam/abstractreader.d" "BioD/bio/core/utils/memoize.d" "sambamba/utils/common/pratt_parser.d" "BioD/bio/core/bgzf/constants.d" "sambamba/merge.d" "sambamba/view.d" "BioD/bio/bam/utils/array.d" "BioD/bio/bam/validation/alignment.d" "cram/writer.d" "cram/slicereader.d" "cram/wrappers.d" "BioD/bio/bam/multireader.d" "utils/lz4.d" "utils/strip_bcf_header.d" "sambamba/fixbins.d" "sambamba/utils/common/file.d" "utils/version_.d" "utils/ldc_version_info_.d" undeaD/src/undead/bitarray.d undeaD/src/undead/date.d undeaD/src/undead/dateparse.d undeaD/src/undead/metastrings.d undeaD/src/undead/socketstream.d undeaD/src/undead/cstream.d undeaD/src/undead/datebase.d undeaD/src/undead/doformat.d undeaD/src/undead/regexp.d undeaD/src/undead/stream.d sambamba-0.6.7/sambamba/000077500000000000000000000000001320451002000150155ustar00rootroot00000000000000sambamba-0.6.7/sambamba/depth.d000066400000000000000000001230121320451002000162650ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2016 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.depth; import bio.bam.reader; import bio.bam.pileup; import bio.bam.region; import bio.bam.multireader; import bio.core.base; import bio.core.region; import sambamba.utils.common.bed; import sambamba.utils.common.filtering; import sambamba.utils.common.intervaltree; import std.stdio; import std.exception; import std.ascii: isWhite; import std.range; import std.algorithm; import std.array; import std.getopt; import std.parallelism; import std.typecons; version(standalone) { int main(string[] args) { return depth_main(args); } } alias uint pos_t; void printUsage() { stderr.writeln("Usage: sambamba-depth region|window|base [options] input.bam [input2.bam [...]]"); stderr.writeln(); stderr.writeln(" All BAM files must be coordinate-sorted and indexed."); stderr.writeln(); stderr.writeln(" The tool has three modes: base, region, and window,"); stderr.writeln(" each name means per which unit to print the statistics."); stderr.writeln(); stderr.writeln("Common options:"); stderr.writeln(" -F, --filter=FILTER"); stderr.writeln(" set custom filter for alignments; the default value is"); stderr.writeln(" 'mapping_quality > 0 and not duplicate and not failed_quality_control'"); stderr.writeln(" -o, --output-file=FILENAME"); stderr.writeln(" output filename (by default /dev/stdout)"); stderr.writeln(" -t, --nthreads=NTHREADS"); stderr.writeln(" maximum number of threads to use"); stderr.writeln(" -c, --min-coverage=MINCOVERAGE"); stderr.writeln(" minimum mean coverage for output (default: 0 for region/window, 1 for base)"); stderr.writeln(" -C, --max-coverage=MAXCOVERAGE"); stderr.writeln(" maximum mean coverage for output"); stderr.writeln(" -q, --min-base-quality=QUAL"); stderr.writeln(" don't count bases with lower base quality"); stderr.writeln(" --combined"); stderr.writeln(" output combined statistics for all samples"); stderr.writeln(" -a, --annotate"); stderr.writeln(" add additional column of y/n instead of"); stderr.writeln(" skipping records not satisfying the criteria"); stderr.writeln(" -m, --fix-mate-overlaps"); stderr.writeln(" detect overlaps of mate reads and handle them on per-base basis"); stderr.writeln("base subcommand options:"); stderr.writeln(" -L, --regions=FILENAME|REGION"); stderr.writeln(" list or regions of interest or a single region in form chr:beg-end (optional)"); stderr.writeln(" -z, --report-zero-coverage (DEPRECATED, use --min-coverage=0 instead)"); stderr.writeln(" don't skip zero coverage bases"); stderr.writeln("region subcommand options:"); stderr.writeln(" -L, --regions=FILENAME|REGION"); stderr.writeln(" list or regions of interest or a single region in form chr:beg-end (required)"); stderr.writeln(" -T, --cov-threshold=COVTHRESHOLD"); stderr.writeln(" multiple thresholds can be provided,"); stderr.writeln(" for each one an extra column will be added,"); stderr.writeln(" the percentage of bases in the region"); stderr.writeln(" where coverage is more than this value"); stderr.writeln("window subcommand options:"); stderr.writeln(" -w, --window-size=WINDOWSIZE"); stderr.writeln(" breadth of the window, in bp (required)"); stderr.writeln(" --overlap=OVERLAP"); stderr.writeln(" overlap of successive windows, in bp (default is 0)"); stderr.writeln(" -T, --cov-threshold=COVTHRESHOLD"); stderr.writeln(" same meaning as in 'region' subcommand"); } enum Mode { base, region, window } abstract class RegionStatsCollector { void nextColumn(uint ref_id, pos_t position, scope void delegate(size_t id) updater); } class GeneralRegionStatsCollector : RegionStatsCollector { private BamRegion[] bed_; private { // stores index of the region in initial array alias size_t payload; alias IntervalTree!(payload, uint) intervalTree; alias IntervalTreeNode!(payload, uint) intervalTreeNode; intervalTree[] trees_; } this(BamRegion[] bed) { bed_ = bed; if (bed.length == 0) return; size_t start_index = 0; size_t end_index = start_index; intervalTreeNode[][int] intervals; foreach (i, line; bed) { auto node = new intervalTreeNode(line.start, line.end, i); intervals[line.ref_id] ~= node; } trees_.length = reduce!max(intervals.keys) + 1; foreach (ref_id, ivs; intervals) trees_[ref_id] = new intervalTree(ivs); } override void nextColumn(uint ref_id, pos_t position, scope void delegate(size_t id) updater) { if (ref_id >= trees_.length || trees_[ref_id] is null) return; foreach (node; trees_[ref_id].eachOverlap(position, position + 1)) { updater(node.value); } } } bool isSortedAndNonOverlapping(BamRegion[] bed) { size_t n = bed.length; if (n <= 1) return true; foreach (k; 0 .. n - 1) { auto reg1 = bed[k]; auto reg2 = bed[k + 1]; if (reg1.ref_id > reg2.ref_id) return false; if (reg1.ref_id < reg2.ref_id) continue; if (reg1.end > reg2.start) return false; } return true; } class NonOverlappingRegionStatsCollector : RegionStatsCollector { private BamRegion[] bed_; size_t current_index_; this(BamRegion[] bed) { assert(isSortedAndNonOverlapping(bed)); bed_ = bed; current_index_ = 0; } override void nextColumn(uint ref_id, pos_t position, scope void delegate(size_t id) updater) { while (bed_.length > 0 && bed_.front.fullyLeftOf(ref_id, position)) { bed_ = bed_[1 .. $]; ++current_index_; } if (bed_.length > 0 && bed_.front.overlaps(ref_id, position.to!uint)) { updater(current_index_); } } } class WindowStatsCollector : RegionStatsCollector { MultiBamReader bam; size_t window_size; size_t overlap; size_t step; size_t n; this(MultiBamReader bam, size_t window_size, size_t overlap, size_t n) { this.bam = bam; this.window_size = window_size; this.overlap = overlap; step = window_size - overlap; this.n = n; } override void nextColumn(uint ref_id, pos_t position, scope void delegate(size_t id) updater) { size_t k; if (position < window_size) k = position / step + 1; else k = n; foreach (id; 0 .. k) updater(id); } } enum MateOverlapStatus : ubyte { none = 0, detected = 1, fixed = 2, past = 3 } struct CustomBamRead { MultiBamRead!BamRead read; alias read this; this(MultiBamRead!BamRead read, uint[string] rg2id) { this.read = read; auto rg_value = read["RG"]; if (rg2id.length > 0 && !rg_value.is_nothing) { auto rg_str = *(cast(string*)(&rg_value)); auto p = rg_str in rg2id; if (!p) throw new Exception("error in read " ~ read.name ~ ": read group " ~ rg_str ~ " is not present in the header"); sample_id = *p; } // FNV hashing ulong h = 14695981039346656037UL; foreach (ubyte b; read.name) { h ^= b; h *= 1099511628211UL; } read_name_hash = h; } ulong read_name_hash; uint sample_id; MateOverlapStatus mate_overlap = MateOverlapStatus.none; CustomBamRead dup() @property const { CustomBamRead r = void; r.read = read.dup; r.sample_id = sample_id; r.read_name_hash = read_name_hash; r.mate_overlap = mate_overlap; return r; } } alias Column = PileupRange!(InputRange!CustomBamRead).Column; abstract class ColumnPrinter { double min_cov = 0.0; double max_cov = 1e50; ubyte min_base_quality = 0; MultiBamReader bam; bool combined = false; bool annotate = false; bool fix_mate_overlaps = false; File output_file; string[] sample_names; BamRegion[] raw_bed; void setBed(BamRegion[] bed) { raw_bed = bed; } string[] raw_bed_lines; abstract void init(ref string[] args); abstract void push(ref Column); abstract void close(); uint getSampleId(R)(auto ref R read) { if (combined || sample_names.length == 1) return 0; return read.sample_id; } string getSampleName(uint sample_id) { return sample_names[sample_id]; } private { Tuple!(ulong, size_t)[] read_name_hashes_buf; Tuple!(size_t, size_t)[] overlapping_mate_positions_buf; } Tuple!(size_t, size_t)[] overlapping_mate_positions; void detectOverlappingMates(ref Column column) { if (!fix_mate_overlaps) return; size_t n = column.coverage; if (n == 0) { overlapping_mate_positions = []; return; } if (n > read_name_hashes_buf.length) { read_name_hashes_buf.length = n; overlapping_mate_positions_buf.length = n; } for (size_t i = 0; i < n; i++) read_name_hashes_buf[i] = tuple(column.reads[i].read_name_hash, i); sort!((a, b) => a[0] < b[0])(read_name_hashes_buf[0 .. n]); size_t n_overlaps = 0; for (size_t i = 0; i < n - 1; i++) { if (read_name_hashes_buf[i][0] != read_name_hashes_buf[i + 1][0]) { auto idx = read_name_hashes_buf[i][1]; if (column.reads[idx].mate_overlap != MateOverlapStatus.none) column.reads[idx].mate_overlap = MateOverlapStatus.past; continue; } auto idx1 = read_name_hashes_buf[i][1]; auto idx2 = read_name_hashes_buf[i + 1][1]; if (column.reads[idx1].sample_id == column.reads[idx2].sample_id && column.reads[idx1].name == column.reads[idx2].name) { if (column.reads[idx1].mate_overlap != MateOverlapStatus.none && column.reads[idx2].mate_overlap != MateOverlapStatus.none) { assert(column.reads[idx1].mate_overlap == column.reads[idx2].mate_overlap); } overlapping_mate_positions_buf[n_overlaps++] = tuple(idx1, idx2); // don't touch status if it's already set if (column.reads[idx1].mate_overlap == MateOverlapStatus.none) column.reads[idx1].mate_overlap = MateOverlapStatus.detected; if (column.reads[idx2].mate_overlap == MateOverlapStatus.none) column.reads[idx2].mate_overlap = MateOverlapStatus.detected; // don't consider rare cases of >= 3 reads with the same name i += 1; } } auto idx = read_name_hashes_buf[n - 1][1]; if (column.reads[idx].mate_overlap != MateOverlapStatus.none && ((n == 1) || (read_name_hashes_buf[n - 2][0] != read_name_hashes_buf[n - 1][0]))) column.reads[idx].mate_overlap = MateOverlapStatus.past; // store positions of overlapping mates for this column overlapping_mate_positions = overlapping_mate_positions_buf[0 .. n_overlaps]; } // selects a mate of better quality out of two overlapping candidates auto ref R selectBetterMate(R)(auto ref R m1, auto ref R m2) { if (m1.current_base == '-' || m2.current_base == '-') { // if either one hits an indel, look at the mapping quality return m1.mapping_quality > m2.mapping_quality ? m1 : m2; } else { // otherwise, choose one with higher base quality return m1.current_base_quality > m2.current_base_quality ? m1 : m2; } } } final class PerBasePrinter : ColumnPrinter { NonOverlappingRegionStatsCollector stats_collector; bool report_zero_coverage; private { int _prev_ref_id = -2; long _prev_position; bool _bed_is_provided; } override void init(ref string[] args) { getopt(args, std.getopt.config.caseSensitive, "report-zero-coverage|z", &report_zero_coverage); if (report_zero_coverage) min_cov = 0; if (min_cov == 0) report_zero_coverage = true; output_file.write("REF\tPOS\tCOV\tA\tC\tG\tT\tDEL\tREFSKIP"); if (!combined) output_file.write("\tSAMPLE"); if (annotate) output_file.write("\tFLAG"); output_file.writeln(); } override void setBed(BamRegion[] bed) { super.setBed(bed); _bed_is_provided = true; stats_collector = new NonOverlappingRegionStatsCollector(bed); } private string[] tails; private void initTails() { if (!tails.empty) return; if (combined) { tails ~= "\t0\t0\t0\t0\t0\t0\t0"; if (annotate) tails[0] = tails[0] ~ (min_cov > 0 ? "\tn" : "\ty"); } else { foreach (sample_name; sample_names) { tails ~= "\t0\t0\t0\t0\t0\t0\t0\t" ~ sample_name; if (annotate) tails.back = tails.back ~ (min_cov > 0 ? "\tn" : "\ty"); } } } private void writeEmptyColumns(long ref_id, long start, long end) { if (min_cov > 0 && !annotate) return; auto ref_name = bam.reference_sequences[cast(uint)ref_id].name; initTails(); if (!_bed_is_provided) { foreach (pos; start .. end) { foreach (tail; tails) output_file.writeln(ref_name, '\t', pos, tail); } } else { if (raw_bed.empty || raw_bed.front.ref_id > cast(uint)ref_id) return; while (!raw_bed.empty && raw_bed.front.ref_id < cast(uint)ref_id) raw_bed.popFront(); while (!raw_bed.empty && raw_bed.front.ref_id == ref_id) { if (raw_bed.front.fullyLeftOf(cast(uint)ref_id, cast(uint)start)) { raw_bed.popFront(); continue; } auto from = max(start, raw_bed.front.start); auto to = min(end, raw_bed.front.end); if (from >= to) break; foreach (pos; from .. to) foreach (tail; tails) output_file.writeln(ref_name, '\t', pos, tail); raw_bed.front.start = cast(uint)to; if (raw_bed.front.start >= raw_bed.front.end) raw_bed.popFront(); } stats_collector = new NonOverlappingRegionStatsCollector(raw_bed); } } private { size_t[] coverage; size_t[] deletions; size_t[] ref_skips; } private void writeColumn(ref Column c) { if (coverage.empty) { deletions.length = max(1, combined ? 1 : sample_names.length); ref_skips.length = deletions.length; coverage.length = 5 * deletions.length; } coverage[] = 0; deletions[] = 0; ref_skips[] = 0; void processCurrentBase(R)(auto ref R read) { auto sample_id = getSampleId(read); if (read.current_base == '-') { if (read.cigar_operation.type == 'D') deletions[sample_id] += 1; else ref_skips[sample_id] += 1; return; } if (read.current_base_quality >= min_base_quality) coverage[5 * sample_id + Base5(read.current_base).internal_code] += 1; } detectOverlappingMates(c); foreach (read; c.reads) { if (read.mate_overlap == MateOverlapStatus.detected) continue; // process overlapping mates separately else processCurrentBase(read); } foreach (pair; overlapping_mate_positions) { auto read = selectBetterMate(c.reads[pair[0]], c.reads[pair[1]]); processCurrentBase(read); } foreach (sample_id; 0 .. coverage.length / 5) { auto cov = coverage[sample_id * 5 .. $][0 .. 5]; size_t total_coverage = reduce!`a+b`(cov[]) + deletions[sample_id] + ref_skips[sample_id]; bool ok = total_coverage >= min_cov && total_coverage <= max_cov; if (!ok && !annotate) return; output_file.write(bam.reference_sequences[c.ref_id].name, '\t', c.position, '\t', total_coverage); foreach (i; 0 .. 4) output_file.write('\t', cov[i]); output_file.write('\t', deletions[sample_id], '\t', ref_skips[sample_id]); if (!combined) output_file.write('\t', getSampleName(sample_id.to!uint)); if (annotate) output_file.write('\t', ok ? 'y' : 'n'); output_file.writeln(); } } private bool outputRequired(int ref_id, ulong position) { if (stats_collector is null) return true; bool output = false; stats_collector.nextColumn(cast(uint)ref_id, cast(uint)position, (size_t id) { output = true; }); return output; } override void push(ref Column c) { if (min_cov > 0) { if (outputRequired(c.ref_id, c.position)) writeColumn(c); return; } if (_prev_ref_id == -2) { foreach (id; 0 .. c.ref_id) writeEmptyColumns(id, 0, bam.reference_sequences[id].length); writeEmptyColumns(c.ref_id, 0, c.position); } else if (_prev_ref_id != c.ref_id) { writeEmptyColumns(_prev_ref_id, _prev_position + 1, bam.reference_sequences[_prev_ref_id].length); writeEmptyColumns(c.ref_id, 0, c.position); } else if (_prev_position != c.position - 1) { writeEmptyColumns(c.ref_id, _prev_position + 1, c.position); } _prev_ref_id = c.ref_id; _prev_position = c.position; if (outputRequired(c.ref_id, c.position)) writeColumn(c); } override void close() { if (!report_zero_coverage) return; if (_prev_ref_id == -2) { foreach (id; 0 .. bam.reference_sequences.length) writeEmptyColumns(id, 0, bam.reference_sequences[id].length); } else { writeEmptyColumns(_prev_ref_id, _prev_position + 1, bam.reference_sequences[_prev_ref_id].length); foreach (id; _prev_ref_id + 1 .. bam.reference_sequences.length) writeEmptyColumns(id, 0, bam.reference_sequences[id].length); } } } final class PerSampleRegionData { this(size_t n_coverage_counters, size_t n_regions) { coverage_counters_ = new uint[][](n_coverage_counters, n_regions); n_reads_.length = n_regions; n_bases_.length = n_regions; } // for each coverage threshold, we hold here numbers of bases with // cov. >= that threshold, for each region private uint[][] coverage_counters_; private uint[] n_reads_; // for each region private uint[] n_bases_; // ditto ref uint coverage_count(size_t cov_id, size_t region_id) { return coverage_counters_[cov_id][region_id]; } ref uint n_reads(size_t id) { return n_reads_[id]; } ref uint n_bases(size_t id) { return n_bases_[id]; } void reset(size_t id) { n_reads_[id] = 0; n_bases_[id] = 0; foreach (ref cov_counter; coverage_counters_) cov_counter[id] = 0; } } abstract class PerRegionPrinter : ColumnPrinter { RegionStatsCollector stats_collector; private PerSampleRegionData[] samples; static immutable default_bed_fields = ["chrom", "chromStart", "chromEnd"]; private void printBedHeader(size_t n_before) { output_file.write("# "); foreach (field; default_bed_fields[0 .. min($, n_before)]) output_file.write(field, "\t"); foreach (k; 3 .. n_before) output_file.write("F", k, "\t"); output_file.write("readCount\tmeanCoverage"); foreach (cov; cov_thresholds) output_file.write("\tpercentage", cov); if (!combined) output_file.write("\tsampleName"); if (annotate) output_file.write("\tmeanCovWithinBounds"); output_file.write("\n"); output_file.flush(); } private void countRead(R)(auto ref R read, size_t id) { auto n = countOverlappingBases(read, id); auto data = getSampleData(getSampleId(read)); data.n_bases(id) += n; // count the read only if at least one base is good if (n > 0) data.n_reads(id) += 1; } private size_t countOverlappingBases(R)(auto ref R read, size_t id, ulong start_pos=0) { auto sample_id = getSampleId(read); assert(sample_names.empty || sample_id < sample_names.length, "Invalid sample ID"); auto data = getSampleData(sample_id); auto region = getRegionById(id); auto pos = read.position; // current position on the reference auto q = read.base_qualities; size_t n; // number of read bases that are not insertions // and also have good quality foreach (op; read.cigar) { if (op.is_match_or_mismatch) foreach (qual; q[0 .. min(op.length, $)]) { n += region.overlaps(region.ref_id, pos) && qual >= min_base_quality && pos >= start_pos; ++pos; } else if (op.is_reference_consuming) pos += op.length; // min(op.length, $) protects from invalid memory accesses // possible only when the input data is incorrect if (op.is_query_consuming) q = q[min(op.length, $) .. $]; } return n; } abstract BamRegion getRegionById(size_t id); abstract PerSampleRegionData getSampleData(uint sample_id); abstract bool isFirstOccurrence(size_t id); abstract void markAsSeen(size_t id); abstract void writeOriginalBedLine(size_t id); uint[] cov_thresholds; bool[] is_first_occurrence; uint[] cov_per_sample; override void init(ref string[] args) { getopt(args, std.getopt.config.caseSensitive, "cov-threshold|T", &cov_thresholds); } private void uncountOverlappingMates(R)(ref R r1, ref R r2, size_t id, ulong curr_pos) { if (r1.mate_overlap == MateOverlapStatus.fixed && r2.mate_overlap == MateOverlapStatus.fixed) return; assert(r1.mate_overlap == MateOverlapStatus.detected); assert(r2.mate_overlap == MateOverlapStatus.detected); // re-count all good bases auto n1_full = countOverlappingBases(r1, id); auto n2_full = countOverlappingBases(r2, id); // now count bases starting from the current column auto n1 = r1.position == curr_pos ? n1_full : countOverlappingBases(r1, id, curr_pos); auto n2 = r2.position == curr_pos ? n2_full : countOverlappingBases(r2, id, curr_pos); auto data = getSampleData(r1.sample_id); data.n_bases(id) -= n1 + n2; // this count is then dealt with on per-base basis data.n_reads(id) -= (n1_full > 0) + (n2_full > 0); data.n_reads(id) += (n1_full + n2_full > 0); // count only one read instead of two // don't set status to fixed just yet, there might be other regions as well } private void fixRegionBaseCounter(ref Column column, size_t region_id) { foreach (p; overlapping_mate_positions) uncountOverlappingMates(column.reads[p[0]], column.reads[p[1]], region_id, column.position); } private void markOverlappingMatesAsFixed(ref Column column) { foreach (p; overlapping_mate_positions) { assert(column.reads[p[0]].mate_overlap != MateOverlapStatus.past); assert(column.reads[p[1]].mate_overlap != MateOverlapStatus.past); column.reads[p[0]].mate_overlap = MateOverlapStatus.fixed; column.reads[p[1]].mate_overlap = MateOverlapStatus.fixed; } } override void push(ref Column column) { uint ref_id = column.ref_id.to!uint; pos_t position = column.position.to!pos_t; if (cov_per_sample.length == 0) { cov_per_sample.length = max(1, combined ? 1 : sample_names.length); } detectOverlappingMates(column); void processCurrentBase(R)(auto ref R read, size_t region_id) { if (read.current_base_quality < min_base_quality) return; auto sample_id = getSampleId(read); auto data = getSampleData(sample_id); data.n_bases(region_id) += 1; cov_per_sample[sample_id] += 1; } void countPreviouslySeenMateOverlaps(size_t id) { foreach (pair; overlapping_mate_positions) { auto m1 = column.reads[pair[0]]; auto m2 = column.reads[pair[1]]; if (m1.mate_overlap != MateOverlapStatus.fixed) continue; // don't set n_bases here, only n_reads auto n1 = countOverlappingBases(m1, id); auto n2 = countOverlappingBases(m2, id); if (n1 + n2 == 0) continue; auto data = getSampleData(m1.sample_id); data.n_reads(id) += 1; } } bool fixes_applied = false; stats_collector.nextColumn(ref_id, position, (size_t id) { if (isFirstOccurrence(id)) { foreach (read; column.reads) if (read.mate_overlap != MateOverlapStatus.fixed) countRead(read, id); countPreviouslySeenMateOverlaps(id); markAsSeen(id); } else { foreach (read; column.reads_starting_here) countRead(read, id); } fixRegionBaseCounter(column, id); fixes_applied = true; cov_per_sample[] = 0; foreach (ref read; column.reads) { if (read.mate_overlap != MateOverlapStatus.none) { if (read.mate_overlap != MateOverlapStatus.past) continue; processCurrentBase(read, id); } else { if (read.current_base_quality >= min_base_quality) cov_per_sample[getSampleId(read)] += 1; } } foreach (pair; overlapping_mate_positions) { auto m1 = column.reads[pair[0]], m2 = column.reads[pair[1]]; processCurrentBase(selectBetterMate(m1, m2), id); } foreach (sample_id; iota(cov_per_sample.length.to!uint)) { auto data = getSampleData(sample_id); foreach (i, threshold; cov_thresholds) if (cov_per_sample[sample_id] >= threshold) data.coverage_count(i, id) += 1; } }); if (fixes_applied) markOverlappingMatesAsFixed(column); } void printRegionStats(uint sample_id, size_t id, PerSampleRegionData data) { auto region = getRegionById(id); auto length = region.end - region.start; with(output_file) { auto mean_cov = data.n_bases(id).to!float / length; bool ok = mean_cov >= this.min_cov && mean_cov <= this.max_cov; if (!ok && !this.annotate) return; writeOriginalBedLine(id); write(data.n_reads(id), '\t', mean_cov); foreach (j; 0 .. cov_thresholds.length) { auto percentage = data.coverage_count(j, id).to!float * 100 / length; if (cov_thresholds[j] == 0) percentage = 100.0; write('\t', percentage); } if (!combined) write('\t', getSampleName(sample_id)); if (annotate) write('\t', ok ? 'y' : 'n'); writeln(); flush(); } } } final class PerBedRegionPrinter : PerRegionPrinter { bool[] is_first_occurrence; override PerSampleRegionData getSampleData(uint id) { if (samples.length == 0) { samples.length = max(1, combined ? 1 : sample_names.length); foreach (k; 0 .. samples.length) samples[k] = new PerSampleRegionData(cov_thresholds.length, raw_bed.length); } assert(id < samples.length, "Invalid sample ID: " ~ id.to!string ~ "/" ~ samples.length.to!string); assert(samples[id] !is null); return samples[id]; } override bool isFirstOccurrence(size_t id) { return is_first_occurrence[id]; } override void markAsSeen(size_t id) { is_first_occurrence[id] = false; } override void writeOriginalBedLine(size_t id) { import std.string; raw_bed_lines[id] = std.string.stripRight(raw_bed_lines[id]); output_file.write(raw_bed_lines[id], "\t"); } override BamRegion getRegionById(size_t id) { return raw_bed[id]; } override void setBed(BamRegion[] bed) { raw_bed = bed; is_first_occurrence = new bool[](raw_bed.length); is_first_occurrence[] = true; if (isSortedAndNonOverlapping(raw_bed)) stats_collector = new NonOverlappingRegionStatsCollector(raw_bed); else stats_collector = new GeneralRegionStatsCollector(raw_bed); printBedHeader(raw_bed_lines[0].split().length); } override void close() { foreach (id; 0 .. raw_bed.length) { foreach (sample_id; iota(samples.length.to!uint)) printRegionStats(sample_id, id, getSampleData(sample_id)); } } } final class PerWindowPrinter : PerRegionPrinter { size_t window_size; size_t overlap; size_t step; size_t n; // number of windows to keep at each moment bool[] is_first_occurrence; size_t leftmost_window_index = 0; size_t leftmost_window_start_pos = 0; int window_ref_id = -1; size_t ref_length; void printWindowStats(size_t id) { foreach (sample_id; iota(samples.length.to!uint)) printRegionStats(sample_id, leftmost_window_index, getSampleData(sample_id)); } void resetAllWindows() { foreach (data; samples) { foreach (id; 0 .. n) { data.reset(id); } } is_first_occurrence[] = true; leftmost_window_index = 0; leftmost_window_start_pos = 0; } void finishLeftMostWindow() { printWindowStats(leftmost_window_index); foreach (sample, data; samples) data.reset(leftmost_window_index); is_first_occurrence[leftmost_window_index] = true; leftmost_window_index += 1; if (leftmost_window_index == n) leftmost_window_index = 0; leftmost_window_start_pos += step; } size_t windowStart(size_t id) { size_t k_from_leftmost; if (id >= leftmost_window_index) { k_from_leftmost = id - leftmost_window_index; } else { k_from_leftmost = n - leftmost_window_index + id; } return leftmost_window_start_pos + step * k_from_leftmost; } override PerSampleRegionData getSampleData(uint id) { if (samples.length == 0) { samples.length = max(1, combined ? 1 : sample_names.length); foreach (k; 0 .. samples.length) samples[k] = new PerSampleRegionData(cov_thresholds.length, n); } return samples[id]; } override bool isFirstOccurrence(size_t id) { return is_first_occurrence[id]; } override void markAsSeen(size_t id) { is_first_occurrence[id] = false; } override BamRegion getRegionById(size_t id) { auto start = windowStart(id); auto end = start + window_size; return BamRegion(window_ref_id, cast(uint)start, cast(uint)end); } override void writeOriginalBedLine(size_t id) { auto region = getRegionById(id); output_file.write(bam.reference_sequences[region.ref_id].name, '\t', region.start, '\t', region.end, '\t'); } override void init(ref string[] args) { getopt(args, std.getopt.config.caseSensitive, "window-size|w", &window_size, "overlap", &overlap, "cov-threshold|T", &cov_thresholds); enforce(window_size > 0, "positive window size must be specified"); enforce(overlap < window_size, "specified overlap is larger than window size"); step = window_size - overlap; n = window_size / step; if (window_size % step != 0) ++n; is_first_occurrence = new bool[n]; is_first_occurrence[] = false; stats_collector = new WindowStatsCollector(bam, window_size, overlap, n); printBedHeader(3); } private void printEmptyWindows(int ref_id) { window_ref_id = ref_id; foreach (j; 0 .. bam.reference_sequences[ref_id].length / step) finishLeftMostWindow(); resetAllWindows(); } private void moveToReference(int ref_id) { window_ref_id = ref_id; ref_length = bam.reference_sequences[ref_id].length; } override void push(ref Column column) { if (window_ref_id == -1) { foreach (int k; 0 .. column.ref_id) printEmptyWindows(k); moveToReference(column.ref_id); } else if (column.ref_id != window_ref_id) { while (leftmost_window_start_pos + window_size <= ref_length) finishLeftMostWindow(); resetAllWindows(); foreach (k; window_ref_id + 1 .. column.ref_id) printEmptyWindows(k); moveToReference(column.ref_id); } while (column.position >= leftmost_window_start_pos + window_size) finishLeftMostWindow(); super.push(column); } override void close() { while (leftmost_window_start_pos + window_size <= ref_length) finishLeftMostWindow(); foreach (k; window_ref_id + 1 .. bam.reference_sequences.length) printEmptyWindows(cast(int)k); output_file.close(); } } int depth_main(string[] args) { int n_threads; string query = null; Filter read_filter = new NullFilter(); string bed_filename = null; if (args.length < 3) { printUsage(); return 0; } Mode mode; ColumnPrinter printer; switch (args[1]) { case "base": mode = Mode.base; printer = new PerBasePrinter(); break; case "region": mode = Mode.region; printer = new PerBedRegionPrinter(); break; case "window": mode = Mode.window; printer = new PerWindowPrinter(); break; default: printUsage(); return 0; } if (mode == Mode.base) printer.min_cov = 1; string output_fn; args = args[1 .. $]; try { getopt(args, std.getopt.config.caseSensitive, std.getopt.config.passThrough, "filter|F", &query, "output-filename|o", &output_fn, "nthreads|t", &n_threads, "min-coverage|c", &printer.min_cov, "max-coverage|C", &printer.max_cov, "min-base-quality|q", &printer.min_base_quality, "annotate|a", &printer.annotate, "combined", &printer.combined, "fix-mate-overlaps|m", &printer.fix_mate_overlaps); if (output_fn is null) printer.output_file = stdout; else printer.output_file = File(output_fn, "w+"); if (mode != Mode.window) { getopt(args, std.getopt.config.caseSensitive, std.getopt.config.passThrough, "regions|L", &bed_filename); } if (mode == Mode.region && bed_filename is null) { stderr.writeln("BED file or a region must be provided in region mode"); return 1; } // handles subcommand arguments and removes them from the list printer.init(args); defaultPoolThreads = max(n_threads, 0); if (query !is null) { read_filter = createFilterFromQuery(query); } else { read_filter = createFilterFromQuery("mapping_quality > 0 and not duplicate and not failed_quality_control"); } auto bam_filenames = args[1 .. $]; auto bam = new MultiBamReader(bam_filenames); enforce(bam.header.sorting_order == SortingOrder.coordinate, "All files must be coordinate-sorted"); enforce(bam.has_index, "All files must be indexed"); printer.bam = bam; uint[string] sm2id; uint[string] rg2id; foreach (rg; bam.header.read_groups) { if (rg.sample !in sm2id) { sm2id[rg.sample] = printer.sample_names.length.to!uint; printer.sample_names ~= rg.sample; } rg2id[rg.identifier] = sm2id[rg.sample]; } if (printer.sample_names.empty) printer.sample_names = ["*"]; InputRange!(CustomBamRead) reads; if (bed_filename !is null) { BamRegion[] bed; try { bed = parseBed(bed_filename, bam); if (mode == Mode.base) { parseBed(bed_filename, bam, true, &printer.raw_bed_lines); printer.setBed(parseBed(bed_filename, bam, true)); } else { printer.setBed(parseBed(bed_filename, bam, false, &printer.raw_bed_lines)); } } catch (Exception e) { auto region = parseRegion(bed_filename); enforce(bam.hasReference(region.reference), "couldn't open file " ~ bed_filename ~ " or find reference " ~ region.reference); auto ref_id = bam[region.reference].id; bed ~= BamRegion(ref_id, region.beg, region.end); if (bed[0].end == uint.max) bed[0].end = bam[region.reference].length; auto s = region.reference ~ "\t" ~ bed[0].start.to!string() ~ "\t" ~ bed[0].end.to!string(); printer.raw_bed_lines = [s]; printer.setBed(bed); } // the following line breaks in debug mode on an BAM file not sorted by sambamba // because of https://github.com/biod/BioD/blob/1248586b54af4bd4dfb28ebfebfc6bf012e7a587/bio/bam/read.d#L1761 reads = inputRangeObject(bam.getReadsOverlapping(bed) .map!(r => CustomBamRead(r, rg2id))); } else { reads = inputRangeObject(bam.reads.map!(r => CustomBamRead(r, rg2id))); } auto filtered_reads = inputRangeObject(filtered(reads, read_filter)); auto pileup = pileupColumns(filtered_reads); int last_ref_id = -2; foreach (column; pileup) { auto ref_name = bam.reference_sequences[column.ref_id].name; if (column.ref_id != last_ref_id) { last_ref_id = column.ref_id; stderr.writeln("Processing reference #", column.ref_id + 1, " (", ref_name, ")"); } printer.push(column); } printer.close(); return 0; } catch (Exception e) { stderr.writeln("sambamba-depth: ", e.msg); version(development) { throw e; } return 1; } } sambamba-0.6.7/sambamba/fixbins.d000066400000000000000000000063501320451002000166300ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2015 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.fixbins; import std.stdio, std.getopt, std.parallelism; import sambamba.utils.common.progressbar; import sambamba.utils.common.overwrite; import bio.bam.reader, bio.bam.writer; import bio.bam.bai.bin; void printUsage() { stderr.writeln("Usage: sambamba-fixbins [options] "); stderr.writeln(); stderr.writeln("Options: -t, --nthreads=NTHREADS"); stderr.writeln(" maximum number of threads to use"); stderr.writeln(" -p, --show-progress"); stderr.writeln(" show progressbar in STDERR"); stderr.writeln(" -l, --compression-level=LEVEL"); stderr.writeln(" specify compression level (from 0 to 9)"); } version(standalone) { int main(string[] args) { return fixbins_main(args); } } int fixbins_main(string[] args) { try { int compression_level = -1; size_t nthreads = totalCPUs - 1; bool show_progress; getopt(args, std.getopt.config.caseSensitive, "nthreads|t", &nthreads, "compression-level|l", &compression_level, "show-progress|p", &show_progress); if (args.length != 3) { printUsage(); return 0; } protectFromOverwrite(args[1], args[2]); auto bam = new BamReader(args[1]); bam.assumeSequentialProcessing(); auto w = new BamWriter(args[2], compression_level); w.writeSamHeader(bam.header); w.writeReferenceSequenceInfo(bam.reference_sequences); void fixBins(R)(R reads) { foreach (r; reads) { auto start = r.position; auto end = start + r.basesCovered(); uint correct_bin = cast(uint)reg2bin(start, end); uint* x = cast(uint*)r.raw_data.ptr + 2; *x = (*x & 0xFFFF) | (correct_bin << 16); w.writeRecord(r); } } if (show_progress) { auto bar = new shared(ProgressBar)(); auto reads = bam.readsWithProgress((lazy float p) { bar.update(p); }); fixBins(reads); bar.finish(); } else { fixBins(bam.reads); } scope(exit) w.finish(); } catch (Throwable e) { stderr.writeln("sambamba-fixbins: ", e.msg); version(development) { throw e; } return 1; } return 0; } sambamba-0.6.7/sambamba/flagstat.d000066400000000000000000000116111320451002000167670ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2013 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.flagstat; /// port of samtools flagstat tool import bio.bam.reader; import std.stdio, std.conv, std.parallelism, std.getopt, std.string; import sambamba.utils.common.progressbar; ulong[2] reads, pair_all, pair_good, first, second, single, pair_map, mapped, dup, diff_chr, diff_high, secondary, supplementary; void computeFlagStatistics(R)(R alignments) { foreach (read; alignments) { size_t failed = read.failed_quality_control ? 1 : 0; ++reads[failed]; if (!read.is_unmapped) ++mapped[failed]; if (read.is_duplicate) ++dup[failed]; if (read.is_secondary_alignment) { ++secondary[failed]; } else if (read.is_supplementary) { ++supplementary[failed]; } else if (read.is_paired) { ++pair_all[failed]; if (read.proper_pair && !read.is_unmapped) ++pair_good[failed]; if (read.is_first_of_pair) ++first[failed]; if (read.is_second_of_pair) ++second[failed]; if (read.mate_is_unmapped && !read.is_unmapped) ++single[failed]; if (!read.is_unmapped && !read.mate_is_unmapped) { ++pair_map[failed]; if (read.ref_id != read.mate_ref_id) { ++diff_chr[failed]; if (read.mapping_quality >= 5) ++diff_high[failed]; } } } } } void writeParam(string description, ulong[2] param) { writefln("%s + %s %s", param[0], param[1], description); } float percent(ulong a, ulong b) { return to!float(a) / b * 100.0; } string percentStr(ulong a, ulong b) { if (b == 0) return "N/A"; return format("%.2f%%", percent(a, b)); } void writeParamWithPercentage(string description, ulong[2] param, ulong[2] total) { writefln("%s + %s %s (%s:%s)", param[0], param[1], description, percentStr(param[0], total[0]), percentStr(param[1], total[1])); } version(standalone) { int main(string[] args) { return flagstat_main(args); } } void printUsage() { stderr.writeln("Usage: sambamba-flagstat [options] "); stderr.writeln(); stderr.writeln("OPTIONS: -t, --nthreads=NTHREADS"); stderr.writeln(" use NTHREADS for decompression"); stderr.writeln(" -p, --show-progress"); stderr.writeln(" show progressbar in STDERR"); } int flagstat_main(string[] args) { size_t threads = totalCPUs; bool show_progress; try { getopt(args, std.getopt.config.caseSensitive, "nthreads|t", &threads, "show-progress|p", &show_progress); if (args.length < 2) { printUsage(); return 1; } auto task_pool = new TaskPool(threads); scope(exit) task_pool.finish(); auto bam = new BamReader(args[1], task_pool); bam.assumeSequentialProcessing(); if (show_progress) { auto bar = new shared(ProgressBar)(); computeFlagStatistics(bam.readsWithProgress((lazy float p) { bar.update(p); })); bar.finish(); } else { computeFlagStatistics(bam.reads!withoutOffsets); } scope(exit) { writeParam("in total (QC-passed reads + QC-failed reads)", reads); writeParam("secondary", secondary); writeParam("supplementary", supplementary); writeParam("duplicates", dup); writeParamWithPercentage("mapped", mapped, reads); writeParam("paired in sequencing", pair_all); writeParam("read1", first); writeParam("read2", second); writeParamWithPercentage("properly paired", pair_good, pair_all); writeParam("with itself and mate mapped", pair_map); writeParamWithPercentage("singletons", single, pair_all); writeParam("with mate mapped to a different chr", diff_chr); writeParam("with mate mapped to a different chr (mapQ>=5)", diff_high); } } catch (Throwable e) { stderr.writeln(e.msg); } return 0; } sambamba-0.6.7/sambamba/index.d000066400000000000000000000076751320451002000163100ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2015 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.index; import std.stdio; import undead.stream; import std.range; import std.parallelism; import std.getopt; import cram.reader; import sambamba.utils.common.progressbar; import bio.bam.bai.indexing; import bio.bam.reader; void printUsage() { stderr.writeln("Usage: sambamba-index [OPTIONS] [output_file]"); stderr.writeln(); stderr.writeln("\tCreates index for a BAM or CRAM file"); stderr.writeln(); stderr.writeln("Options: -t, --nthreads=NTHREADS"); stderr.writeln(" number of threads to use for decompression"); stderr.writeln(" -p, --show-progress"); stderr.writeln(" show progress bar in STDERR"); stderr.writeln(" -c, --check-bins"); stderr.writeln(" check that bins are set correctly"); stderr.writeln(" -C, --cram-input"); stderr.writeln(" specify that input is in CRAM format"); } version(standalone) { int main(string[] args) { return index_main(args); } } int index_main(string[] args) { bool show_progress; bool check_bins; uint n_threads = totalCPUs; bool is_cram; string out_filename = null; getopt(args, std.getopt.config.caseSensitive, "show-progress|p", &show_progress, "nthreads|t", &n_threads, "check-bins|c", &check_bins, "cram-input|C", &is_cram); try { if (args.length < 2 || args.length > 3) { printUsage(); return 0; } if (!is_cram) { if (args.length > 2) out_filename = args[2]; else out_filename = args[1] ~ ".bai"; // default taskPool uses only totalCPUs-1 threads, // but in case of indexing the most time is spent // on decompression, and it makes perfect sense // to use all available cores for that // // (this is not the case with the sambamba tool where // filtering can consume significant amount of time) auto task_pool = new TaskPool(n_threads); scope(exit) task_pool.finish(); auto bam = new BamReader(args[1], task_pool); bam.assumeSequentialProcessing(); Stream stream = new BufferedFile(out_filename, FileMode.Out); scope(exit) stream.close(); if (show_progress) { auto bar = new shared(ProgressBar)(); createIndex(bam, stream, check_bins, (lazy float p) { bar.update(p); }); bar.finish(); } else { createIndex(bam, stream, check_bins); } } else { if (show_progress) stderr.writeln("[info] progressbar is unavailable for CRAM input"); defaultPoolThreads = 0; // decompression not needed for CRAM auto cram = new CramReader(args[1], taskPool); cram.createIndex(args[$-1]); } } catch (Throwable e) { stderr.writeln("sambamba-index: ", e.msg); version(development) { throw e; } return 1; } return 0; } sambamba-0.6.7/sambamba/markdup.d000066400000000000000000001243051320451002000166320ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2017 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.markdup; import std.stdio; import std.getopt; import std.path : buildPath; import sambamba.utils.common.tmpdir; import sambamba.utils.common.progressbar; import sambamba.utils.common.overwrite; import thirdparty.unstablesort; import utils.lz4; import utils.version_ : addPG; import bio.bam.reader, bio.bam.readrange, bio.bam.writer, bio.bam.referenceinfo, bio.bam.read, bio.sam.header, bio.bam.abstractreader, bio.bam.multireader; import std.traits, std.typecons, std.range, std.algorithm, std.parallelism, std.exception, std.file, std.typetuple, std.conv, std.array, std.bitmanip, core.stdc.stdlib, std.datetime, undead.stream : BufferedFile, FileMode; /// Read + its index (0-based) struct IndexedBamRead { ulong index; BamRead read; alias read this; IndexedBamRead dup() @property const { return IndexedBamRead(index, read.dup); } } auto withIndices(R)(R reads) { return reads.zip(sequence!((a,n)=>n)()) .map!(t => IndexedBamRead(t[1], t[0]))(); } struct ReadPair { IndexedBamRead read1; IndexedBamRead read2; } struct ReadPairOrFragment { IndexedBamRead read1; Nullable!IndexedBamRead read2; this(IndexedBamRead r1) { read1 = r1; } this(IndexedBamRead r1, IndexedBamRead r2) { read1 = r1; read2 = r2; } } class MallocArray(T) { private { T* _p; size_t _sz; size_t _cur; float _gf; } /// call manually! void free() { core.stdc.stdlib.free(_p); _p = null; } this(size_t initial_size=16, float grow_factor=1.5) { enforce(initial_size >= 16); enforce(grow_factor >= 1.2); _p = cast(T*)core.stdc.stdlib.malloc(initial_size * T.sizeof); _sz = initial_size; _gf = grow_factor; } T[] data() @property { return _p[0 .. _cur]; } size_t capacity() @property const { return _sz; } /// sets length to zero without releasing the memory void reset() { _cur = 0; } void put(ref T element) { if (_cur < _sz) { _p[_cur++] = element; } else { assert(_cur == _sz); _sz = cast(size_t)(_sz * _gf); _p = cast(T*)core.stdc.stdlib.realloc(_p, _sz * T.sizeof); _p[_cur++] = element; } } void put(T element) { put(element); } } /// 48 bytes; fast access to read group; /// also stores precomputed hash. struct HReadBlock { IndexedBamRead read; alias read this; alias read get; uint hash; uint _rg_pos; mixin(bitfields!(ushort, "_rg_len", 15, bool, "_is_not_null", 1)); bool isNull() @property const { return !_is_not_null; } string read_group() @property const { if (_rg_pos == 0) return ""; return cast(string)read.raw_data[_rg_pos .. _rg_pos + _rg_len]; } void nullify() { .destroy(read); _is_not_null = false; } HReadBlock dup() @property { auto result = this; result.read = read.dup; return result; } } template makeHReadBlock(alias charsHashFunc) { HReadBlock makeHReadBlock(R)(auto ref R read) { HReadBlock r = void; r.read = read; auto rg = cast(ubyte[])getRG(read); if (rg.length > 0) { assert(rg.length <= ushort.max / 2); r._rg_pos = cast(uint)(rg.ptr - read.raw_data.ptr); r._rg_len = cast(ushort)(rg.length); } else { r._rg_pos = 0; } r._is_not_null = true; assert(r.read_group == getRG(r.read)); auto h = charsHashFunc(chain(cast(ubyte[])r.name, cast(ubyte[])r.read_group)); r.hash = h & 0xFFFFFFFF; return r; } } private string getRG(R)(auto ref R r) { static if (is(R == HReadBlock)) { assert(r.read_group == getRG(r.read)); return r.read_group; } else { auto v = r["RG"]; if (v.is_nothing) return ""; return *(cast(string*)(&v)); } } bool compareReadNamesAndReadGroups(R1, R2)(auto ref R1 r1, auto ref R2 r2) { auto name_cmp_result = std.algorithm.cmp(r1.name, r2.name); if (name_cmp_result < 0) return true; if (name_cmp_result > 0) return false; return getRG(r1) < getRG(r2); } // LDC doesn't like lambdas :-( auto _rse2brb(T)(T t) { return IndexedBamRead(t[1], t[0]); } auto _rse2rs(T)(T t) { return map!_rse2brb(zip(t[0].reads, t[1])); } auto _rse2r(BamReader[] r, SimpleReader!(ulong, std.stdio.File)[] s) { return map!_rse2rs(zip(r, s)).array() .nWayUnion!compareReadNamesAndReadGroups(); } private auto readsFromTempFiles(size_t buf_size, string[] tmp_filenames, TaskPool pool) { BamReader[] readers; SimpleReader!(ulong, std.stdio.File)[] indices; foreach (fn; tmp_filenames) { readers ~= new BamReader(fn, pool); indices ~= new SimpleReader!(ulong, std.stdio.File)(fn ~ ".idx"); readers[$ - 1].setBufferSize(buf_size / tmp_filenames.length); } return _rse2r(readers, indices); } struct CollateReadPairRange(R, bool keepFragments, alias charsHashFunc) if (isInputRange!R && is(Unqual!(ElementType!R) == IndexedBamRead)) { private { static auto wrapper(R reads, TaskPool pool) { auto r1 = reads.filter!q{ a.ref_id != -1 } .filter!q{ !a.is_unmapped } .filter!q{ !a.is_secondary_alignment } .filter!q{ !a.is_supplementary }; static if (keepFragments) { auto r2 = r1; } else { auto r2 = r1.filter!q{a.is_paired && !a.mate_is_unmapped}(); } return pool.map!(makeHReadBlock!charsHashFunc)(r2, 1024); } ReturnType!wrapper _reads; TaskPool _task_pool; alias IndexedBamRead Read; HReadBlock[] _table; // size is always power of two size_t _table_mask; ulong _min_idx, _max_idx; version(profile) { size_t _duped_during_compaction; StopWatch _compact_sw; } void _compact() { enum max_diff = 2_000UL; if (_max_idx - _min_idx < max_diff * 6) return; version(profile) { _compact_sw.start(); scope(exit) _compact_sw.stop(); } _min_idx = _max_idx; foreach (ref r; _table) if (!r.isNull && r.is_slice_backed && _max_idx - r.index > max_diff) { version(profile) ++_duped_during_compaction; r = r.dup; } else if (!r.isNull && r.is_slice_backed) { _min_idx = min(_min_idx, r.index); } } version(profile) { ~this() { stderr.writeln("duped during compaction: ", _duped_during_compaction); stderr.writeln("time spent on compaction: ", _compact_sw.peek().msecs, " ms"); } } HReadBlock[] _overflow_list; size_t _stored_in_overflow_list; // current number of elements size_t _overflow_list_cur_pos; // for finishing current list HReadBlock _process_after_dumping; enum Source { hashTable, overflowList, tempFiles, none } Source _src; IBamSamReader _reader; static if (keepFragments) alias ReadPairOrFragment FrontType; else alias ReadPair FrontType; FrontType _front; string _tmp_dir; string[] _tmp_filenames; BamWriter _tmp_w; size_t _tmp_written; std.stdio.File _tmp_w_idx; MallocArray!ulong _tmp_idx; Nullable!Read _tmp_r1; ReturnType!readsFromTempFiles _tmp_reads; } this(R reads, ubyte table_size_log2, size_t overflow_list_size, string tmp_dir, TaskPool task_pool = taskPool) { enforce(overflow_list_size > 0); _tmp_dir = tmp_dir; _reads = wrapper(reads, task_pool); _task_pool = task_pool; setSource(Source.hashTable); _table = new HReadBlock[1 << table_size_log2]; _table_mask = (1 << table_size_log2) - 1; _overflow_list = new HReadBlock[overflow_list_size]; _tmp_idx = new MallocArray!ulong(8192); popFront(); } bool empty() const { return _src == Source.none; } auto front() { return _front; } void popFront() { final switch (_src) { case Source.hashTable: popFrontHashTable(); return; case Source.overflowList: popFrontOverflowList(); return; case Source.tempFiles: popFrontTempFiles(); return; case Source.none: assert(false); } } private: void setSource(Source source) { _src = source; } auto next(R)(ref R range) { auto r = range.front; range.popFront(); if (_src == Source.tempFiles) r.associateWithReader(_reader); return r; } static bool readsArePaired(R1, R2)(auto ref R1 r1, auto ref R2 r2) { return r1.name == r2.name && getRG(r1) == getRG(r2); } size_t computeHash(ref HReadBlock r) { return r.hash & _table_mask; } void copyToOverflowList(ref HReadBlock r) { auto old = r.is_slice_backed ? r.dup : r; _overflow_list[_stored_in_overflow_list++] = old; } void updateHashTableEntry(size_t position, ref HReadBlock read) { _max_idx = max(_max_idx, read.index); _table[position] = read; } void removeHashTableEntry(size_t position) { _table[position].nullify(); } void createTmpWriter() { if (_reader is null) { _tmp_w = null; return; } _tmp_filenames ~= _tmp_dir ~ "/sorted." ~ _tmp_filenames.length.to!string() ~ ".bam"; _tmp_w = new BamWriter(_tmp_filenames[$ - 1], 1, _task_pool); _tmp_w_idx = std.stdio.File(_tmp_filenames[$ - 1] ~ ".idx", "w+"); _tmp_w.disableAutoIndexCreation(); _tmp_w.writeSamHeader(_reader.header); _tmp_w.writeReferenceSequenceInfo(_reader.reference_sequences); _tmp_written = 0; } void closeTmpWriter() { if (_tmp_w !is null) _tmp_w.finish(); if (_tmp_filenames.length > 0) { _tmp_w_idx.rawWrite(_tmp_idx.data); _tmp_w_idx.close(); } _tmp_idx.reset(); } void dumpTmpRecord(R)(auto ref R read) { assert(_tmp_w !is null); _tmp_w.writeRecord(read); _tmp_written++; _tmp_idx.put(read.index); if (_tmp_idx.data.length == _tmp_idx.capacity) { _tmp_w_idx.rawWrite(_tmp_idx.data); _tmp_idx.reset(); } } void popFrontHashTable() { while (!_reads.empty) { _compact(); auto read = next(_reads); if (_reader is null) { _reader = read.reader; } static if (keepFragments) { if (!read.is_paired || read.mate_is_unmapped) { _front = FrontType(read); return; } } auto h = computeHash(read); if (_table[h].isNull) { updateHashTableEntry(h, read); } else if (readsArePaired(_table[h], read)) { _front = FrontType(_table[h], read); removeHashTableEntry(h); return; } else if (_stored_in_overflow_list < _overflow_list.length) { copyToOverflowList(_table[h]); updateHashTableEntry(h, read); } else { _process_after_dumping = read.dup; sort!compareReadNamesAndReadGroups(_overflow_list[]); createTmpWriter(); _overflow_list_cur_pos = 0; setSource(Source.overflowList); popFrontOverflowList(); return; } } auto remaining_reads = _table.filter!"!a.isNull" .array().sort!compareReadNamesAndReadGroups(); createTmpWriter(); foreach (r; remaining_reads) dumpTmpRecord(r); closeTmpWriter(); if (_stored_in_overflow_list > 0) { createTmpWriter(); auto list = _overflow_list[0 .. _stored_in_overflow_list]; sort!compareReadNamesAndReadGroups(list); foreach (r; list) dumpTmpRecord(r); closeTmpWriter(); } _table = null; _overflow_list = null; // FIXME: constant! _tmp_reads = readsFromTempFiles(128_000_000, _tmp_filenames, _task_pool); setSource(Source.tempFiles); if (!_tmp_reads.empty) _tmp_r1 = next(_tmp_reads); popFrontTempFiles(); } void popFrontOverflowList() { while (_overflow_list_cur_pos < _stored_in_overflow_list - 1) { auto r1 = _overflow_list[_overflow_list_cur_pos]; auto r2 = _overflow_list[_overflow_list_cur_pos + 1]; if (readsArePaired(r1, r2)) { _overflow_list_cur_pos += 2; _front = FrontType(r1, r2); return; } else { dumpTmpRecord(_overflow_list[_overflow_list_cur_pos++]); } } if (_overflow_list_cur_pos < _stored_in_overflow_list) dumpTmpRecord(_overflow_list[_overflow_list_cur_pos]); closeTmpWriter(); _stored_in_overflow_list = 0; if (!_process_after_dumping.isNull) { auto h = computeHash(_process_after_dumping); copyToOverflowList(_table[h]); updateHashTableEntry(h, _process_after_dumping); _process_after_dumping.nullify(); } setSource(Source.hashTable); popFrontHashTable(); } void popFrontTempFiles() { while (!_tmp_reads.empty) { auto r2 = next(_tmp_reads); if (readsArePaired(_tmp_r1, r2)) { _front = FrontType(_tmp_r1, r2); if (!_tmp_reads.empty) _tmp_r1 = next(_tmp_reads); else _tmp_r1.nullify(); return; } else { static if (keepFragments) { _front = FrontType(_tmp_r1); _tmp_r1 = r2; return; } else { _tmp_r1 = r2; } } } if (!_tmp_r1.isNull) { _front = FrontType(_tmp_r1); _tmp_r1.nullify(); return; } foreach (fn; _tmp_filenames) { std.file.remove(fn); std.file.remove(fn ~ ".idx"); } setSource(Source.none); } } auto simpleHash(R)(R chars) if (isInputRange!R && is(ElementType!R == ubyte)) { hash_t h = 0; foreach (ubyte c; chars) { h += c; h *= 37; } return h; } auto readPairs(alias hashFunc=simpleHash, R) (R reads, ubyte table_size_log2, size_t overflow_list_size, string tmp_dir, TaskPool task_pool=taskPool) { return CollateReadPairRange!(R, false, hashFunc) (reads, table_size_log2, overflow_list_size, tmp_dir, task_pool); } auto readPairsAndFragments(alias hashFunc=simpleHash, R) (R reads, ubyte table_size_log2, size_t overflow_list_size, string tmp_dir, TaskPool task_pool=taskPool) { return CollateReadPairRange!(R, true, hashFunc) (reads, table_size_log2, overflow_list_size, tmp_dir, task_pool); } ///////////////////////////////////////////////////////////////////////////////// /// no more than 32767 libraries and 16383 reference sequences are supported //// ///////////////////////////////////////////////////////////////////////////////// // 8 bytes struct SingleEndBasicInfo { mixin(bitfields!(short, "library_id", 16, ushort, "ref_id", 14, ubyte, "reversed", 1, ubyte, "paired", 1)); int coord; bool samePosition(SingleEndBasicInfo other) const { return coord == other.coord && ref_id == other.ref_id && reversed == other.reversed && library_id == other.library_id; } } static assert(SingleEndBasicInfo.sizeof == 8); struct SingleEndInfo { SingleEndBasicInfo basic_info; alias basic_info this; ulong idx; uint score; } struct PairedEndsInfo { mixin(bitfields!(short, "library_id", 16, ushort, "ref_id1", 14, ubyte, "reversed1", 1, ubyte, "reversed2", 1)); int coord1; int coord2; ushort ref_id2; uint score; // sum of base qualities that are >= 15 ulong idx1, idx2; SingleEndBasicInfo read1_basic_info() @property { typeof(return) result = void; // HACK! HACK! HACK! use the fact that the structures are almost // the same except the one bit meaning 'paired' instead of 'reversed2'. auto p = cast(ubyte*)(&result); p[0 .. 8] = (cast(ubyte*)(&this))[0 .. 8]; result.paired = true; return result; } } static assert(PairedEndsInfo.sizeof == 40); bool singleEndInfoComparator(S1, S2)(auto ref S1 s1, auto ref S2 s2) { if (s1.library_id < s2.library_id) return true; if (s1.library_id > s2.library_id) return false; if (s1.ref_id < s2.ref_id) return true; if (s1.ref_id > s2.ref_id) return false; if (s1.coord < s2.coord) return true; if (s1.coord > s2.coord) return false; if (s1.reversed < s2.reversed) return true; return false; } bool pairedEndsInfoComparator(P1, P2)(auto ref P1 p1, auto ref P2 p2) { if (p1.library_id < p2.library_id) return true; if (p1.library_id > p2.library_id) return false; if (p1.ref_id1 < p2.ref_id1) return true; if (p1.ref_id1 > p2.ref_id1) return false; if (p1.coord1 < p2.coord1) return true; if (p1.coord1 > p2.coord1) return false; if (p1.reversed1 < p2.reversed1) return true; if (p1.reversed1 > p2.reversed1) return false; if (p1.reversed2 < p2.reversed2) return true; if (p1.reversed2 > p2.reversed2) return false; if (p1.ref_id2 < p2.ref_id2) return true; if (p1.ref_id2 > p2.ref_id2) return false; if (p1.coord2 < p2.coord2) return true; return false; } struct MarkDuplicatesConfig { ubyte hash_table_size_log2 = 18; size_t overflow_list_size = 200_000; string tmpdir; size_t bufsize = 500_000_000; // for sorting storage // called on each group of PE duplicates void delegate(PairedEndsInfo[]) pe_callback = null; // called on each group of SE duplicates; // the second argument tells if there is a paired read at that position void delegate(SingleEndInfo[], bool) se_callback = null; } private /* algorithm */ { class ReadGroupIndex { private { int[string] _rg_ids; int[] _rg_id_to_lb_id; } this(SamHeader header) { int[string] libraries; _rg_id_to_lb_id.length = header.read_groups.length; int i = 0; int n_libs = 0; foreach (rg; header.read_groups) { _rg_ids[rg.identifier] = i; if (rg.library in libraries) { _rg_id_to_lb_id[i] = libraries[rg.library]; } else { _rg_id_to_lb_id[i] = n_libs; libraries[rg.library] = n_libs; ++n_libs; } ++i; } enforce(n_libs <= 32767, "More than 32767 libraries are unsupported"); } /// -1 if read group with such name is not found in the header int getId(string name) const { auto p = name in _rg_ids; if (p is null) return -1; return *p; } int getLibraryId(int read_group_id) const { if (read_group_id == -1) return -1; return _rg_id_to_lb_id[read_group_id]; } } int computeFivePrimeCoord(R)(auto ref R read) { if (!read.is_reverse_strand) { auto ops = read.cigar.until!q{ !a.is_clipping }; return read.position - reduce!q{ a + b }(0, ops.map!q{ a.length }); } else { auto ops = read.cigar.retro.until!q{ !a.is_clipping }; auto clipped = reduce!q{ a + b }(0, ops.map!q{ a.length }); return read.position + read.basesCovered() + clipped; } } uint computeScore(R)(auto ref R read) { return reduce!"a + b"(0, read.base_qualities.filter!"a >= 15").to!uint; } auto collectSingleEndInfo(IndexedBamRead read, ReadGroupIndex read_group_index) { assert(read.ref_id != -1); SingleEndInfo result = void; result.coord = computeFivePrimeCoord(read); result.idx = read.index; result.score = computeScore(read); result.ref_id = cast(ushort)read.ref_id; result.reversed = read.is_reverse_strand ? 1 : 0; result.paired = (read.is_paired && !read.mate_is_unmapped) ? 1 : 0; auto rg = read_group_index.getId(getRG(read)); result.library_id = cast(short)read_group_index.getLibraryId(rg); return result; } // may swap the two arguments PairedEndsInfo combine(ref SingleEndInfo s1, ref SingleEndInfo s2) { assert(s1.library_id == s2.library_id); assert(s1.paired && s2.paired); if ((s2.ref_id < s1.ref_id) || ((s2.ref_id == s1.ref_id) && ((s2.coord < s1.coord) || (s2.coord == s1.coord && s2.reversed < s1.reversed)))) swap(s1, s2); PairedEndsInfo result = void; result.library_id = s1.library_id; result.ref_id1 = s1.ref_id; result.ref_id2 = s2.ref_id; result.reversed1 = s1.reversed; result.reversed2 = s2.reversed; result.coord1 = s1.coord; result.coord2 = s2.coord; result.score = cast(uint)(s1.score + s2.score); result.idx1 = s1.idx; result.idx2 = s2.idx; return result; } // helpers for $(D samePosition) SingleEndBasicInfo basicInfo(E)(auto ref E e) { static if (is(E == SingleEndBasicInfo)) return e; else static if (is(E == SingleEndInfo)) return e.basic_info; else static if (is(E == PairedEndsInfo)) return e.read1_basic_info; } bool samePosition(E1, E2)(auto ref E1 e1, auto ref E2 e2) { static if (is(E1 == PairedEndsInfo) && is(E2 == PairedEndsInfo)) { return *cast(ulong*)(&e1) == *cast(ulong*)(&e2) && e1.ref_id2 == e2.ref_id2 && e1.coord2 == e2.coord2; } else { return basicInfo(e1).samePosition(basicInfo(e2)); } } bool positionLessOrEq(E1, E2)(auto ref E1 e1, auto ref E2 e2) { return !singleEndInfoComparator(basicInfo(e2), basicInfo(e1)); } bool positionLess(E1, E2)(auto ref E1 e1, auto ref E2 e2) { return !positionLessOrEq(e2, e1); } class SortedStorage(T, alias Cmp="a a.name).array; if (!_filenames.empty) { // this if-branch is for debug purposes only _salt = _filenames[0][T.stringof.length .. $][0 .. 4]; } else { import std.random; char[4] tmp; auto gen = Random(unpredictableSeed); foreach (ref c; tmp[]) c = uniform!"[]"('a', 'z', gen); _salt = tmp[].idup; } } void put(T item) { if (_buffer.capacity == _buffer.data.length) flush(); _buffer.put(item); ++_length; } size_t length() @property const { return _length; } void flush() { if (_buffer.data.length == 0) return; unstableSort!Cmp(_buffer.data, _pool); auto fn = buildPath(_tmp_dir, T.stringof ~ _salt ~ _filenames.length.to!string); auto compressor = new LZ4Compressor(); auto lz4_output = std.stdio.File(fn, "w+"); compressor.compress(cast(ubyte[])_buffer.data, lz4_output, 1); lz4_output.close(); _filenames ~= fn; _buffer.reset(); } void close(bool remove_files=false) { flush(); _buffer.free(); if (remove_files) removeTemporaryFiles(); } void removeTemporaryFiles() { foreach (fn; _filenames) std.file.remove(fn); } auto reader() { SimpleReader!(T, LZ4File)[] readers; foreach (fn; _filenames) readers ~= new SimpleReader!(T, LZ4File)(fn); return nWayUnion!Cmp(readers); } } class SimpleReader(T, U) { this(string filename) { _file = U(filename); _buf = new ubyte[T.sizeof * 1024]; popFront(); } private { U _file; T _front; bool _empty; ubyte[] _buf; ubyte[] _raw_data; } bool empty() @property const { return _empty; } T front() @property const { return _front; } void popFront() { import std.algorithm : copy; while (_raw_data.length < T.sizeof) { auto remaining = _raw_data.length; copy(_raw_data[], _buf[0 .. remaining]); _raw_data = _file.rawRead(_buf[remaining .. $]); _raw_data = _buf[0 .. remaining + _raw_data.length]; if (_raw_data.length == 0) { _empty = true; _file.close(); return; } } _front = *(cast(T*)_raw_data.ptr); _raw_data = _raw_data[T.sizeof .. $]; } } alias PEStorage = SortedStorage!(PairedEndsInfo, pairedEndsInfoComparator); alias SEStorage = SortedStorage!(SingleEndInfo, singleEndInfoComparator); alias SEBStorage = SortedStorage!(SingleEndBasicInfo, singleEndInfoComparator); auto collectDuplicates(PEStorage pe_storage, SEStorage se_storage, SEBStorage pos_storage, MarkDuplicatesConfig cfg, TaskPool pool) { auto pe_tmp = new MallocArray!PairedEndsInfo(); auto se_tmp = new MallocArray!SingleEndInfo(); auto pe = pe_storage.reader; auto se = se_storage.reader; auto pos = pos_storage.reader; auto duplicate_indices = new SortedStorage!ulong(cfg.tmpdir, pool, cfg.bufsize); while (true) { // sort of three-way merge // number of elements processed at the current position size_t pe_proc; size_t se_proc; pe_tmp.reset(); se_tmp.reset(); // process paired ends if (!pe.empty && (se.empty || positionLessOrEq(pe.front, se.front))) { // this is essentially group-by operation, // but maximum score is computed on the fly for efficiency pe_tmp.put(pe.front); pe.popFront(); size_t k = 1; size_t best_k = 0; while (!pe.empty) { if (!samePosition(pe.front, pe_tmp.data[0])) break; if (pe.front.score > pe_tmp.data[best_k].score) best_k = k; pe_tmp.put(pe.front); pe.popFront(); ++k; } if (cfg.pe_callback !is null) cfg.pe_callback(pe_tmp.data); for (size_t i = 0; i < k; ++i) { if (i != best_k) { auto paired_ends = pe_tmp.data[i]; duplicate_indices.put(paired_ends.idx1); duplicate_indices.put(paired_ends.idx2); } } pe_proc = k; } // process single ends if (!se.empty && (pe_tmp.data.empty || positionLessOrEq(se.front, pe_tmp.data[0]))) { while (!pos.empty && positionLess(pos.front, se.front)) pos.popFront(); bool seen_paired_read = false; bool seen_fragment = false; auto cur = se.front; size_t k = 0; while (!se.empty) { if (!samePosition(se.front, cur)) break; if (se.front.paired) seen_paired_read = true; else seen_fragment = true; se_tmp.put(se.front); ++k; se.popFront(); } size_t k_pe, k_pos; while (k_pe < pe_tmp.data.length && samePosition(pe_tmp.data[k_pe], cur)) { ++k_pe; } while (!pos.empty && samePosition(pos.front, cur)) { ++k_pos; pos.popFront(); } if (k_pe + k_pos > 0) seen_paired_read = true; size_t total = k + k_pe + k_pos; if (cfg.se_callback !is null) cfg.se_callback(se_tmp.data, seen_paired_read); if (total < 2 || !seen_fragment) { /* do nothing */ } else if (seen_paired_read) { // there was a paired read at this position // => mark all single reads as duplicates for (size_t i = 0; i < k; ++i) if (!se_tmp.data[i].paired) duplicate_indices.put(se_tmp.data[i].idx); } else { size_t best_i = 0; for (size_t i = 0; i < k; ++i) { if (se_tmp.data[i].score > se_tmp.data[best_i].score) best_i = i; } for (size_t i = 0; i < k; ++i) { if (i != best_i) duplicate_indices.put(se_tmp.data[i].idx); } } se_proc = k; } if (se.empty && pe.empty) { break; } assert(pe_proc + se_proc > 0); } pe_tmp.free(); se_tmp.free(); duplicate_indices.close(); return duplicate_indices; } auto getDuplicateOffsets(R)(R reads, ReadGroupIndex rg_index, TaskPool pool, MarkDuplicatesConfig cfg) { auto single_ends = new SEStorage(cfg.tmpdir, pool, cfg.bufsize); auto paired_ends = new PEStorage(cfg.tmpdir, pool, cfg.bufsize); auto second_ends = new SEBStorage(cfg.tmpdir, pool, cfg.bufsize); scope(failure) { paired_ends.close(true); single_ends.close(true); second_ends.close(true); } size_t unmatched_pairs; foreach (pf; readPairsAndFragments(reads, cfg.hash_table_size_log2, cfg.overflow_list_size, cfg.tmpdir, pool)) { auto end1 = collectSingleEndInfo(pf.read1, rg_index); if (!pf.read2.isNull) { auto end2 = collectSingleEndInfo(pf.read2, rg_index); auto pair = combine(end1, end2); paired_ends.put(pair); second_ends.put(end2.basic_info); } else { if (end1.paired) ++unmatched_pairs; single_ends.put(end1); } } paired_ends.flush(); single_ends.flush(); second_ends.flush(); stderr.writeln(" sorted ", paired_ends.length, " end pairs"); stderr.writeln(" and ", single_ends.length, " single ends", " (among them ", unmatched_pairs, " unmatched pairs)"); StopWatch sw; stderr.write(" collecting indices of duplicate reads... "); sw.start(); auto duplicates = collectDuplicates(paired_ends, single_ends, second_ends, cfg, pool); sw.stop(); stderr.writeln(" done in ", sw.peek().msecs, " ms"); sw.reset(); stderr.writeln(" found ", duplicates.length, " duplicates"); paired_ends.removeTemporaryFiles(); single_ends.removeTemporaryFiles(); second_ends.removeTemporaryFiles(); return duplicates; } } /* end of algorithm */ void printUsage() { stderr.writeln("Usage: sambamba-markdup [options] [ [...]] "); stderr.writeln(" By default, marks the duplicates without removing them"); stderr.writeln(); stderr.writeln("Options: -r, --remove-duplicates"); stderr.writeln(" remove duplicates instead of just marking them"); stderr.writeln(" -t, --nthreads=NTHREADS"); stderr.writeln(" number of threads to use"); stderr.writeln(" -l, --compression-level=N"); stderr.writeln(" specify compression level of the resulting file (from 0 to 9)"); stderr.writeln(" -p, --show-progress"); stderr.writeln(" show progressbar in STDERR"); stderr.writeln(" --tmpdir=TMPDIR"); stderr.writeln(" specify directory for temporary files"); stderr.writeln(); stderr.writeln("Performance tweaking parameters"); stderr.writeln(" --hash-table-size=HASH_TABLE_SIZE"); stderr.writeln(" size of hash table for finding read pairs (default is 262144 reads);"); stderr.writeln(" will be rounded down to the nearest power of two;"); stderr.writeln(" should be > (average coverage) * (insert size) for good performance"); stderr.writeln(" --overflow-list-size=OVERFLOW_LIST_SIZE"); stderr.writeln(" size of the overflow list where reads, thrown from the hash table,"); stderr.writeln(" get a second chance to meet their pairs (default is 200000 reads);"); stderr.writeln(" increasing the size reduces the number of temporary files created"); stderr.writeln(" --sort-buffer-size=SORT_BUFFER_SIZE"); stderr.writeln(" total amount of memory (in *megabytes*) used for sorting purposes;"); stderr.writeln(" the default is 2048, increasing it will reduce the number of created"); stderr.writeln(" temporary files and the time spent in the main thread"); stderr.writeln(" --io-buffer-size=BUFFER_SIZE"); stderr.writeln(" two buffers of BUFFER_SIZE *megabytes* each are used"); stderr.writeln(" for reading and writing BAM during the second pass (default is 128)"); } version(standalone) { int main(string[] args) { return markdup_main(args); } } int markdup_main(string[] args) { MarkDuplicatesConfig cfg; cfg.tmpdir = defaultTmpDir(); auto unparsed_args = args.dup; bool remove_duplicates; uint n_threads = totalCPUs; bool show_progress; size_t io_buffer_size = 128; size_t hash_table_size; size_t sort_buffer_size = 2048; int compression_level = -1; bool cmp_with_picard_mode; // for development purposes! StopWatch sw; sw.start(); try { getopt(args, std.getopt.config.caseSensitive, "remove-duplicates|r", &remove_duplicates, "nthreads|t", &n_threads, "compression-level|l", &compression_level, "show-progress|p", &show_progress, "tmpdir", &cfg.tmpdir, "hash-table-size", &hash_table_size, "overflow-list-size", &cfg.overflow_list_size, "io-buffer-size", &io_buffer_size, "sort-buffer-size", &sort_buffer_size, "compare-with-picard-mode", &cmp_with_picard_mode); if (args.length < 3) { printUsage(); return 0; } foreach (arg; args[1 .. $-1]) protectFromOverwrite(arg, args[$-1]); cfg.tmpdir = randomSubdir(cfg.tmpdir, "markdup-"); if (n_threads == 0) n_threads = 1; std.parallelism.defaultPoolThreads = n_threads - 1; if (cmp_with_picard_mode) { static class PicardChecker { static string output_filename; this(MarkDuplicatesConfig cfg, string fn1, string fn2, TaskPool pool) { output_filename = buildPath(cfg.tmpdir, "_diff1.bam"); auto output_filename2 = buildPath(cfg.tmpdir, "_diff2.bam"); auto b1 = new BamReader(fn1, pool); auto b2 = new BamReader(fn2, pool); b1.setBufferSize(64_000_000); b2.setBufferSize(64_000_000); auto w = new BamWriter(output_filename, 1, pool); auto w2 = new BamWriter(output_filename2, 1, pool); scope(exit) { w.finish(); w2.finish(); stderr.writeln("Saved differing reads to ", output_filename, " and ", output_filename2); } w.writeSamHeader(b1.header); w.writeReferenceSequenceInfo(b1.reference_sequences); w2.writeSamHeader(b2.header); w2.writeReferenceSequenceInfo(b2.reference_sequences); foreach (pair; zip(b1.reads, b2.reads)) { if (pair[0].is_duplicate != pair[1].is_duplicate) { w.writeRecord(pair[0]); w2.writeRecord(pair[1]); } } } void check(PairedEndsInfo[] dups) { if (dups.length != 2 || dups[0].score != dups[1].score) { writefln("weird group of PE duplicates found, their indices: %(%s, %); scores: %(%s, %)", roundRobin(dups.map!"a.idx1", dups.map!"a.idx2"), dups.map!"a.score"); } } void check(SingleEndInfo[] dups, bool has_paired) { if (has_paired || dups.length != 2 || dups[0].score != dups[1].score) { writefln("weird group of SE duplicates found, their indices: %(%s, %); scores: %(%s, %)", dups.map!"a.idx", dups.map!"a.score"); } } } auto checker = new PicardChecker(cfg, args[1], args[2], taskPool); args[1] = checker.output_filename; args[2] = "/dev/null"; cfg.pe_callback = (pe_dups) => checker.check(pe_dups); cfg.se_callback = (se_dups, has_paired) => checker.check(se_dups, has_paired); } io_buffer_size <<= 20; // -> convert to megabytes // max. 4 at the same time (single/paired/second reads + dup. indices) cfg.bufsize = sort_buffer_size << 18; cfg.hash_table_size_log2 = 10; // FIXME: overrides default value of 18 while ((2UL << cfg.hash_table_size_log2) <= hash_table_size) cfg.hash_table_size_log2 += 1; // 2^^(cfg.hash_table_size_log2 + 1) > hash_table_size // Set up the BAM reader and pass in the thread pool auto bam = new MultiBamReader(args[1 .. $-1], taskPool); auto n_refs = bam.reference_sequences.length; enforce(n_refs < 16384, "More than 16383 reference sequences are unsupported"); auto rg_index = new ReadGroupIndex(bam.header); stderr.writeln("finding positions of the duplicate reads in the file..."); InputRange!IndexedBamRead reads; shared(ProgressBar) bar; void initInputs() { if (!show_progress) reads = bam.reads.withIndices.inputRangeObject; else { bar = new shared(ProgressBar)(); reads = bam.readsWithProgress((lazy float p) { bar.update(p); }, () { bar.finish(); }).withIndices .inputRangeObject; } } initInputs(); auto dup_idx_storage = getDuplicateOffsets(reads, rg_index, taskPool, cfg); auto elapsed = sw.peek(); stderr.writeln("collected list of positions in ", elapsed.seconds / 60, " min ", elapsed.seconds % 60, " sec"); // marking or removing duplicates bam = new MultiBamReader(args[1 .. $-1]); bam.setBufferSize(io_buffer_size / (args.length - 2)); auto out_stream = new BufferedFile(args[$-1], FileMode.OutNew, io_buffer_size); auto writer = new BamWriter(out_stream, compression_level); writer.setFilename(args[$-1]); scope(exit) writer.finish(); auto header = addPG("markdup", unparsed_args, bam.header); writer.writeSamHeader(header); writer.writeReferenceSequenceInfo(bam.reference_sequences); stderr.writeln(remove_duplicates ? "removing" : "marking", " duplicates..."); initInputs(); auto indices = dup_idx_storage.reader; foreach (read; reads) { if (!indices.empty && read.index == indices.front) { assumeUnique(read).is_duplicate = true; indices.popFront(); } else if (!read.is_secondary_alignment && !read.is_supplementary) { assumeUnique(read).is_duplicate = false; } if (read.is_duplicate && remove_duplicates) continue; writer.writeRecord(read); } dup_idx_storage.removeTemporaryFiles(); try { std.file.rmdirRecurse(cfg.tmpdir); } catch (FileException e) { } sw.stop(); stderr.writeln("total time elapsed: ", sw.peek().seconds / 60, " min ", sw.peek().seconds % 60, " sec"); } catch (Throwable e) { stderr.writeln("sambamba-markdup: ", e.msg); version(development) { throw e; } return 1; } return 0; } sambamba-0.6.7/sambamba/merge.d000066400000000000000000000412751320451002000162720ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2016 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.merge; /* Merging. In order for several BAM files to be merged into one, they must firstly be sorted in the same order. 1) Merging headers. a) Merging sequence dictionaries. Create map: file -> old ref. ID -> index of sequence name in merged dict If sorting order is coordinate, the following invariant holds: for any file, reference sequences sorted by old ref. ID appear in the same order in the merged list (if that's impossible, throw an exception because one of files needs to be sorted again with a different order of reference sequences) For that, a graph is created and topological sort is performed. b) Merging program records. Create map: file -> old program record name -> new program record name Some ids can be changed to avoid collisions. Invariant: partial order, implied by PP tag, is maintained. Program records form disjoint set of trees if we consider this relation, therefore to maintain partial order we walk these trees with BFS, and on each step update changed PP tags. c) Merging read group dictionaries. The simplest one because there're no restrictions on order. Just detect collisions and rename read groups appropriately in such a case. 2) Merging alignments. Use maps built during merging headers: file -> old reference id -> new reference id, file -> old program record name -> new program record name, file -> old read group name -> new read group name filenames -> ranges of alignments for these filenames -> ranges of alignments modified accordingly to the maps -> nWayUnion with a comparator corresponding to the common sorting order -> write BAM with merged header and reference sequences info */ import bio.bam.reader; import bio.bam.writer; import bio.bam.utils.samheadermerger; import bio.bam.read; import std.stdio; import std.algorithm; import std.conv; import std.functional; import std.array; import std.file; import std.range; import std.typecons; import std.traits; import std.numeric; import std.parallelism; import undead.stream; import std.getopt; import core.atomic; import core.memory; import sambamba.utils.common.progressbar; import sambamba.utils.common.overwrite; import sambamba.utils.common.filtering; import sambamba.utils.common.readstorage; import bio.core.utils.outbuffer; import bio.core.utils.roundbuf; import bio.bam.utils.value; void printUsage() { stderr.writeln("Usage: sambamba-merge [options] [...]"); stderr.writeln(); stderr.writeln("Options: -t, --nthreads=NTHREADS"); stderr.writeln(" number of threads to use for compression/decompression"); stderr.writeln(" -l, --compression-level=COMPRESSION_LEVEL"); stderr.writeln(" level of compression for merged BAM file, number from 0 to 9"); stderr.writeln(" -H, --header"); stderr.writeln(" output merged header to stdout in SAM format, other options are ignored; mainly for debug purposes"); stderr.writeln(" -p, --show-progress"); stderr.writeln(" show progress bar in STDERR"); stderr.writeln(" -F, --filter=FILTER"); stderr.writeln(" keep only reads that satisfy FILTER"); } // these variables can be implicitly used in tasks created in writeBAM shared(SamHeaderMerger) merger; shared(SamHeader) merged_header; shared(size_t[size_t][]) ref_id_map; shared(size_t[size_t][]) ref_id_reverse_map; shared(string[string][]) program_id_map; shared(string[string][]) readgroup_id_map; __gshared static TaskPool task_pool; __gshared static Filter read_filter; auto modifyAlignmentRange(T)(T alignments_with_file_id) { return AlignmentRangeModifier!T(alignments_with_file_id); } ubyte[] modifier(BamRead[] reads, OutBuffer output_buffer, size_t _file_id, ubyte[] tmp) { // it's practically impossible that one will merge > 10000 files, // so add 10 extra bytes for each read (5 for RG and 5 for PG) size_t bytes_required = 0; foreach (read; reads) { bytes_required += read.size_in_bytes + 10; } output_buffer.capacity = bytes_required; foreach (read; reads) { auto data = read.raw_data; auto cigar_offset = 8 * int.sizeof + read.name.length + 1; auto tags_offset = cigar_offset + uint.sizeof * read.cigar.length + (3 * read.sequence_length + 1) / 2; auto start_offset = output_buffer.data.length + int.sizeof; auto p = cast(int*)(output_buffer.data.ptr + start_offset - int.sizeof); output_buffer.putUnsafe(int.init); size_t chunk_size = read.size_in_bytes - int.sizeof; // change ref. id auto ref_id_ptr = cast(int*)(data.ptr); auto old_ref_id = *ref_id_ptr; if (old_ref_id != -1 && old_ref_id in ref_id_map[_file_id]) { auto new_ref_id = to!int(ref_id_map[_file_id][old_ref_id]); if (new_ref_id != old_ref_id) *ref_id_ptr = new_ref_id; } data[cigar_offset - 1] = 0; output_buffer.putUnsafe(data[0 .. tags_offset]); auto bytes_written = tags_offset; // cool, now change PG and RG tags where needed foreach (tag, value; read) { Value val = value; if (tag == "PG") { auto pg_str = *cast(string*)(&val); if (pg_str in program_id_map[_file_id]) { auto new_pg = program_id_map[_file_id][pg_str]; if (new_pg != pg_str) { val = Value(new_pg); auto delta = new_pg.length - pg_str.length; chunk_size += cast(int)delta; } } } else if (tag == "RG") { auto rg_str = *cast(string*)(&val); if (rg_str in readgroup_id_map[_file_id]) { auto new_rg = readgroup_id_map[_file_id][rg_str]; if (new_rg != rg_str) { val = Value(new_rg); auto delta = new_rg.length - rg_str.length; chunk_size += cast(int)delta; } } } output_buffer.putUnsafe(cast(ubyte[])tag); emplaceValue(tmp.ptr, val); auto val_size = sizeInBytes(val); output_buffer.putUnsafe(tmp[0 .. val_size]); bytes_written += 2 + val_size; } import std.exception; enforce(bytes_written == chunk_size); *p = cast(int)chunk_size; } return output_buffer.data; } struct AlignmentRangeModifier(T) { private { InputRange!BamRead _reads; size_t _file_id; alias TaskWithData!(modifier, size_t, ubyte[]) ModifyTask; RoundBuf!ModifyTask _tasks; enum _tmp_size = 128 * 1024; size_t _task_index; ubyte[] _tmp; ubyte[] _tmp_space(size_t _task_index) { auto n_tasks = _tmp.length / _tmp_size; auto k =_task_index % n_tasks; return _tmp[k * _tmp_size .. $][0 .. _tmp_size]; } ubyte[] _curr_data; size_t _bytes_read; size_t _curr_data_len; bool _empty; BamRead _front; } bool empty() @property const { return _empty; } this(T alignments_with_file_id) { _reads = alignments_with_file_id[0].filtered(read_filter).inputRangeObject; _file_id = alignments_with_file_id[1]; auto n_tasks = max(task_pool.size, 2) * 4; _tasks = RoundBuf!ModifyTask(n_tasks); _tmp = new ubyte[_tmp_size * n_tasks]; foreach (i; 0 .. n_tasks) { if (_reads.empty) break; auto t = new ModifyTask(); t.input_buffer.fill(&_reads); t.run(task_pool, _file_id, _tmp_space(_task_index)); _tasks.put(t); ++_task_index; } popFront(); } BamRead front() { return _front; } void popFront() { if (_bytes_read == _curr_data_len) { if (_tasks.empty) { _empty = true; return; } auto t = _tasks.front; auto data = t.conversion_task.yieldForce(); _curr_data.length = max(data.length, _curr_data.length); _curr_data_len = data.length; _curr_data[0 .. data.length] = data[]; _bytes_read = 0; _tasks.popFront(); if (!_reads.empty) { t.input_buffer.clear(); t.input_buffer.fill(&_reads); t.output_buffer.clear(); t.run(task_pool, _file_id, _tmp_space(_task_index)); _tasks.put(t); ++_task_index; } } int chunk_size = *(cast(int*)(_curr_data.ptr + _bytes_read)); auto chunk = _curr_data[int.sizeof + _bytes_read .. $][0 .. chunk_size]; bool fix_byte_order = false; _front = BamRead(chunk, fix_byte_order); _bytes_read += int.sizeof + chunk_size; } } version(standalone) { int main(string[] args) { return merge_main(args); } } int merge_main(string[] args) { int compression_level = -1; int number_of_threads = totalCPUs; bool validate_headers = false; bool header_only = false; bool show_progress = false; string filter_str = null; try { getopt(args, std.getopt.config.caseSensitive, "nthreads|t", &number_of_threads, "compression-level|l", &compression_level, "validate-headers|v", &validate_headers, "header|H", &header_only, "show-progress|p", &show_progress, "filter|F", &filter_str); if (args.length < 4) { printUsage(); return 1; } read_filter = createFilterFromQuery(filter_str); task_pool = new TaskPool(number_of_threads); scope(exit) task_pool.finish(); auto output_filename = args[1]; auto filenames = args[2 .. $]; foreach (filename; filenames) protectFromOverwrite(filename, output_filename); GC.disable(); BamReader[] files; files.length = filenames.length; foreach (i; 0 .. files.length) { files[i] = new BamReader(filenames[i], task_pool); files[i].setBufferSize(50_000_000 / files.length); //TODO files[i].assumeSequentialProcessing(); } auto headers = array(map!"a.header"(files)); GC.disable(); merger = cast(shared) new SamHeaderMerger(headers, validate_headers); merged_header = merger.merged_header; ref_id_map = merger.ref_id_map; ref_id_reverse_map = merger.ref_id_reverse_map; readgroup_id_map = merger.readgroup_id_map; program_id_map = merger.program_id_map; auto strategy = cast()merger.strategy; auto n_references = (cast()merged_header).sequences.length; if (header_only) { write((cast()merged_header).text); return 0; } // alignmentranges must hold tuples of some range of alignment and file id void mergeAlignments(R)(R alignmentranges) { // ranges with replaced reference ID, PG and RG tags auto modifiedranges = array(map!modifyAlignmentRange(alignmentranges)); // write BAM file Stream stream = new BufferedFile(output_filename, FileMode.OutNew, 50_000_000); // TODO scope(failure) stream.close(); auto reference_sequences = new ReferenceSequenceInfo[(cast()merged_header).sequences.length]; size_t i; foreach (line; (cast()merged_header).sequences.values) { reference_sequences[i] = ReferenceSequenceInfo(line.name, line.length); ++i; } auto writer = new BamWriter(stream, compression_level, task_pool); writer.setFilename(output_filename); scope(exit) writer.finish(); writer.writeSamHeader(cast()merged_header); writer.writeReferenceSequenceInfo(reference_sequences); switch (merged_header.sorting_order) { case SortingOrder.queryname: foreach (read; nWayUnion!compareReadNames(modifiedranges)) writer.writeRecord(read); break; case SortingOrder.coordinate: foreach (read; nWayUnion!compareCoordinatesAndStrand(modifiedranges)) writer.writeRecord(read); break; default: assert(0); } } // mergeAlignments if (show_progress && strategy == SamHeaderMerger.Strategy.simple) { // tuples of (alignments, file_id) shared(float[]) merging_progress; merging_progress.length = files.length; auto bar = new shared(ProgressBar)(); alias ReturnType!(BamReader.readsWithProgress!withoutOffsets) AlignmentRangePB; auto alignmentranges_with_file_ids = new Tuple!(AlignmentRangePB, size_t)[files.length]; auto weights = cast(shared)array(map!(pipe!(getSize, to!float))(filenames)); normalize(cast()weights); foreach (i; 0 .. files.length) { alignmentranges_with_file_ids[i] = tuple( files[i].readsWithProgress( (size_t j) { return (lazy float p) { atomicStore(merging_progress[j], p); synchronized (bar) { bar.update(dotProduct(merging_progress, weights)); } }; }(i)), i ); } mergeAlignments(alignmentranges_with_file_ids); bar.finish(); } else { if (strategy == SamHeaderMerger.Strategy.simple) { auto alignmentranges_with_file_ids = array( zip(map!"a.reads"(files), iota(files.length)) ); mergeAlignments(alignmentranges_with_file_ids); } else { alias Tuple!(InputRange!BamRead, size_t) R; auto alignmentranges_with_file_ids = new R[files.length]; foreach (k; 0 .. files.length) { size_t[] order; // order of reference ids to fetch order.length = files[k].reference_sequences.length; size_t n_refs; // in this particular file foreach (j; 0 .. n_references) { // refs from all files auto old_ref_id_ptr = j in ref_id_reverse_map[k]; if (old_ref_id_ptr !is null) { order[n_refs++] = *old_ref_id_ptr; } } assert(n_refs == order.length); order = order[0 .. n_refs]; auto reads = order.map!( ref_id => files[k].reference(cast(int)ref_id)[] ).joiner().chain(files[k].unmappedReads()) .map!(r => r.read).inputRangeObject(); alignmentranges_with_file_ids[k] = tuple(reads, k); } mergeAlignments(alignmentranges_with_file_ids); } } } catch (Throwable e) { version(development) { throw e; } else { stderr.writeln("sambamba-merge: ", e.msg); return 1; } } return 0; } sambamba-0.6.7/sambamba/pileup.d000066400000000000000000000635661320451002000165000ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2016 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /** module for executing samtools mpileup in parallel using named pipes, * after chunking a file */ module sambamba.pileup; import sambamba.utils.common.bed; import sambamba.utils.common.tmpdir; import sambamba.utils.common.overwrite; import utils.lz4; import bio.bam.multireader; import bio.bam.reader; import bio.bam.writer; import bio.bam.pileup; import bio.core.utils.format : write; import bio.core.utils.roundbuf; import bio.core.utils.stream; import std.process; import std.stdio; import std.parallelism; import std.file : rmdirRecurse, exists; import std.algorithm; import std.array; import std.exception; import std.getopt; import std.string : strip, indexOf, toStringz; import core.stdc.stdlib; import std.typecons; import undead.stream; import std.range; import std.algorithm; import std.path; import std.regex; import std.traits; import std.typecons; import std.conv; import std.container; import core.thread; import core.sync.mutex, core.sync.condition; import core.sys.posix.sys.stat; import core.sys.posix.stdio : fopen; import core.stdc.errno; extern(C) char* mkdtemp(char* template_); extern(C) int mkfifo(immutable(char)* fn, int mode); // Cached values string samtoolsBin = null; string samtoolsVersion = null; string bcftoolsBin = null; string bcftoolsVersion = null; // Return path to samtools after testing whether it exists and supports mpileup auto samtoolsInfo() { if (samtoolsBin is null) { auto paths = environment["PATH"].split(":"); auto a = array(filter!(path => exists(path ~ "/samtools"))(paths)); enforce(!a.empty, "failed to locate samtools executable in PATH"); samtoolsBin = a[0] ~ "/samtools"; } enforce(exists(samtoolsBin), samtoolsBin ~ " is invalid"); if (samtoolsVersion is null) { auto samtools = execute([samtoolsBin]); enforce(samtools.status==1, "samtools failed: " ~ samtools.output); samtoolsVersion = samtools.output.split("\n")[2]; enforce(samtoolsVersion.startsWith("Version: 1."), "version " ~ samtoolsVersion ~ " of samtools is unsupported"); } return [samtoolsBin, samtoolsVersion]; } auto samtoolsPath() { return samtoolsInfo()[0]; } auto bcftoolsInfo() { if (bcftoolsBin is null) { auto paths = environment["PATH"].split(":"); auto a = array(filter!(path => exists(path ~ "/bcftools"))(paths)); enforce(!a.empty, "failed to locate bcftools executable in PATH"); bcftoolsBin = a[0] ~ "/bcftools"; } enforce(exists(bcftoolsBin), bcftoolsBin ~ " is invalid"); if (bcftoolsVersion is null) { auto bcftools = execute([bcftoolsBin]); enforce(bcftools.status == 1, "bcftools failed: " ~ bcftools.output); auto r = regex(r"Version: 1\.\d\.\d[^\n]+"); enforce(matchFirst(bcftools.output, r), "Can not find version in " ~ bcftools.output); bcftoolsVersion = matchFirst(bcftools.output, r).hit; enforce(bcftoolsVersion.startsWith("Version: 1."), "version " ~ bcftoolsVersion ~ " of bcftools is unsupported"); } return [bcftoolsBin, bcftoolsVersion]; } auto bcftoolsPath() { return bcftoolsInfo()[0]; } void makeFifo(string filename) { auto s = toStringz(filename); int ret = mkfifo(s, octal!"666"); if (ret == -1) { stderr.writeln(errno); throw new Exception("failed to create named pipe " ~ filename); } } struct BedRecord { string reference; ulong start; ulong end; void toString(scope void delegate(const(char)[]) dg) const { dg.write(reference); dg.write('\t'); dg.write(start); dg.write('\t'); dg.write(end); } } struct MArray(T) { T[] data; T* ptr; } MArray!char data; __gshared string this_app; private { struct Recipe { string strip_header_cmd; string compression_cmd; void function (ubyte[] data, std.stdio.File output_file) decompressionFunc; } void dump(ubyte[] data, std.stdio.File output_file) { output_file.rawWrite(data); } void lz4decompress(ubyte[] data, std.stdio.File output_file) { lz4decompressor.decompress(new MemoryStream(data), output_file); } __gshared Recipe[FileFormat] recipes; __gshared LZ4Decompressor lz4decompressor; } // TODO: fix bcftoolsCommand and samtoolsCommand in the header void init() { lz4decompressor = new LZ4Decompressor(); recipes[FileFormat.pileup] = Recipe(this_app ~ " strip_bcf_header --vcf", this_app ~ " lz4compress", &lz4decompress); recipes[FileFormat.BCF] = Recipe(this_app ~ " strip_bcf_header --bcf", null, &dump); recipes[FileFormat.uncompressedBCF] = Recipe(this_app ~ " strip_bcf_header --ubcf", this_app ~ " lz4compress", &lz4decompress); recipes[FileFormat.VCF] = Recipe(this_app ~ " strip_bcf_header --vcf", this_app ~ " lz4compress", &lz4decompress); } string makeInputCmdLine(string input_cmd, FileFormat input_format, bool strip_header) { auto recipe = recipes[input_format]; string cmd = input_cmd; if (strip_header && recipe.strip_header_cmd !is null) cmd ~= "| " ~ recipe.strip_header_cmd; if (recipe.compression_cmd !is null) cmd ~= "| " ~ recipe.compression_cmd; return cmd; } void decompressIntoFile(char[] data, FileFormat input_format, std.stdio.File output_file) { recipes[input_format].decompressionFunc(cast(ubyte[])data, output_file); } struct Args { string[] samtools_args; string[] bcftools_args; FileFormat input_format; this(string[] samtools_args_, bool use_bcftools, string[] bcftools_args_) { samtools_args = unbundle(samtools_args_); bcftools_args = unbundle(bcftools_args_, "O"); // keep -Ov|-Ob|... auto samtools_output_fmt = fixSamtoolsArgs(use_bcftools, samtools_args); auto bcftools_output_fmt = fixBcftoolsArgs(use_bcftools, bcftools_args, samtools_args); input_format = samtools_output_fmt; if (use_bcftools) input_format = bcftools_output_fmt; } string makeCommandLine(string filename) { auto basic_args = [samtoolsPath(), "mpileup", filename]; basic_args ~= ["-l", filename ~ ".bed"]; auto samtools_cmd = (basic_args ~ samtools_args).join(" "); string cmd = samtools_cmd; if (bcftools_args.length > 0) { auto bcftools_cmd = bcftoolsPath() ~ " " ~ bcftools_args.join(" "); cmd = samtools_cmd ~ " | " ~ bcftools_cmd; } bool strip_header = !filename.endsWith("/1"); return makeInputCmdLine(cmd, input_format, strip_header); } } enum FileFormat { pileup, BCF, uncompressedBCF, VCF, gzippedVCF } string[] unbundle(string[] args, string exclude="") { import std.ascii : isAlpha; import std.conv : text; import std.algorithm : count; string[] unbundled; foreach (a; args) { if (a.length >= 2 && a[0] == '-' && exclude.count(a[1]) == 0) { string[] expanded; foreach (j, dchar c; a[1 .. $]) { if (!isAlpha(c)) { expanded ~= a[j + 1 .. $]; break; } expanded ~= text('-', c); } unbundled ~= expanded; } else { unbundled ~= a; } } return unbundled; } // input: unbundled samtools arguments // output: detected output format FileFormat fixSamtoolsArgs(bool use_bcftools, ref string[] args) { bool vcf = false; bool bcf = false; bool uncompressed = false; bool[] keep; foreach (i; 0 .. args.length) { if (args[i] == "-o") { throw new Exception("-o argument of samtools is disallowed, use --output-filename argument of sambamba mpileup"); } if (args[i] == "-g") { bcf = true; keep ~= true; } else if (args[i] == "-v") { vcf = true; keep ~= !use_bcftools; } else if (args[i] == "-u") { bcf = true; uncompressed = true; keep ~= true; } else { keep ~= true; } } string[] fixed_args; foreach (i; 0 .. args.length) { if (keep[i]) fixed_args ~= args[i]; } // When using bcftools add these switches bool fixes_applied; if (vcf && use_bcftools) { fixed_args ~= ["-g", "-u"]; fixes_applied = true; } else if (bcf && use_bcftools && !uncompressed) { fixed_args ~= "-u"; fixes_applied = true; } args = fixed_args; if (fixes_applied && use_bcftools) { stderr.writeln("NOTE: changed samtools output format to uncompressed BCF for better performance (-gu)"); } if (bcf && vcf) { throw new Exception("samtools can't be asked for both -g and -v"); } else if (bcf && uncompressed) { return FileFormat.uncompressedBCF; } else if (bcf && !uncompressed) { return FileFormat.BCF; } else if (vcf && uncompressed) { return FileFormat.VCF; } else if (vcf && !uncompressed) { // TODO throw new Exception("compressed VCF is not supported, please use bgzip and uncompressed VCF"); } else { return FileFormat.pileup; } } // input: unbundled bcftools arguments // output: detected output format FileFormat fixBcftoolsArgs(bool use_bcftools, ref string[] args, ref string[] samtools_args) { FileFormat fmt = FileFormat.VCF; bool[] keep; foreach (i; 0 .. args.length) { if (args[i] == "-o") { throw new Exception("-o argument of bcftools is disallowed, use --output-filename argument of sambamba mpileup"); } if (args[i] == "-Ov") { fmt = FileFormat.VCF; keep ~= true; } else if (args[i] == "-Oz") { // TODO throw new Exception("compressed VCF is not supported, please use bgzip and uncompressed VCF"); // fmt = FileFormat.gzippedVCF; keep ~= false; } else if (args[i] == "-Ob") { fmt = FileFormat.BCF; keep ~= true; } else if (args[i] == "-Ou") { fmt = FileFormat.uncompressedBCF; keep ~= true; } else { keep ~= true; } } string[] fixed_args; foreach (i; 0 .. args.length) { if (keep[i]) fixed_args ~= args[i]; } // When using bcftools and args is empty add these switches if (use_bcftools && fixed_args.empty) { fixed_args = ["view", "-"]; samtools_args ~= [ "-g", "-u" ]; } args = fixed_args; return fmt; } class ChunkDispatcher(ChunkRange) { private string tmp_dir_; private ChunkRange chunks_; private MultiBamReader bam_; private size_t num_, curr_num_ = 1; private int total_num_; private FileFormat format_; private std.stdio.File output_file_; private size_t max_queue_length_; private int prev_ref_id; private ulong prev_pos_diff; private size_t max_queue_data_size_; private size_t curr_queue_data_size_; private Mutex mutex_, queue_mutex_; private Condition queue_not_empty_condition_, queue_not_full_condition_; alias Tuple!(size_t, "num", char[], "data") Result; alias Array!(Result) ResultQueue; private BinaryHeap!(ResultQueue, "a.num > b.num") result_queue_; alias ElementType!(Unqual!(ChunkRange)) Chunk; this(string tmp_dir, ChunkRange chunks, MultiBamReader bam, FileFormat format, std.stdio.File output_file, size_t max_queue_length, size_t max_queue_data_size) { tmp_dir_ = tmp_dir; chunks_ = chunks; bam_ = bam; num_ = 0; total_num_ = -1; mutex_ = new Mutex(); queue_mutex_ = new Mutex(); queue_not_empty_condition_ = new Condition(queue_mutex_); queue_not_full_condition_ = new Condition(queue_mutex_); result_queue_ = heapify!("a.num > b.num", ResultQueue)(ResultQueue()); format_ = format; output_file_ = output_file; max_queue_length_ = max_queue_length; max_queue_data_size_ = max_queue_data_size; } Nullable!(Tuple!(Chunk, string, size_t)) nextChunk() { mutex_.lock(); scope(exit) mutex_.unlock(); typeof(return) chunk; if (chunks_.empty) { if (num_ == 0) total_num_ = num_.to!int(); return chunk; } if (chunks_.front.ref_id >= bam_.reference_sequences.length) { if (chunks_.front.ref_id != -1) stderr.writeln("Invalid ref. id ", chunks_.front.ref_id, " in chunk #", num_ + 1); return chunk; } ++num_; auto filename = buildPath(tmp_dir_, num_.to!string()); chunk = tuple(chunks_.front, filename, num_); chunks_.popFront(); if (chunks_.empty) { stderr.writeln("[Last chunk fetched] ", num_); total_num_ = num_.to!int(); } if (num_ > 1) { ulong diff = chunk[0].end_position - chunk[0].start_position; int ref_id = chunk[0].ref_id; if (ref_id == prev_ref_id && !chunk[0].front.reads.empty && prev_pos_diff + diff < chunk[0].front.reads[0].sequence_length) // assume reads are ~same length stderr.writeln("[WARNING] COVERAGE IS TOO HIGH, INCREASE --buffer-size TO AVOID WRONG RESULTS"); prev_pos_diff = diff; prev_ref_id = ref_id; } auto ref_name = bam_.reference_sequences[chunk[0].ref_id].name; auto f = std.stdio.File(filename ~ ".bed", "w"); if (bed_filename is null) { auto start = chunk[0].start_position; auto end = chunk[0].end_position; auto bed = BedRecord(ref_name, start, end); f.writeln(bed); } else { foreach (reg; regions) { if (chunk[0].ref_id != reg.ref_id) continue; auto start = max(reg.start, chunk[0].start_position); auto end = min(reg.end, chunk[0].end_position); if (start > end) continue; auto bed = BedRecord(ref_name, start, end); f.writeln(bed); } } f.close(); return chunk; } void queueResult(size_t num, char[] data) { synchronized(queue_mutex_) { while (true) { // wait until it's good time to put the result into the output queue if (num == curr_num_) // always put if it should be written out now break; if (result_queue_.empty) // always put if the queue is empty break; if (result_queue_.length >= max_queue_length_) { stderr.writeln("[chunk waiting for dump queue] ", num, " (output is too slow: reduce threads or improve output speed)"); queue_not_full_condition_.wait(); } else if (curr_queue_data_size_ + data.length > max_queue_data_size_) { stderr.writeln("[chunk waiting for dump queue] ", num, " (output is too large: increase buffer size)"); queue_not_full_condition_.wait(); } else { break; } } result_queue_.insert(Result(num, data)); curr_queue_data_size_ += data.length; queue_not_empty_condition_.notify(); } stderr.writeln("[chunk queued for dumping] ", num); } void dumpResults() { Result result; while (!dumpFinished()) { synchronized(queue_mutex_) { while (!hasDumpableResult()) { queue_not_empty_condition_.wait(); } result = result_queue_.front; result_queue_.popFront(); curr_queue_data_size_ -= result.data.length; ++curr_num_; queue_not_full_condition_.notifyAll(); } decompressIntoFile(result.data, format_, output_file_); stderr.writeln("[chunk dumped] ", result.num); core.stdc.stdlib.free(result.data.ptr); } } private: bool hasDumpableResult() { synchronized(queue_mutex_) { return !result_queue_.empty() && result_queue_.front.num == curr_num_; } } bool dumpFinished() { return total_num_ >= 0 && curr_num_.to!int() > total_num_; } } void worker(Dispatcher)(Dispatcher d, MultiBamReader bam, Args args) { while (true) { auto result = d.nextChunk(); if (result.isNull) return; auto chunk = result[0]; auto filename = result[1]; auto num = result[2]; makeFifo(filename); import core.sys.posix.signal; signal(SIGPIPE, SIG_IGN); auto writing_thread = new Thread(() { auto output_stream = new bio.core.utils.stream.File(filename, "w"); stderr.writeln("[opened FIFO for writing] ", filename); auto writer = new BamWriter(output_stream, 0); writer.writeSamHeader(bam.header); writer.writeReferenceSequenceInfo(bam.reference_sequences); foreach (read; chunk.reads) writer.writeRecord(read); writer.finish(); stderr.writeln("[closed FIFO] ", filename); }); auto cmd = args.makeCommandLine(filename); stderr.writeln("[executing] ", cmd); auto pp = pipeShell(cmd, Redirect.stdout); writing_thread.start(); size_t capa = 1_024_576; size_t used = 0; char* output = cast(char*)core.stdc.stdlib.malloc(capa); char[4096] buffer = void; while (true) { auto buf = pp.stdout.rawRead(buffer[]); if (buf.length == 0) break; if (used + buf.length > capa) { capa = max(capa * 2, used + buf.length); output = cast(char*)core.stdc.stdlib.realloc(cast(void*)output, capa); if (output is null) throw new Exception("failed to allocate " ~ capa.to!string ~ " bytes"); } output[used .. used + buf.length] = buf[]; used += buf.length; } writing_thread.join(); pp.pid.wait(); d.queueResult(num, output[0 .. used]); } } auto chunkDispatcher(ChunkRange)(string tmp_dir, ChunkRange chunks, MultiBamReader bam, FileFormat format, std.stdio.File output_file, size_t max_queue_length, size_t max_queue_data_size) { return new ChunkDispatcher!ChunkRange(tmp_dir, chunks, bam, format, output_file, max_queue_length, max_queue_data_size); } void printUsage() { stderr.writeln("usage: sambamba-pileup [options] input.bam [input2.bam [...]]"); stderr.writeln(" [--samtools ]"); stderr.writeln(" [--bcftools ]"); stderr.writeln(); stderr.writeln("This subcommand relies on external tools and acts as a multi-core"); stderr.writeln("implementation of samtools and bcftools."); stderr.writeln(); stderr.writeln("Therefore, the following tools should be present in $PATH:"); stderr.writeln(" * samtools"); stderr.writeln(" * bcftools (when used)"); stderr.writeln(); stderr.writeln("If --samtools is skipped, samtools mpileup is called with default arguments"); stderr.writeln("If --bcftools is used without parameters, samtools is called with"); stderr.writeln(" switch '-gu' and bcftools is called as 'bcftools view -'"); stderr.writeln("If --bcftools is skipped, bcftools is not called"); stderr.writeln(); stderr.writeln("Sambamba splits input BAM files into chunks and feeds them"); stderr.writeln("to samtools mpileup and, optionally, bcftools in parallel."); stderr.writeln("The chunks are slightly overlapping so that variant calling"); stderr.writeln("should not be impacted by these manipulations. The obtained results"); stderr.writeln("from the multiple processes are combined as ordered output."); stderr.writeln(); stderr.writeln("Sambamba options:"); // stderr.writeln(" -F, --filter=FILTER"); // stderr.writeln(" set custom filter for alignments"); stderr.writeln(" -L, --regions=FILENAME"); stderr.writeln(" provide BED file with regions"); stderr.writeln(" (no need to duplicate it in samtools args);"); stderr.writeln(" all input files must be indexed"); stderr.writeln(" -o, --output-filename="); stderr.writeln(" specify output filename"); stderr.writeln(" --tmpdir=TMPDIR"); stderr.writeln(" directory for temporary files"); stderr.writeln(" -t, --nthreads=NTHREADS"); stderr.writeln(" maximum number of threads to use"); stderr.writeln(" -b, --buffer-size=64_000_000"); stderr.writeln(" chunk size (in bytes)"); stderr.writeln(" -B, --output-buffer-size=512_000_000"); stderr.writeln(" output buffer size (in bytes)"); stderr.writeln(); stderr.writeln("Sambamba paths:\n"); samtoolsInfo(); stderr.writeln(" samtools: ", samtoolsBin, " ", samtoolsVersion); bcftoolsInfo(); stderr.writeln(" bcftools: ", bcftoolsBin, " ", bcftoolsVersion); } version(standalone) { int main(string[] args) { return pileup_main(args); } } string output_filename = null; __gshared string bed_filename = null; __gshared BamRegion[] regions; int pileup_main(string[] args) { this_app = args[0]; init(); auto bcftools_args = find(args, "--bcftools"); immutable use_bcftools = !bcftools_args.empty; auto args1 = (use_bcftools ? args[0 .. $-bcftools_args.length] : args ); auto samtools_args = find(args1, "--samtools"); auto own_args = (samtools_args.length>0 ? args1[0 .. $-samtools_args.length] : args1 ); if (!samtools_args.empty) { samtools_args.popFront(); // remove --samtools switch } else { samtools_args = []; } if (use_bcftools) { bcftools_args.popFront(); // remove the switch --bcftools } uint n_threads = defaultPoolThreads; std.stdio.File output_file = stdout; size_t buffer_size = 64_000_000; size_t output_buffer_size = 512_000_000; string tmp_dir_prefix = defaultTmpDir(); try { getopt(own_args, std.getopt.config.caseSensitive, "regions|L", &bed_filename, //"filter|F", &query, "output-filename|o", &output_filename, "tmpdir", &tmp_dir_prefix, "nthreads|t", &n_threads, "buffer-size|b", &buffer_size, "output-buffer-size|B", &output_buffer_size); if (own_args.length < 2) { printUsage(); return 0; } samtoolsInfo(); // initialize samtools path before threading if (use_bcftools) bcftoolsInfo(); // initialize bcftools path before threading stderr.writeln("samtools mpileup options: ", samtools_args.join(" ")); if (use_bcftools) stderr.writeln("bcftools options: ", bcftools_args.join(" ")); if (output_filename != null) { foreach (filename; own_args[1 .. $]) protectFromOverwrite(filename, output_filename); output_file = std.stdio.File(output_filename, "w+"); } defaultPoolThreads = n_threads; auto bam = new MultiBamReader(own_args[1 .. $]); string tmp_dir = randomSubdir(tmp_dir_prefix); scope(exit) rmdirRecurse(tmp_dir); auto bundled_args = Args(samtools_args, use_bcftools, bcftools_args); InputRange!BamRead reads; if (bed_filename is null) { reads = inputRangeObject(bam.reads().map!`a.read`); } else { regions = parseBed(bed_filename, bam); reads = inputRangeObject(bam.getReadsOverlapping(regions).map!`a.read`); } auto chunks = reads.pileupChunks(false, buffer_size); auto dispatcher = chunkDispatcher(tmp_dir, chunks, bam, bundled_args.input_format, output_file, 2 * n_threads, output_buffer_size); auto writer = new Thread(&dispatcher.dumpResults); writer.start(); auto threads = new ThreadGroup(); scope (exit) { output_file.close(); } foreach (i; 0 .. max(1, n_threads)) threads.create(() { worker(dispatcher, bam, bundled_args); }); threads.joinAll(); writer.join(); stderr.writeln("[Successful exit]"); return 0; } catch (Exception e) { stderr.writeln("sambamba-pileup: ", e.msg); debug { throw e; } else { version(development) { throw e; } return 1; } } } sambamba-0.6.7/sambamba/slice.d000066400000000000000000000310431320451002000162620ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2014 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.slice; import bio.bam.reader; import bio.bam.writer; import bio.bam.constants; import bio.core.bgzf.block; import bio.core.bgzf.compress; import bio.core.utils.stream; import bio.core.region; import std.array; import std.algorithm; import undead.stream; import std.getopt; import std.parallelism; import std.conv; import std.stdio; import std.exception; import sambamba.utils.common.bed; import sambamba.utils.common.overwrite; /** Consider interval [beg .. end) on the reference, where 0 <= beg < end. Let R1 = { read from BAM file | read overlaps [beg .. end), read.position < beg }, R2 = { read from BAM file | beg <= read.position < end }, s1_start_offset = virtual offset of the first read that overlaps [beg .. end) s2_start_offset = virtual offset of the first read whose position >= beg s2_end_offset = virtual offset of the first read whose position >= end /\/\/\/\/\/\/\/\/\/\/\/\/#########============== ... =============##### BGZF blocks ..........)[...........)[..........)[..........)[. ... ....)[.........)[....... . . . s1_start_offset s2_start_offset s2_end_offset /\/\/\/\/\/\/\/\/\/\/\/\/###### ... ...)[..........)[...........)[..........)[..........)[. ... ....)[.........)[....... . . . s1_start_offset s2_start_offset, s2_end_offset These numbers are not correctly defined in some cases, so let's extend their definitions. 1) There are no reads that overlap [beg .. end) (R1 and R2 are empty) Set all three numbers to the virtual offset of the end of file. 2) There are no reads that have position >= beg (R2 is empty) Set both s2_start_offset and s2_end_offset to the end virtual offset of the last read in R1. 3) There are reads that have position >= beg, but no one with position >= end Set s2_end_offset to the end virtual offset of the last read from current reference. Define sets S1 = { read | s1_start_offset <= read.start_virtual_offset < s2_start_offset }, S2 = { read | s2_start_offset <= read.start_virtual_offset < s2_end_offset } Notice that R1 is a subset of S1, and R2 = S2. Now we divide the algorithm into subcases. 1) Both R1 and R2 are empty. Output BAM file with no reads. 2) R1 is not empty, R2 is empty. Output BAM file with reads from R1, creating new BGZF blocks for all of them. 3) R1 is empty, R2 is not empty. First of all, output BAM header and reference sequences information. Take first read from R2. Adjust its first BGZF block by chomping s2_start_offset.uoffset from the left, and output it. Set start_offset to the start file offset of the next BGZF block. Take last read from R2. Adjust its last BGZF block by chomping everything after the end of the alignment record. Set end_offset to the start file offset of this BGZF block. Output first adjusted block, then copy of file since start_offset till end_offset, then second adjusted block. (It may turn out that after chomping some of blocks are empty. In this case we skip them.) 4) R1 and R2 are not empty. Since R1 and R2 are disjoint, combine approaches 2) and 3) */ void fetchRegions(BamReader bam, Region[] regions, ref Stream stream) { auto filename = bam.filename; auto eof_offset = bam.eofVirtualOffset(); // write header and reference sequence information auto writer = new BamWriter(stream); writer.writeSamHeader(bam.header); writer.writeReferenceSequenceInfo(bam.reference_sequences); foreach(Region region; regions) { auto chr = region.reference; auto beg = region.beg; auto end = region.end; auto reads1 = bam[chr][beg .. end]; VirtualOffset s1_start_offset; VirtualOffset s2_start_offset; VirtualOffset s2_end_offset = eof_offset; if (reads1.empty) { s1_start_offset = s2_start_offset = eof_offset; } else { s1_start_offset = s2_start_offset = reads1.front.start_virtual_offset; } // Set R1 auto r1 = appender!(typeof(reads1.front)[])(); while (!reads1.empty) { auto front = reads1.front; if (front.position < beg) { r1.put(front); s2_start_offset = front.end_virtual_offset; reads1.popFront(); } else { break; } } auto reference = bam[chr]; if (end == uint.max) end = reference.length; auto reads2 = reference[end .. uint.max]; if (reads1.empty && reads2.empty) { // are there any reads with position >= beg? s2_end_offset = s2_start_offset; } else if (!reads1.empty && reads2.empty) { // are there any reads with position >= end? s2_end_offset = bam[chr].endVirtualOffset(); } else { foreach (read; reads2) { s2_end_offset = read.start_virtual_offset; if (read.position >= end) { break; } } } // write R1 foreach (read; r1.data) writer.writeRecord(read); // Flush the BamWriter before our copyAsIs call. writer.flush(); copyAsIs(bam, stream, s2_start_offset, s2_end_offset); } // write EOF stream.writeExact(BAM_EOF.ptr, BAM_EOF.length); } void fetchUnmapped(BamReader bam, Stream stream) { auto writer = new BamWriter(stream); writer.writeSamHeader(bam.header); writer.writeReferenceSequenceInfo(bam.reference_sequences); writer.flush(); auto unmapped_reads = bam.unmappedReads(); if (!unmapped_reads.empty) { copyAsIs(bam, stream, unmapped_reads.front.start_virtual_offset, bam.eofVirtualOffset()); } stream.writeExact(BAM_EOF.ptr, BAM_EOF.length); } version (Linux) { import core.sys.posix.fcntl; extern(C) int posix_fadvise(int, off_t, off_t, int); } void copyAsIs(BamReader bam, Stream stream, VirtualOffset s2_start_offset, VirtualOffset s2_end_offset) { // R2 is non-empty if (s2_start_offset < s2_end_offset) { // Either R2 is fully contained in one BGZF block... if (s2_start_offset.coffset == s2_end_offset.coffset) { // write chomped block auto block = bam.getBgzfBlockAt(s2_start_offset.coffset); auto data = decompressBgzfBlock(block).decompressed_data; data = data[s2_start_offset.uoffset .. s2_end_offset.uoffset]; stream.write(bgzfCompress(data, -1)); } else { // ...or it spans several of them. // left chomped block auto block1 = bam.getBgzfBlockAt(s2_start_offset.coffset); auto copy_start_offset = block1.end_offset; auto data1 = decompressBgzfBlock(block1).decompressed_data; data1 = data1[s2_start_offset.uoffset .. $]; if (data1.length > 0) { stream.write(bgzfCompress(data1, -1)); } // right chomped block auto block2 = bam.getBgzfBlockAt(s2_end_offset.coffset); auto data2 = decompressBgzfBlock(block2).decompressed_data; data2 = data2[0 .. s2_end_offset.uoffset]; auto copy_end_offset = s2_end_offset.coffset; enum N = 8192; ubyte[N] copy_buffer; auto file_stream = new bio.core.utils.stream.File(bam.filename); version (Linux) { off_t offset = copy_start_offset; off_t len = copy_end_offset - copy_start_offset; immutable int POSIX_FADV_SEQUENTIAL = 2; posix_fadvise(file_stream.handle, offset, len, POSIX_FADV_SEQUENTIAL); } file_stream.seekSet(copy_start_offset); size_t curpos = cast(size_t)copy_start_offset; while (copy_end_offset - curpos > N) { file_stream.readExact(copy_buffer.ptr, N); stream.writeExact(copy_buffer.ptr, N); curpos += N; } file_stream.readExact(copy_buffer.ptr, cast(size_t)copy_end_offset - curpos); stream.writeExact(copy_buffer.ptr, cast(size_t)copy_end_offset - curpos); if (data2.length > 0) stream.write(bgzfCompress(data2, -1)); } } } void printUsage() { stderr.writeln("Usage: sambamba-slice [options] [region1 [...]]"); stderr.writeln(); stderr.writeln(" Fast copy of a region from indexed BAM file to a new file"); stderr.writeln(); stderr.writeln(" Regions are given in standard form ref:beg-end."); stderr.writeln(" In addition, region '*' denotes reads with no reference."); stderr.writeln(" Output is to STDOUT unless output filename is specified."); stderr.writeln(); stderr.writeln("OPTIONS: -o, --output-filename=OUTPUT_FILENAME"); stderr.writeln(" output BAM filename"); stderr.writeln(" -L, --regions=FILENAME"); stderr.writeln(" output only reads overlapping one of regions from the BED file"); } version(standalone) { int main(string[] args) { return slice_main(args); } } int slice_main(string[] args) { // at least two arguments must be presented string output_filename = null; string bed_filename = null; try { getopt(args, std.getopt.config.caseSensitive, "output-filename|o", &output_filename, "regions|L", &bed_filename); // Check that an input file was specified. if (args.length < 2) { printUsage(); return 0; } // Either a bed file or a set of regions needs to be specified. if (bed_filename is null && args.length < 3) { throw new Exception("Must provide either a bed file or list of regions."); } // But you can't provide both a bed file AND a set of regions. if (bed_filename.length > 0 && args.length > 2) { throw new Exception("specifying both region and BED filename is disallowed"); } protectFromOverwrite(args[1], output_filename); import std.parallelism; defaultPoolThreads = 2; auto bam = new BamReader(args[1]); Stream stream; scope(exit) stream.close(); if (output_filename != null) { stream = new undead.stream.BufferedFile(output_filename, FileMode.OutNew); } else { immutable BUFSIZE = 1_048_576; version (Posix) { auto handle = stdout.fileno; } version (Windows) { import core.sys.windows.windows; auto handle = GetStdHandle(STD_OUTPUT_HANDLE); } stream = new undead.stream.BufferedFile(handle, FileMode.Out, BUFSIZE); } if (bed_filename is null && args[2] == "*") { fetchUnmapped(bam, stream); } else { Region[] regions; if (bed_filename !is null) { auto bam_regions = parseBed(bed_filename, bam); regions = bam_regions.map!(r => Region(bam.reference(r.ref_id).name, r.start, r.end)).array; } else { regions = map!parseRegion(args[2 .. $]).array; } fetchRegions(bam, regions, stream); } } catch (Exception e) { stderr.writeln("sambamba-slice: ", e); version (development) { throw e; } return 1; } return 0; } sambamba-0.6.7/sambamba/sort.d000066400000000000000000000466051320451002000161640ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2014 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.sort; import bio.bam.reader; import bio.bam.writer; import bio.sam.header; import bio.bam.read; import bio.bam.splitter; import bio.core.utils.tmpfile; import std.range; import std.datetime; import std.algorithm; import std.traits; import std.array; import std.ascii; import std.numeric; import std.parallelism; import std.getopt; import std.path; import std.file; import undead.stream; import std.stdio; import std.typecons; import core.atomic; import core.stdc.stdlib; import core.stdc.string; import sambamba.utils.common.progressbar; import sambamba.utils.common.overwrite; import sambamba.utils.common.tmpdir; import sambamba.utils.common.filtering; import sambamba.utils.common.file; import thirdparty.mergesort; void printUsage() { stderr.writeln("Usage: sambamba-sort [options] "); stderr.writeln(); stderr.writeln("Options: -m, --memory-limit=LIMIT"); stderr.writeln(" approximate total memory limit for all threads (by default 2GB)"); stderr.writeln(" --tmpdir=TMPDIR"); stderr.writeln(" directory for storing intermediate files; default is system directory for temporary files"); stderr.writeln(" -o, --out=OUTPUTFILE"); stderr.writeln(" output file name; if not provided, the result is written to a file with .sorted.bam extension"); stderr.writeln(" -n, --sort-by-name"); stderr.writeln(" sort by read name instead of coordinate (lexicographical order)"); stderr.writeln(" -N, --natural-sort"); stderr.writeln(" sort by read name instead of coordinate (so-called 'natural' sort as in samtools)"); stderr.writeln(" -l, --compression-level=COMPRESSION_LEVEL"); stderr.writeln(" level of compression for sorted BAM, from 0 to 9"); stderr.writeln(" -u, --uncompressed-chunks"); stderr.writeln(" write sorted chunks as uncompressed BAM (default is writing with compression level 1), that might be faster in some cases but uses more disk space"); stderr.writeln(" -p, --show-progress"); stderr.writeln(" show progressbar in STDERR"); stderr.writeln(" -t, --nthreads=NTHREADS"); stderr.writeln(" use specified number of threads"); stderr.writeln(" -F, --filter=FILTER"); stderr.writeln(" keep only reads that satisfy FILTER"); } version(standalone) { int main(string[] args) { return sort_main(args); } } private __gshared bool sort_by_name; private __gshared bool natural_sort; private bool show_progress; private shared(ProgressBar) bar; private shared(float[]) weights; private shared(float[]) merging_progress; class Sorter { BamReader bam; TaskPool task_pool; size_t memory_limit = 2u * 1024 * 1024 * 1024; string tmpdir; int compression_level = -1; bool uncompressed_chunks = false; string output_filename = null; string filename = null; string filter_str = null; this() { tmpdir = defaultTmpDir(); } struct UnsortedChunk { size_t max_sz; this(size_t max_total_size) { max_sz = max_total_size; while (read_storage is null && max_sz > 65536) { read_storage = cast(ubyte*)core.stdc.stdlib.malloc(max_sz); if (read_storage is null) max_sz /= 2; } _reads_capa = 1024; auto sz = BamRead.sizeof * _reads_capa; _reads = cast(BamRead*)core.stdc.stdlib.malloc(sz); if (_reads is null) { throw new Exception("alloc failed: no space for read pointers"); } } void clear() { _used = 0; _n_reads = 0; if (_low_memory) { auto realloc_storage = cast(ubyte*)core.stdc.stdlib.realloc(read_storage, max_sz / 2); if (realloc_storage !is null) { max_sz /= 2; read_storage = realloc_storage; stderr.writeln("reduced maximum buffer size to ", max_sz); } _low_memory = false; } } void fill(R)(R* reads) { while (!reads.empty) { auto read = reads.front; auto len = read.raw_data.length; if (len + _used > max_sz) break; if (_n_reads == _reads_capa) { auto realloc_reads = cast(BamRead*)core.stdc.stdlib.realloc(_reads, 2 * _reads_capa * BamRead.sizeof); if (realloc_reads is null) { _low_memory = true; stderr.writeln("realloc failed: system low on memory, limited to ", _reads_capa, " reads in buffer"); break; } else { _reads_capa *= 2; _reads = realloc_reads; } } core.stdc.string.memcpy(read_storage + _used, read.raw_data.ptr, len); _reads[_n_reads].raw_data = read_storage[_used .. _used + len]; _reads[_n_reads].associateWithReader(read.reader); _n_reads += 1; _used += len; reads.popFront(); } if (_n_reads == 0) { auto read = reads.front; auto len = read.raw_data.length; assert(len > max_sz); _n_reads = 1; auto realloc_storage = cast(ubyte*)core.stdc.stdlib.realloc(read_storage, len); if (realloc_storage is null) { throw new Exception("realloc failed: not enough memory for read"); } else { read_storage = realloc_storage; max_sz = len; } _used = len; read_storage[0 .. len] = read.raw_data[]; _reads[0].raw_data = read_storage[0 .. _used]; _reads[0].associateWithReader(read.reader); reads.popFront(); } } void free() { core.stdc.stdlib.free(read_storage); core.stdc.stdlib.free(_reads); } BamRead[] reads() @property { return _reads[0 .. _n_reads]; } BamRead* _reads; size_t _reads_capa; size_t _n_reads; ubyte* read_storage; size_t _used; bool _low_memory; } static BamRead[] sortChunk(size_t n, BamRead[] chunk, TaskPool task_pool) { version (development) { StopWatch sw; sw.start(); stderr.writeln("Sorting chunk #", n, "..."); } auto buf = cast(BamRead*)core.stdc.stdlib.malloc(chunk.length * BamRead.sizeof); BamRead[] tmp = buf[0 .. chunk.length]; scope (exit) core.stdc.stdlib.free(buf); if (sort_by_name) { mergeSort!(compareReadNames, false)(chunk, task_pool, tmp); } else if (natural_sort) { mergeSort!(mixedCompareReadNames, false)(chunk, task_pool, tmp); } else { mergeSort!(compareCoordinatesAndStrand, false)(chunk, task_pool, tmp); } version (development) { stderr.writeln("Finished sorting of chunk #", n, " in ", sw.peek().seconds, "s"); } return chunk; } void sort() { auto filter = createFilterFromQuery(filter_str); createHeader(); size_t buf_size = 16_000_000; bam.setBufferSize(buf_size); bam.assumeSequentialProcessing(); auto output_buffer_ptr = cast(ubyte*)core.stdc.stdlib.malloc(buf_size); output_buffer = output_buffer_ptr[0 .. buf_size]; scope(exit)core.stdc.stdlib.free(output_buffer_ptr); if (show_progress) { stderr.writeln("Writing sorted chunks to temporary directory..."); bar = new shared(ProgressBar)(); auto reads = bam.readsWithProgress( (lazy float p){ bar.update(p); } ); auto filtered_reads = filtered(reads, filter); writeSortedChunks(filtered_reads); bar.finish(); } else { auto filtered_reads = filtered(bam.reads!withoutOffsets(), filter); writeSortedChunks(filtered_reads); } scope(success) { if (tmpfiles.length > 1) { // if length == 1, the file was moved foreach (tmpfile; tmpfiles) { remove(tmpfile); } } } if (sort_by_name) mergeSortedChunks!compareReadNames(); else if (natural_sort) mergeSortedChunks!mixedCompareReadNames(); else mergeSortedChunks!compareCoordinatesAndStrand(); } private void createHeader() { header = bam.header; header.sorting_order = (sort_by_name || natural_sort) ? SortingOrder.queryname : SortingOrder.coordinate; } private size_t k; // number of sorting tasks submitted private void writeSortedChunks(R)(R reads_) { auto buf1 = UnsortedChunk(memory_limit / 2); auto buf2 = UnsortedChunk(memory_limit / 2); scope(exit) { buf1.free(); buf2.free(); } version (development) { StopWatch sw; sw.start(); scope(exit) { sw.stop(); stderr.writeln("Wrote ", num_of_chunks, " sorted chunk", num_of_chunks == 1 ? "" : "s", " in ", sw.peek().seconds, " seconds"); } } Task!(sortChunk, size_t, BamRead[], TaskPool)* sorting_task; auto reads = reads_; // 1) fill buf1 // 2) sort buf1 in parallel with filling buf2 // 3) dump buf1 // 4) sort buf2 in parallel with filling buf1 // ... while (!reads.empty) { buf1.clear(); version(development) { stderr.writeln("Reading chunk #", k + 1); StopWatch sw_inner; sw_inner.start(); } buf1.fill(&reads); version(development) stderr.writeln("Finished reading of chunk #", k + 1, " in ", sw_inner.peek().seconds, "s"); BamRead[] sorted_reads; if (sorting_task !is null) sorted_reads = sorting_task.yieldForce(); sorting_task = task!sortChunk(k + 1, buf1.reads, task_pool); task_pool.put(sorting_task); ++k; if (sorted_reads.length > 0) dump(sorted_reads); swap(buf1, buf2); } version(development) stderr.writeln("waiting for the last sorting task..."); if (sorting_task !is null) dump(sorting_task.yieldForce()); // handle empty BAM file case if (k == 0) { ++k; dump([]); } } private ubyte[] output_buffer; // if there's more than one chunk, first call to dump will be when k == 2 // because we first submit sorting task and only when dump previous chunk private void dump(BamRead[] sorted_reads) { version(development) { stderr.writeln("Dumping chunk #", num_of_chunks + 1, " to disk..."); StopWatch sw; sw.start(); } int level = uncompressed_chunks ? 0 : 1; string fn; if (k <= 1) { level = compression_level; fn = output_filename; } else { fn = tmpFile(chunkBaseName(filename, num_of_chunks), tmpdir); tmpfiles ~= fn; } auto stream = bufferedFile(fn, FileMode.OutNew, 0); stream.buffer = output_buffer; scope(failure) stream.close(); // if there's only one chunk, we will write straight to the output file auto writer = scoped!BamWriter(stream, level, task_pool, 32_000_000); writer.setFilename(fn); writer.writeSamHeader(header); writer.writeReferenceSequenceInfo(bam.reference_sequences); foreach (read; sorted_reads) writer.writeRecord(read); writer.finish(); version(development) stderr.writeln("Finished dumping of chunk #", num_of_chunks + 1, " in ", sw.peek().seconds, "s"); num_of_chunks += 1; } private void mergeSortedChunks(alias comparator)() { if (num_of_chunks <= 1) { // dump() wrote it to destination already return; } version(development) { StopWatch sw; sw.start(); scope(exit) { sw.stop(); stderr.writeln("Merging took ", sw.peek().seconds, " seconds"); } } auto input_buf_size = min(16_000_000, memory_limit / 4 / num_of_chunks); auto output_buf_size = min(64_000_000, memory_limit / 6); auto stream = bufferedFile(output_filename, FileMode.OutNew, output_buf_size); scope(failure) stream.close(); alias ReturnType!(BamReader.readsWithProgress!withoutOffsets) AlignmentRangePB; auto alignmentranges = new AlignmentRangePB[num_of_chunks]; if (show_progress) { stderr.writeln("Merging sorted chunks..."); weights.length = num_of_chunks; merging_progress.length = num_of_chunks; merging_progress[] = 0.0; bar = new shared(ProgressBar)(); foreach (i; 0 .. num_of_chunks) { weights[i] = std.file.getSize(tmpfiles[i]); // set file size as weight } normalize(cast()weights); } foreach (i; 0 .. num_of_chunks) { auto bamfile = new BamReader(tmpfiles[i], task_pool); bamfile.setBufferSize(input_buf_size); bamfile.assumeSequentialProcessing(); if (show_progress) alignmentranges[i] = bamfile.readsWithProgress( // WTF is going on here? See this thread: // http://forum.dlang.org/thread/mailman.112.1341467786.31962.digitalmars-d@puremagic.com (size_t j) { return (lazy float progress) { atomicStore(merging_progress[j], progress); synchronized (bar) { bar.update(dotProduct(merging_progress, weights)); } }; }(i)); else alignmentranges[i] = bamfile.readsWithProgress(null); } auto writer = scoped!BamWriter(stream, compression_level, task_pool, 2 * output_buf_size); writer.setFilename(output_filename); scope(exit) writer.finish(); writer.writeSamHeader(header); writer.writeReferenceSequenceInfo(bam.reference_sequences); foreach (read; nWayUnion!comparator(alignmentranges)) writer.writeRecord(read); if (show_progress) bar.finish(); } private { SamHeader header; string[] tmpfiles; // temporary file names size_t num_of_chunks; // number of temporary files } } int sort_main(string[] args) { if (args.length < 2) { printUsage(); return 0; } try { string memory_limit_str = null; uint n_threads = totalCPUs; auto sorter = scoped!Sorter(); getopt(args, std.getopt.config.caseSensitive, "memory-limit|m", &memory_limit_str, "tmpdir", &sorter.tmpdir, "out|o", &sorter.output_filename, "sort-by-name|n", &sort_by_name, "natural-sort|N", &natural_sort, "uncompressed-chunks|u", &sorter.uncompressed_chunks, "compression-level|l", &sorter.compression_level, "show-progress|p", &show_progress, "nthreads|t", &n_threads, "filter|F", &sorter.filter_str); if (sort_by_name && natural_sort) { stderr.writeln("only one of -n and -N parameters can be provided"); return -1; } if (sorter.output_filename is null) { sorter.output_filename = setExtension(args[1], "sorted.bam"); } protectFromOverwrite(args[1], sorter.output_filename); sorter.tmpdir = randomSubdir(sorter.tmpdir); if (memory_limit_str !is null) { sorter.memory_limit = parseMemory(memory_limit_str); if (sorter.memory_limit / max(n_threads, 1) < 100_000) { throw new Exception("memory limit per thread can't be less than 100Kb"); } } sorter.memory_limit = (sorter.memory_limit * 5) / 6; sorter.task_pool = new TaskPool(n_threads); scope(exit) sorter.task_pool.finish(); sorter.bam = new BamReader(args[1], sorter.task_pool); sorter.filename = args[1]; import core.memory; GC.disable(); sorter.sort(); try { std.file.rmdirRecurse(sorter.tmpdir); } catch (FileException e) { // Ignore errors removing temporary directories, due to NFS failure under load // https://github.com/chapmanb/bcbio-nextgen/issues/784 } return 0; } catch (Throwable e) { version (development) { throw e; } else { stderr.writeln("sambamba-sort: ", e.msg); } return 1; } } /// parses \d+K, \d+M, \d+G size_t parseMemory(string str) { auto initial_str = str.idup; size_t sz = 0; while (!str.empty) { if (isDigit(str[0])) sz *= 10, sz += str[0] - '0'; else break; str = str[1 .. $]; } if (str.empty) return sz; switch (str) { case "K": case "KiB": return sz << 10; case "KB": return sz * 1_000; case "M": case "MiB": return sz << 20; case "MB": return sz * 1_000_000; case "G": case "GiB": return sz << 30; case "GB": return sz * 1_000_000_000; default: throw new Exception("couldn't parse ", initial_str); } } /// Base name of the file corresponding to chunk number $(D chunk_num) /// /// Params: /// unsorted_fn - filename of unsorted BAM /// chunk_num - 0-based index of the chunk /// string chunkBaseName(string unsorted_fn, size_t chunk_num) { return baseName(unsorted_fn) ~ "." ~ to!string(chunk_num); } sambamba-0.6.7/sambamba/utils/000077500000000000000000000000001320451002000161555ustar00rootroot00000000000000sambamba-0.6.7/sambamba/utils/common/000077500000000000000000000000001320451002000174455ustar00rootroot00000000000000sambamba-0.6.7/sambamba/utils/common/bed.d000066400000000000000000000114321320451002000203450ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2013-2015 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.utils.common.bed; import std.stdio; import std.algorithm; import std.string; import std.conv; import std.file; import std.math; import std.array; import std.range; import std.typecons; struct Interval { long beg; long end; } Interval[] nonOverlappingIntervals(Interval[] list) { if (list.length == 0) return []; sort!"a.beg < b.beg"(list); size_t cur_position = 0; auto cur = list[0]; foreach (interval; list[1 .. $]) { if (cur.end >= interval.beg) { cur.end = max(cur.end, interval.end); } else { list[cur_position++] = cur; cur = interval; } } list[cur_position++] = cur; return list[0 .. cur_position]; } alias Interval[][string] BedIndex; // TODO: rewrite this mess BedIndex readIntervals(string bed_filename, bool non_overlapping=true, string[]* lines=null, Tuple!(string, Interval)[]* intervals=null) { BedIndex index; auto bed = cast(string)(readText(bed_filename)); foreach (str; bed.splitter('\n')) { auto fields = split(str); if (fields.length < 2) continue; string chr = fields[0]; Interval interval; if (fields.length >= 3) { interval.beg = to!long(fields[1]); interval.end = to!long(fields[2]); } else if (fields.length >= 2) { interval.beg = to!long(fields[1]); interval.end = interval.beg + 1; } if (interval.beg == interval.end) interval.end = interval.beg + 1; if (interval.beg < interval.end) { if (lines is null) index[chr] ~= interval; else (*intervals) ~= tuple(chr, interval); } if (lines !is null) { (*lines) ~= str; } } if (non_overlapping) { foreach (k, ref v; index) { v = nonOverlappingIntervals(v); } } return index; } bool hasOverlap(const(Interval[]) intervals_, Interval interval) { auto intervals = intervals_[]; auto r = intervals.assumeSorted!"a.beg < b.beg".upperBound(Interval(interval.end - 1, -1)); intervals = intervals[0 .. $ - r.length]; auto l = intervals.assumeSorted!"a.end < b.end".lowerBound(Interval(-1, interval.beg + 1)); return intervals.length != l.length; } unittest { alias Interval I; BedIndex index = [ "1": nonOverlappingIntervals([I(5, 8), I(7, 10), I(22, 25), I(23, 24), I(14, 17)]) ]; assert( index["1"] == [I(5, 10), I(14, 17), I(22, 25)]); assert(!index["1"].hasOverlap(I(11, 14))); assert( index["1"].hasOverlap(I(13, 15))); assert(!index["1"].hasOverlap(I(0, 4))); assert(!index["1"].hasOverlap(I(0, 5))); assert( index["1"].hasOverlap(I(0, 6))); assert( index["1"].hasOverlap(I(9, 10))); assert(!index["1"].hasOverlap(I(25, 42))); assert( index["1"].hasOverlap(I(22, 23))); assert(!index["1"].hasOverlap(I(22, 22))); assert(!index["1"].hasOverlap(I(20, 22))); } import bio.bam.reader; public import bio.bam.region; BamRegion[] parseBed(Reader)(string bed_filename, Reader bam, bool non_overlapping=true, string[]* bed_lines=null) { Tuple!(string, Interval)[] ivs; auto index = readIntervals(bed_filename, non_overlapping, bed_lines, &ivs); BamRegion[] regions; if (non_overlapping) { foreach (reference, intervals; index) { if (!bam.hasReference(reference)) continue; auto id = bam[reference].id; foreach (interval; intervals) regions ~= BamRegion(cast(uint)id, cast(uint)interval.beg, cast(uint)interval.end); } std.algorithm.sort(regions); } else { foreach (t; ivs) { if (!bam.hasReference(t[0])) continue; auto id = bam[t[0]].id; regions ~= BamRegion(cast(uint)id, cast(uint)t[1].beg, cast(uint)t[1].end); } } return regions; } sambamba-0.6.7/sambamba/utils/common/file.d000066400000000000000000000005141320451002000205310ustar00rootroot00000000000000module sambamba.utils.common.file; import undead.stream; import std.stdio; BufferedFile bufferedFile(string fn, undead.stream.FileMode mode, size_t buffer_size=8192) { if (fn == "-") return new BufferedFile(std.stdio.stdout.fileno, mode, buffer_size); else return new BufferedFile(fn, mode, buffer_size); } sambamba-0.6.7/sambamba/utils/common/filtering.d000066400000000000000000000253761320451002000216120ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2013-2016 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.utils.common.filtering; import bio.bam.splitter; import bio.bam.region; import sambamba.utils.common.queryparser; import sambamba.utils.common.intervaltree; import std.algorithm; import std.stdio; import std.random; import std.parallelism; import std.range; import std.algorithm; import std.array; import std.string : representation; auto filtered(R)(R reads, Filter f) { return reads.zip(f.repeat()).filter!q{a[1].accepts(a[0])}.map!"a[0]"(); } Filter createFilterFromQuery(string query) { if (query == "") return new NullFilter(); auto query_grammar = new QueryGrammar(); auto node = query_grammar.parse(query); auto condition_node = cast(ConditionNode) node; if (condition_node is null) { stderr.writeln("filter string must represent a condition"); return null; } return condition_node.condition; } /** Set of filters for alignments. All share a common interface and can be easily combined. */ import std.regex; import std.algorithm; import std.conv; import bio.bam.read; import bio.bam.tagvalue; import bio.bam.validation.alignment; /// Common interface for all filters interface Filter { bool accepts(ref BamRead a); } /// Filter which accepts all alignments final class NullFilter : Filter { bool accepts(ref BamRead a) { return true; } } /// Validating filter final class ValidAlignmentFilter : Filter { bool accepts(ref BamRead a) { return isValid(a); } } /// Intersection of two filters final class AndFilter : Filter { private Filter _a, _b; this(Filter a, Filter b) { _a = a; _b = b; } bool accepts(ref BamRead a) { return _a.accepts(a) && _b.accepts(a); } } /// Union of two filters final class OrFilter : Filter { private Filter _a, _b; this(Filter a, Filter b) { _a = a, _b = b; } bool accepts(ref BamRead a) { return _a.accepts(a) || _b.accepts(a); } } /// Negation of a filter final class NotFilter : Filter { private Filter _a; this(Filter a) { _a = a; } bool accepts(ref BamRead a) { return !_a.accepts(a); } } /// Checks if read overlaps one of regions final class BedFilter : Filter { private { alias IntervalTree!(void, uint) intervalTree; alias IntervalTreeNode!(void, uint) intervalTreeNode; intervalTree[] trees_; } this(BamRegion[] bed) { // assumes that regions are sorted trees_.length = bed.back.ref_id + 1; size_t start_index = 0; size_t end_index = start_index; intervalTreeNode[] intervals; while (start_index < bed.length) { while (end_index < bed.length && bed[end_index].ref_id == bed[start_index].ref_id) ++end_index; intervals.length = end_index - start_index; foreach (i; 0 .. intervals.length) { auto start = bed[start_index + i].start; auto stop = bed[start_index + i].end; intervals[i] = new intervalTreeNode(start, stop); } trees_[bed[start_index].ref_id] = new intervalTree(intervals); start_index = end_index; } } bool accepts(ref BamRead a) { if (a.ref_id < 0 || a.ref_id >= trees_.length || trees_[a.ref_id] is null) return false; auto start = a.position; auto end = start + a.basesCovered(); foreach (overlap; trees_[a.ref_id].eachOverlap(start, end)) { return true; } return false; } } /// Filter alignments which has $(D flagname) flag set final class FlagFilter(string flagname) : Filter { bool accepts(ref BamRead a) { mixin("return a." ~ flagname ~ ";"); } } final class ChimericFilter : Filter { bool accepts(ref BamRead a) { return a.is_paired && !a.is_unmapped && !a.mate_is_unmapped && a.ref_id != a.mate_ref_id; } } final class FlagBitFilter : Filter { private ushort _bits_set, _bits_unset; this(ushort bits_set, ushort bits_unset) { _bits_set = bits_set; _bits_unset = bits_unset; } bool accepts(ref BamRead a) { return ((a.flag & _bits_set) == _bits_set) && ((a.flag & _bits_unset) == 0); } } float avg_base_quality(BamRead r) { return reduce!"a+b"(0.0f, r.base_qualities)/r.sequence_length; } /// Filtering integer fields final class IntegerFieldFilter(string op) : Filter { private long _value; private string _fieldname; this(string fieldname, long value) { _fieldname = fieldname; _value = value; } bool accepts(ref BamRead a) { switch(_fieldname) { case "ref_id": mixin("return a.ref_id " ~ op ~ "_value;"); case "position": mixin("return a.position " ~ op ~ "_value;"); case "mapping_quality": mixin("return a.mapping_quality " ~ op ~ "_value;"); case "avg_base_quality": mixin("return a.avg_base_quality " ~ op ~ "_value;"); case "sequence_length": mixin("return a.sequence_length " ~ op ~ "_value;"); case "mate_ref_id": mixin("return a.mate_ref_id " ~ op ~ "_value;"); case "mate_position": mixin("return a.mate_position " ~ op ~ "_value;"); case "template_length": mixin("return a.template_length " ~ op ~ "_value;"); default: throw new Exception("unknown integer field '" ~ _fieldname ~ "'"); } } } final class TagExistenceFilter(string op) : Filter { static assert(op == "==" || op == "!="); private string _tagname; private static bool _should_exist = op == "!="; this(string tagname, typeof(null) dummy) { _tagname = tagname; } bool accepts(ref BamRead a) { auto v = a[_tagname]; if (_should_exist) return !v.is_nothing; else return v.is_nothing; } } /// Filtering integer tags final class IntegerTagFilter(string op) : Filter { private long _value; private string _tagname; this(string tagname, long value) { _tagname = tagname; _value = value; } bool accepts(ref BamRead a) { auto v = a[_tagname]; if (!v.is_integer && !v.is_float) return false; if (v.is_float) { mixin(`return cast(float)v` ~ op ~ `_value;`); } else { mixin(`return cast(long)v` ~ op ~ `_value;`); } } } /// Filtering string fields final class StringFieldFilter(string op) : Filter { private string _value; private string _fieldname; this(string fieldname, string value) { _fieldname = fieldname; _value = value; } bool accepts(ref BamRead a) { switch(_fieldname) { case "read_name": mixin("return a.name " ~ op ~ " _value;"); case "sequence": mixin("return cmp(a.sequence, _value) " ~ op ~ " 0;"); case "cigar": mixin("return a.cigarString() " ~ op ~ " _value;"); case "strand": mixin("return a.strand " ~ op ~ " _value[0];"); // FIXME: a separate filter would be cleaner case "ref_name": mixin("return a.ref_name " ~ op ~ " _value;"); case "mate_ref_name": mixin("return a.mate_ref_name " ~ op ~ " _value;"); default: throw new Exception("unknown string field '" ~ _fieldname ~ "'"); } } } /// Filtering string and character tags final class StringTagFilter(string op) : Filter { private string _value; private string _tagname; this(string tagname, string value) { _tagname = tagname; _value = value; } bool accepts(ref BamRead a) { auto v = a[_tagname]; if (v.is_string) { mixin(`return cast(string)v` ~ op ~ `_value;`); } else if (v.is_character) { if (_value.length != 1) return false; // doesn't make sense to compare char with string mixin(`return cast(char)v` ~ op ~ `_value[0];`); } else { return false; } } } /// Filtering string fields with a regular expression final class RegexpFieldFilter : Filter { private string _fieldname; private Regex!char _pattern; this(string fieldname, Regex!char pattern) { _fieldname = fieldname; _pattern = pattern; } bool accepts(ref BamRead a) { switch(_fieldname) { case "read_name": return !match(a.name, cast()_pattern).empty; case "ref_name": return !match(a.ref_name, cast()_pattern).empty; case "mate_ref_name": return !match(a.mate_ref_name, cast()_pattern).empty; case "sequence": return !match(to!string(a.sequence), cast()_pattern).empty; case "cigar": return !match(a.cigarString(), cast()_pattern).empty; default: throw new Exception("unknown string field '" ~ _fieldname ~ "'"); } } } /// Filtering string tags with a regular expression final class RegexpTagFilter : Filter { private string _tagname; private Regex!char _pattern; this(string tagname, Regex!char pattern) { _tagname = tagname; _pattern = pattern; } bool accepts(ref BamRead a) { auto v = a[_tagname]; if (!v.is_string) { return false; } return !match(cast(string)v, cast()_pattern).empty; } } final class SubsampleFilter : Filter { private ulong _threshold; private ulong _seed; this(double subsample_frac, ulong seed) { _threshold = (0x100000000UL * subsample_frac).to!ulong; _seed = seed; } // FNV-1a algorithm private ulong simpleHash(string s) const { ulong h = 14695981039346656037UL; auto salt = (cast(ubyte*)(&_seed))[0 .. 8]; foreach (b; chain(s.representation, salt)) { h ^= b; h *= 1099511628211UL; } return h; } /* uint h = 0; foreach (char c; s) h = (h << 5) - h + c; return h + _seed; } */ bool accepts(ref BamRead read) const { auto h = simpleHash(read.name); return (h&0xFFFFFFFFUL) < _threshold; } } sambamba-0.6.7/sambamba/utils/common/intervaltree.d000066400000000000000000000102301320451002000223120ustar00rootroot00000000000000// based on https://github.com/ekg/intervaltree module sambamba.utils.common.intervaltree; import std.range; import std.algorithm; import std.array; import std.conv; class IntervalTreeNode(T, pos_t) { static if (is(T == void)) { pos_t start; pos_t stop; this(pos_t start, pos_t stop) { this.start = start; this.stop = stop; } override string toString() const { return "(" ~ start.to!string ~ " .. " ~ stop.to!string ~ ")"; } } else { pos_t start; pos_t stop; T value; this(pos_t start, pos_t stop, T value) { this.start = start; this.stop = stop; this.value = value; } override string toString() const { return "(" ~ start.to!string ~ " .. " ~ stop.to!string ~ ", " ~ value.to!string ~ ")"; } } } class IntervalTree(T, pos_t) { alias IntervalTreeNode!(T, pos_t) interval; alias IntervalTree!(T, pos_t) intervalTree; void print(int depth=0) { import std.stdio; writeln(repeat(' ', depth), "INTERVALS: ", intervals); if (left !is null) { writeln(repeat(' ', depth), "LEFT"); left.print(depth + 4); } if (right !is null) { writeln(repeat(' ', depth), "RIGHT"); right.print(depth + 4); } } interval[] intervals; intervalTree left; intervalTree right; pos_t center; this() { left = right = null; center = 0; } this(ref interval[] ivals, uint depth=16, uint minBucket=2,//64, int leftExtent=0, int rightExtent=0) { left = right = null; --depth; if (depth == 0 || ivals.length < minBucket) { sort!((a, b) => a.start < b.start)(ivals[]); intervals = ivals.dup; } else { if (leftExtent == 0 && rightExtent == 0) { sort!((a, b) => a.start < b.start)(ivals[]); } int leftP = 0; int rightP = 0; int centerP = 0; if (leftExtent != 0 || rightExtent != 0) { leftP = leftExtent; rightP = rightExtent; } else { leftP = ivals.front.start; rightP = ivals.map!(iv => iv.stop).reduce!max; } centerP = ivals[ivals.length / 2].start; center = centerP; interval[] lefts; interval[] rights; foreach (iv; ivals) { if (iv.stop <= center) lefts ~= iv; else if (iv.start > center) rights ~= iv; else intervals ~= iv; } if (lefts.length > 0) left = new intervalTree(lefts, depth, minBucket, leftP, centerP); if (rights.length > 0) right = new intervalTree(rights, depth, minBucket, centerP, rightP); } } static struct OverlapWalker { pos_t start; pos_t stop; intervalTree tree; int opApply(scope int delegate(ref interval) dg) { int result = 0; if (!tree.intervals.empty && !(stop <= tree.intervals.front.start)) { foreach (ref iv; tree.intervals) if (iv.stop > start && iv.start < stop) { result = dg(iv); if (result != 0) return result; } } if (tree.left !is null && start < tree.center) { result = tree.left.eachOverlap(start, stop).opApply(dg); if (result != 0) return result; } if (tree.right !is null && stop >= tree.center) { result = tree.right.eachOverlap(start, stop).opApply(dg); if (result != 0) return result; } return result; } } auto eachOverlap(pos_t start=pos_t.min, pos_t stop=pos_t.max) { return OverlapWalker(start, stop, this); } } sambamba-0.6.7/sambamba/utils/common/ldc_gc_workaround.d000066400000000000000000000050541320451002000233040ustar00rootroot00000000000000/// Remove address ranges related to system libraries, from GC scanning. /// That makes a huge speed difference in case of frequent allocations. module sambamba.utils.common.ldc_gc_workaround; import std.stdio; import std.format; import std.algorithm; import core.memory; /// Shared static constructor does the job, no need to do any calls manually. shared static this() { version(LDC) { version(Linux) { removeExtraGcRanges(); } } } /// A path is excluded from GC scanning if it contains any of these substrings. immutable defaultExclusionList = ["/libc-", "/ld-", "/libpthread-", "/librt-", "/libm-", "/libgcc_s", "/libdl-"]; /// On start, LDC parses /proc/self/maps file /// and adds every range with writable permissions to GC. /// However, standard libraries don't contain any pointers to D objects, /// and garbage collector spends a lot of time dealing with these ranges, /// while this is completely unnecessary. /// /// This function scans /proc/self/maps again and excludes ranges /// that come from libc, ld, libpthread, librt, and libm. /// You can pass your own exclusion list instead of the default one. void removeExtraGcRanges(const char[][] exclusionList=defaultExclusionList) { debug { writeln("[DEBUG] removing extra GC ranges..."); } version(Posix) { foreach (line; File("/proc/self/maps").byLine()) { ulong start; ulong end; char[] permissions; ulong offset; char[] dev; ulong inode; char[] path; auto l = line.dup; formattedRead(l, "%x-%x %s %x %s %d %s", &start, &end, &permissions, &offset, &dev, &inode, &path); if (permissions[1] == 'w') { // exclude empty entries if (path.length == 0) { GC.removeRange(cast(void*)start); } bool is_system_lib = false; foreach (substr; exclusionList) { if (path.canFind(substr)) { debug { writeln("removing path ", path); } GC.removeRange(cast(void*)start); is_system_lib = true; break; } } debug { if (!is_system_lib) writeln("skipping path ", path); } } } } } sambamba-0.6.7/sambamba/utils/common/overwrite.d000066400000000000000000000025261320451002000216450ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2014 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.utils.common.overwrite; import std.exception; import std.path; class OverwriteException : Exception { this(string output_fn) { super("Specified output filename " ~ output_fn ~ " clashes with one of input file names. Exiting."); } } void protectFromOverwrite(string input_filename, string output_filename) { auto input_fn = buildNormalizedPath(input_filename); auto output_fn = buildNormalizedPath(output_filename); if (input_fn.filenameCmp(output_fn) == 0) throw new OverwriteException(output_fn); } sambamba-0.6.7/sambamba/utils/common/pratt_parser.d000066400000000000000000000325051320451002000223250ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2013 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.utils.common.pratt_parser; import std.string; import std.exception; import std.conv; import std.algorithm; import std.ascii; struct SourcePosition { size_t position; size_t line; size_t column; } class PrattParser(T, alias WSSkipper=DefaultWSSkipper) { private { alias Token!(T, WSSkipper) Tok; alias SymbolDict!(T, WSSkipper) Dict; alias PrattParser!(T, WSSkipper) Parser; alias TokenRange!(T, WSSkipper) Range; } this(string str, Dict symbols) { this.str = str; token_range = Range(str, symbols); token = next(); } T parse(int rbp=0) { prev_token = token; if (!prev_token_initialized) { prev_token_initialized = true; } token = next(); T left = prev_token.nud(this); while (rbp < token.lbp) { prev_token = token; token = next(); left = prev_token.led(this, left); } return left; } auto next_token() { return token; } string next_token_as_string() @property const { return str[token.start_position .. token.end_position]; } Parser advance() { token = next(); return this; } Parser advance(string s) { if (next_token_as_string() != s) { throw new Exception("unexpected character at position " ~ to!string(current_position.line) ~ ":" ~ to!string(current_position.column)); } token = next(); return this; } @property SourcePosition current_position() const { SourcePosition sp; auto tok = token_initialized ? token : prev_token; sp.position = prev_token_initialized ? tok.start_position : 0; sp.line = token_range.current_line; sp.column = sp.position - token_range.last_new_line + 1; return sp; } @property string code() const { return str; } private: string str; Range token_range; Tok token = void; Tok prev_token = void; bool token_initialized = false; bool prev_token_initialized = false; auto next() { auto token = token_range.front(); if (!token_initialized) { token_initialized = true; } token_range.popFront(); return token; } } class Symbol(T, alias WSSkipper=DefaultWSSkipper) { alias size_t delegate(in string str, size_t pos) TokenScanner; alias T delegate(in string str) TokenParser; alias PrattParser!(T, WSSkipper) Parser; private TokenScanner scanner; private TokenParser parser; string id; int lbp; T delegate(Parser) nud; T delegate(Parser, T) led; this(string id, int lbp=0) { this.id = id; this.lbp = lbp; } size_t scan(in string str, size_t pos) const { if (scanner) { return scanner(str, pos); } else { size_t len = id.length; for (size_t i = 0; i < len; ++i) { if (i + pos >= str.length || id[i] != str[i + pos]) return pos; } return pos + len; } } T parse(in string str) const { if (parser) { return parser(str); } else { T obj; return obj; } } bool has_scanner() @property const { return scanner !is null; } bool has_parser() @property const { return parser !is null; } Symbol setScanner(TokenScanner s) { scanner = s; return this; } Symbol setParser(TokenParser p) { parser = p; return this; } } class SymbolDict(T, alias WSSkipper) { alias Symbol!(T, WSSkipper) Sym; private Sym[string] dict; private string end_id_; this(string end_id) { this.end_id_ = end_id; dict[end_id] = new Sym(end_id, int.min); } Sym opIndex(string id) { return dict[id]; } Sym opIndexAssign(Sym sym, string id) { dict[id] = sym; return sym; } bool opBinaryRight(string op)(string id) if (op == "in") { return ((id in dict) !is null); } @property auto values() { return dict.byValue(); } @property Sym end_symbol() { return dict[end_id_]; } @property string end_id() { return end_id_; } } struct Token(T, alias WSSkipper=DefaultWSSkipper) { private alias Symbol!(T, WSSkipper) Sym; private alias PrattParser!(T, WSSkipper) Parser; private Sym symbol_; size_t start_position; size_t length; T value = void; bool has_value = false; this(Sym sym, size_t start=0, size_t end=0) { symbol_ = sym; start_position = start; length = end - start; } this(Sym sym, T value, size_t start=0, size_t end=0) { this(sym, start, end); this.value = value; has_value = true; } @property string id() const { return symbol_.id; } @property Sym symbol() { return symbol_; } @property int lbp() const { return symbol_.lbp; } @property size_t end_position() const { return start_position + length; } T nud(Parser parser) { if (has_value) return value; if (symbol_.nud is null) { throw new Exception("parsing error near line " ~ to!string(parser.current_position.line) ~ ": expected prefix operator"); } return symbol_.nud(parser); } T led(Parser parser, T left) { if (symbol_.led is null) { throw new Exception("parsing error near line " ~ to!string(parser.current_position.line) ~ ": expected infix/postfix operator"); } return symbol_.led(parser, left); } } struct TokenRange(T, alias WSSkipper) { private alias Symbol!(T, WSSkipper) Sym; private alias PrattParser!(T, WSSkipper) Parser; private alias SymbolDict!(T, WSSkipper) Dict; private alias Token!(T, WSSkipper) Tok; private: string str; Dict symbols; size_t start; size_t end; Sym match; bool match_found; size_t last_new_line_; size_t current_line_; public: @property size_t current_line() const { return current_line_; } @property size_t last_new_line() const { return last_new_line_; } this(string str_, Dict symbols_) { str = str_; symbols = symbols_; start = end = last_new_line_ = 0; current_line_ = 1; popFront(); } bool empty() { return false; } void popFront() { WSSkipper(str, start, last_new_line_, current_line_); if (start < str.length) { end = start; match_found = false; foreach (sym; symbols.values) { size_t p = sym.scan(str, start); if (p > end || (match_found && sym.lbp > match.lbp && p == end)) { match = sym; match_found = true; end = p; } } if (!match_found) { throw new Exception("invalid symbol in input stream at position " ~ to!string(start)); } } } auto front() { if (start >= str.length) { return Tok(symbols.end_symbol); } size_t old_start = start; start = end; if (match.has_parser) { return Tok(match, match.parse(str[old_start .. end]), old_start, end); } else { return Tok(match, old_start, end); } } } private struct keep_symbol_lbp_t {} static keep_symbol_lbp_t keep_symbol_lbp; void DefaultWSSkipper(const char[] str, ref size_t start, ref size_t last_new_line, ref size_t current_line) { while (start < str.length && std.ascii.isWhite(str[start])) { if (str[start] == '\n') { last_new_line = start; ++current_line; } ++start; } }; class Grammar(T, alias WSSkipper=DefaultWSSkipper) { protected alias Symbol!(T, WSSkipper) Sym; protected alias PrattParser!(T, WSSkipper) Parser; protected alias SymbolDict!(T, WSSkipper) Dict; protected Dict symbols_; this(string end_id) { symbols_ = new Dict(end_id); size_t delegate(in string, size_t) scanner = (in string s, size_t pos) { return pos; }; symbols_[end_id].setScanner(scanner); } auto addSymbolToDict(string sym, int lbp=0) { if (sym in symbols_) { auto s = symbols_[sym]; s.lbp = max(s.lbp, lbp); return s; } else { auto s = new Sym(sym, lbp); return symbols_[sym] = s; } } struct Prefix { alias T delegate(T) handler_type; alias T delegate(Parser) func_type; } struct Postfix { alias T delegate(T) handler_type; alias T delegate(Parser, T) func_type; } struct LeftAssociative { alias T delegate(T, T) handler_type; alias T delegate(Parser, T) func_type; } struct RightAssociative { alias T delegate(T, T) handler_type; alias T delegate(Parser, T) func_type; } private static void setBehaviour(Semantics)(Sym sym, int rbp, Semantics.handler_type func) { static if (is (Semantics == Prefix)) sym.nud = (Parser p) { return func(p.parse(rbp)); }; else static if (is (Semantics == Postfix)) sym.led = (Parser p, T left) { return func(left); }; else static if (is (Semantics == LeftAssociative)) sym.led = (Parser p, T left) { return func(left, p.parse(rbp)); }; else static if (is (Semantics == RightAssociative)) sym.led = (Parser p, T left) { return func(left, p.parse(rbp - 1)); }; else static assert(0, "expected Prefix | Postfix | LeftAssociative | RightAssociative"); } private static void setBehaviour(Semantics)(Sym sym, Semantics.handler_type func) { setBehaviour!(Semantics)(sym, sym.lbp, func); } auto prefix(string op, int binding_power, T delegate(T) handler) { auto sym = addSymbolToDict(op, binding_power); setBehaviour!(Prefix)(sym, binding_power, handler); return sym; } auto prefix(string op, int binding_power, T delegate(T) handler, keep_symbol_lbp_t) { auto sym = addSymbolToDict(op); setBehaviour!(Prefix)(sym, binding_power, handler); return sym; } private template make_fix(string name, string semantics) { mixin("auto " ~ name ~ "(string op, int binding_power, " ~ semantics ~ ".handler_type handler) { auto sym = addSymbolToDict(op, binding_power); setBehaviour!(" ~ semantics ~ ")(sym, binding_power, handler); return sym; }"); } mixin make_fix!("prefix", "Prefix"); mixin make_fix!("postfix", "Postfix"); mixin make_fix!("infix", "LeftAssociative"); mixin make_fix!("infix_r", "RightAssociative"); auto brackets(string ob, string cb, int binding_power, T delegate(T) handler=null) { auto open_sym = addSymbolToDict(ob, binding_power); addSymbolToDict(cb, 0); if (handler is null) { handler = (T val) { return val; }; } open_sym.nud = (Parser p) { T val = p.parse(0); p.advance(cb); return handler(val); }; return open_sym; } T parse(string text) { auto p = new Parser(text, symbols); return p.parse(); } @property Dict symbols() { return symbols_; } } unittest { class Calculator : Grammar!int { this() { super("(end)"); addSymbolToDict("(number)", 0).setScanner( (in string str, size_t pos) { size_t i = pos; while (i < str.length && std.ascii.isDigit(str[i])) ++i; return i; }).setParser( (in string str) { return to!int(str); }); infix("+", 10, (int a, int b){ return a + b;}); infix("-", 10, (int a, int b){ return a - b;}); infix("*", 20, (int a, int b){ return a * b;}); infix("/", 20, (int a, int b){ return a / b;}); prefix("+", 100, (int a){ return a; }, keep_symbol_lbp); prefix("-", 100, (int a){ return -a;}, keep_symbol_lbp); brackets("(", ")", int.max); } } auto calc = new Calculator(); assert(calc.parse("2 + 3 * (4 - 5)") == -1); assert(calc.parse("2 * (3 + 2) / 5") == 2); assert(calc.parse("36 / (-2 + 2 * (2 + 3) * (1 + 1))") == 2); } sambamba-0.6.7/sambamba/utils/common/progressbar.d000066400000000000000000000046571320451002000221570ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2013 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ /** module for showing progressbar */ module sambamba.utils.common.progressbar; import std.stdio; import std.range; import std.numeric; import core.atomic; /// Common interface for all progressbars. shared interface IProgressBar { /// Update percentage void update(lazy float percentage); /// Indicate that the process is finished void finish(); } /// [==================> ] shared class ProgressBar : IProgressBar { /// Create a progress bar which will be redrawn every $(D n) update calls, /// and its width will be $(D width) characters. this(size_t n=16384, size_t width=80) { _n = n; _width = width; draw(0.0); } void update(lazy float percentage) { if (_k == _n) { redraw(percentage); _k = 0; } else { _k.atomicOp!"+="(1); } } void finish() { redraw(1.0); stderr.writeln(); } private { size_t _n; size_t _k; size_t _width; void draw(float percentage) { auto progress = cast(int)((_width - 2) * percentage + 0.5); if (progress == 0) { stderr.write("[", repeat(' ', _width - 2), "]"); } else if (progress >= _width - 2) { stderr.write("[", repeat('=', _width - 2), "]"); } else { stderr.write("[", repeat('=', progress - 1), ">", repeat(' ', (_width - 2) - progress), "]"); } } void redraw(float percentage) { stderr.write('\r'); draw(percentage); } } } sambamba-0.6.7/sambamba/utils/common/queryparser.d000066400000000000000000000440341320451002000222010ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2016 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.utils.common.queryparser; import sambamba.utils.common.filtering; import sambamba.utils.common.pratt_parser; import std.array; import std.regex; import std.algorithm; import std.conv; import std.ascii; import std.exception; interface Node { string toString() const; } final class TagNameNode : Node { string tagname; this(string tagname) { this.tagname = tagname; } override string toString() const { return "[" ~ tagname ~ "]"; } } final class NullValueNode : Node { static auto value = null; override string toString() const { return "null"; } } final class IntegerNode : Node { long value; this(long value) { this.value = value; } override string toString() const { return to!string(value); } } final class IntegerFieldNode : Node { string fieldname; this(string fieldname) { this.fieldname = fieldname; } override string toString() const { return fieldname; } } final class StringNode : Node { string value; this(string value) { this.value = value; } override string toString() const { return "'" ~ replace(value, "'", "\\'") ~ "'"; } } final class StringFieldNode : Node { string fieldname; this(string fieldname) { this.fieldname = fieldname; } override string toString() const { return fieldname; } } final class RegexpNode : Node { private string _pattern; private string _options; Regex!char regexp; this(string pattern, string options) { _pattern = pattern; _options = options; regexp = regex(_pattern, _options); } override string toString() const { return "/" ~ replace(_pattern, "/", "\\/") ~ "/" ~ _options; } } abstract class ConditionNode : Node { Filter condition; override abstract string toString() const; } final class RegexpFieldConditionNode : ConditionNode { private StringFieldNode _fieldnode; private RegexpNode _regexpnode; this(StringFieldNode field, RegexpNode regexp) { _fieldnode = field; _regexpnode = regexp; condition = new RegexpFieldFilter(_fieldnode.fieldname, _regexpnode.regexp); } override string toString() const { return _fieldnode.toString ~ " =~ " ~ _regexpnode.toString(); } } final class RegexpTagConditionNode : ConditionNode { private TagNameNode _tagnode; private RegexpNode _regexpnode; this(TagNameNode tag, RegexpNode regexp) { _tagnode = tag; _regexpnode = regexp; condition = new RegexpTagFilter(_tagnode.tagname, _regexpnode.regexp); } override string toString() const { return _tagnode.toString() ~ " =~ " ~ _regexpnode.toString(); } } /// LeftNodeType refers to TagNameNode, IntegerFieldNode, or StringFieldNode /// RightNodeType refers to IntegerNode or StringNode final class ComparisonNode(T, LeftNodeType, RightNodeType, alias Filter) : ConditionNode { private { LeftNodeType _node; RightNodeType _valuenode; string _op; } this(string op, LeftNodeType node, RightNodeType valuenode) { _node = node; _valuenode = valuenode; _op = op; static if (is(LeftNodeType == TagNameNode)) { auto n = node.tagname; } else { auto n = node.fieldname; } auto v = valuenode.value; static if (is(RightNodeType == NullValueNode)) { if (op == "==") condition = new Filter!"=="(n, v); else if (op == "!=") condition = new Filter!"!="(n, v); else assert(0); } else { switch (op) { case ">": condition = new Filter!">"(n, v); break; case "<": condition = new Filter!"<"(n, v); break; case ">=": condition = new Filter!">="(n, v); break; case "<=": condition = new Filter!"<="(n, v); break; case "!=": condition = new Filter!"!="(n, v); break; case "==": condition = new Filter!"=="(n, v); break; default: assert(0); // must be catched before calling constructor } } } override string toString() const { return _node.toString() ~ " " ~ _op ~ " " ~ _valuenode.toString(); } } alias ComparisonNode!(long, TagNameNode, IntegerNode, IntegerTagFilter) IntegerTagConditionNode; alias ComparisonNode!(string, TagNameNode, StringNode, StringTagFilter) StringTagConditionNode; alias ComparisonNode!(long, IntegerFieldNode, IntegerNode, IntegerFieldFilter) IntegerFieldConditionNode; alias ComparisonNode!(string, StringFieldNode, StringNode, StringFieldFilter) StringFieldConditionNode; alias ComparisonNode!(typeof(null), TagNameNode, NullValueNode, TagExistenceFilter) TagExistenceConditionNode; final class OrConditionNode : ConditionNode { private ConditionNode _a, _b; this(Node a, Node b) { _a = cast(ConditionNode)a; _b = cast(ConditionNode)b; enforce(_a !is null, "'" ~ a.toString() ~ "' is not a condition"); enforce(_a !is null, "'" ~ b.toString() ~ "' is not a condition"); condition = new OrFilter(_a.condition, _b.condition); } override string toString() const { return "(" ~ _a.toString() ~ ") or (" ~ _b.toString() ~ ")"; } } final class AndConditionNode : ConditionNode { private ConditionNode _a, _b; this(Node a, Node b) { _a = cast(ConditionNode)a; _b = cast(ConditionNode)b; enforce(_a !is null, "'" ~ a.toString() ~ "' is not a condition"); enforce(_a !is null, "'" ~ b.toString() ~ "' is not a condition"); condition = new AndFilter(_a.condition, _b.condition); } override string toString() const { return "(" ~ _a.toString() ~ ") and (" ~ _b.toString() ~ ")"; } } final class NegateConditionNode : ConditionNode { private ConditionNode _a; this(Node a) { _a = cast(ConditionNode)a; enforce(_a !is null, "'" ~ a.toString() ~ "' is not a condition"); condition = new NotFilter(_a.condition); } override string toString() const { return "not (" ~ _a.toString() ~ ")"; } } final class FlagConditionNode : ConditionNode { private string _flagname; this(in string flagname) { _flagname = flagname; switch (flagname) { case "paired": condition = new FlagFilter!"is_paired"(); break; case "proper_pair": condition = new FlagFilter!"proper_pair"(); break; case "unmapped": condition = new FlagFilter!"is_unmapped"(); break; case "mate_is_unmapped": condition = new FlagFilter!"mate_is_unmapped"(); break; case "reverse_strand": condition = new FlagFilter!"is_reverse_strand"(); break; case "mate_is_reverse_strand": condition = new FlagFilter!"mate_is_reverse_strand"(); break; case "first_of_pair": condition = new FlagFilter!"is_first_of_pair"(); break; case "second_of_pair": condition = new FlagFilter!"is_second_of_pair"(); break; case "secondary_alignment": condition = new FlagFilter!"is_secondary_alignment"(); break; case "failed_quality_control": condition = new FlagFilter!"failed_quality_control"(); break; case "duplicate": condition = new FlagFilter!"is_duplicate"(); break; case "supplementary": condition = new FlagFilter!"is_supplementary"(); break; case "chimeric": condition = new ChimericFilter(); break; default: throw new Exception("unknown flag '" ~ flagname ~ "'"); } } override string toString() const { return _flagname; } } final class QueryGrammar : Grammar!Node { this() { super("(end)"); addSymbolToDict("null").setParser((in string str) { return cast(Node) new NullValueNode(); }); static auto makeScanner(string[] values) { return (in string str, size_t pos) { foreach (value; values) { if (startsWith(str[pos .. $], value)) { return pos + value.length; } } return pos; }; } auto flagnames = ["paired", "proper_pair", "unmapped", "mate_is_unmapped", "reverse_strand", "mate_is_reverse_strand", "first_of_pair", "second_of_pair", "secondary_alignment", "failed_quality_control", "duplicate", "supplementary", "chimeric"]; addSymbolToDict("(flag condition)", 0) .setScanner(makeScanner(flagnames)) .setParser((in string str) { return cast(Node) new FlagConditionNode(str);}); auto integer_fields = ["ref_id", "position", "mapping_quality", "avg_base_quality", "sequence_length", "mate_ref_id", "mate_position", "template_length"]; addSymbolToDict("(integer field)", 0) .setScanner(makeScanner(integer_fields)) .setParser((in string str) { return cast(Node) new IntegerFieldNode(str);}); auto string_fields = ["read_name", "sequence", "cigar", "strand", "ref_name", "mate_ref_name"]; addSymbolToDict("(string field)", 0) .setScanner(makeScanner(string_fields)) .setParser((in string str) { return cast(Node) new StringFieldNode(str); }); addSymbolToDict("(tag name)", 0) .setScanner( (in string str, size_t pos) { auto s = str[pos .. $]; if (s.length == 0) return pos; if (s[0] == '[' && s.length >= 4 && s[3] == ']') { return pos + 4; } else { return pos; } } ).setParser( (in string str) { return cast(Node) new TagNameNode(str[1..3]); } ); addSymbolToDict("(integer)", 0) .setScanner( (in string str, size_t pos) { if (pos >= str.length) return pos; size_t i = pos; if (str[i] == '-' || str[i] == '+') { ++i; if (str.length == 1) return pos; } while (i < str.length && isDigit(str[i])) ++i; return i; } ).setParser( (in string str) { return cast(Node) new IntegerNode(to!long(str)); } ); // string literal matches /'([^']|\\')*'/ addSymbolToDict("(string)", 0) .setScanner( (in string str, size_t pos) { if (pos >= str.length || str[pos] != '\'') return pos; size_t i = pos + 1; while (i < str.length) { if (str[i] == '\\' && i + 1 < str.length && str[i+1] == '\'') { i += 2; } else if (str[i] == '\'') { i += 1; break; } else { i += 1; } } if (i == str.length && str[$-1] != '\'') return pos; return i; } ).setParser( (in string str) { assert(str[0] == '\''); assert(str[$ - 1] == '\''); auto strbuilder = appender!(char[])(); strbuilder.reserve(str.length - 2); auto s = str[1 .. $ - 1]; for (size_t i = 0; i < s.length; i++) { if (s[i] == '\\' && i + 1 < s.length && s[i+1] == '\'') { strbuilder.put('\''); i += 1; } else { strbuilder.put(s[i]); } } return cast(Node) new StringNode(cast(string)(strbuilder.data)); } ); static auto makeComparisonOperator(string op) { return (Node a, Node b) { auto integer = cast(IntegerNode) b; auto str = cast(StringNode) b; auto nil = cast(NullValueNode) b; auto tag = cast(TagNameNode) a; if (integer !is null) { if (tag !is null) { auto node = new IntegerTagConditionNode(op, tag, integer); return cast(Node) node; } else { auto field = cast(IntegerFieldNode) a; if (field is null) { throw new Exception("expected tag or integer field name instead of '"~ a.toString() ~ "'"); } return cast(Node) new IntegerFieldConditionNode(op, field, integer); } } else if (str !is null) { if (tag !is null) { auto node = new StringTagConditionNode(op, tag, str); return cast(Node) node; } else { auto field = cast(StringFieldNode) a; if (field is null) { throw new Exception("expected tag or string field name instead of '"~ a.toString() ~ "'"); } return cast(Node) new StringFieldConditionNode(op, field, str); } } else if (nil !is null && (op == "==" || op == "!=")) { enforce(tag !is null, "only tag value can be compared with null"); auto node = new TagExistenceConditionNode(op, tag, nil); return cast(Node) node; } else { throw new Exception("can't compare `" ~ a.toString() ~ "` and `" ~ b.toString() ~ "`"); } }; } foreach (op; [">", "<", ">=", "<=", "==", "!="]) infix(op, 110, makeComparisonOperator(op)); // regexp literal matches /\/([^\/]|\\/)*\/[gixUms] addSymbolToDict("(regexp)", 0) .setScanner((in string str, size_t pos) { if (pos >= str.length) return pos; if (str[pos] != '/') return pos; size_t i = pos + 1; while (i < str.length) { if (str[i] == '\\' && i + 1 < str.length && str[i+1] == '/') { i += 2; } else if (str[i] == '/') { i += 1; break; } else { i += 1; } } if (i == str.length && str[$ - 1] != '/') return pos; while (i < str.length) { if (std.ascii.isWhite(str[i]) || str[i] == ')') break; if (canFind("gixUms", str[i])) { ++i; } else { return pos; } } return i; }).setParser((in string str) { size_t delimiter_pos = str.length - 1; while (str[delimiter_pos] != '/') --delimiter_pos; auto pattern = str[1 .. delimiter_pos]; auto options = str[delimiter_pos + 1 .. $]; return cast(Node) new RegexpNode(pattern, options); }); infix("=~", 110, (Node a, Node b) { auto regexp_node = cast(RegexpNode) b; if (regexp_node is null) { throw new Exception("expected regular expression, not '" ~ b.toString() ~ "'"); } auto strfield = cast(StringFieldNode) a; if (strfield !is null) { return cast(Node) new RegexpFieldConditionNode(strfield, regexp_node); } auto tag = cast(TagNameNode) a; if (tag !is null) { return cast(Node) new RegexpTagConditionNode(tag, regexp_node); } throw new Exception("expected string field or tag name, not '" ~ a.toString(), "'"); }); infix("and", 80, (Node a, Node b) { return cast(Node) new AndConditionNode(a, b); }); infix("or", 60, (Node a, Node b) { return cast(Node) new OrConditionNode(a, b); }); prefix("not", 100, (Node a) { return cast(Node) new NegateConditionNode(a); }); brackets("(", ")", int.max); } } unittest { import std.stdio; auto grammar = new QueryGrammar(); assert(grammar.parse("unmapped and mate_is_unmapped").toString() == "(unmapped) and (mate_is_unmapped)"); // writeln(grammar.parse("[BQ] >= 'ab\\'asdga' and ([NM] < 12 or unmapped and [PS] == '321') or mapping_quality < 150 and read_name >= 'abcd' and [PG] != null").toString()); } sambamba-0.6.7/sambamba/utils/common/readstorage.d000066400000000000000000000101341320451002000221110ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2014 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.utils.common.readstorage; import core.stdc.stdlib; import core.stdc.string; import std.parallelism; import std.algorithm; import bio.core.utils.roundbuf; import bio.core.utils.outbuffer; import bio.bam.read; struct ReadStorage { private size_t max_sz; this(size_t max_total_size) { max_sz = max_total_size; read_storage = cast(ubyte*)core.stdc.stdlib.malloc(max_sz); _reads_capa = 1024; auto sz = BamRead.sizeof * _reads_capa; _reads = cast(BamRead*)core.stdc.stdlib.malloc(sz); } void clear() { _used = 0; _n_reads = 0; } void fill(R)(R* reads) { while (!reads.empty) { auto read = reads.front; auto len = read.raw_data.length; if (len + _used > max_sz) break; core.stdc.string.memcpy(read_storage + _used, read.raw_data.ptr, len); if (_n_reads == _reads_capa) { _reads_capa *= 2; _reads = cast(BamRead*)core.stdc.stdlib.realloc(_reads, _reads_capa * BamRead.sizeof); } _reads[_n_reads].raw_data = read_storage[_used .. _used + len]; _reads[_n_reads].associateWithReader(read.reader); _n_reads += 1; _used += len; reads.popFront(); } if (_n_reads == 0) { auto read = reads.front; auto len = read.raw_data.length; assert(len > max_sz); _n_reads = 1; read_storage = cast(ubyte*)core.stdc.stdlib.realloc(read_storage, len); _used = len; read_storage[0 .. len] = read.raw_data[]; _reads[0].raw_data = read_storage[0 .. _used]; _reads[0].associateWithReader(read.reader); reads.popFront(); } } void free() { core.stdc.stdlib.free(read_storage); core.stdc.stdlib.free(_reads); } BamRead[] reads() @property { return _reads[0 .. _n_reads]; } private { BamRead* _reads; size_t _reads_capa; size_t _n_reads; ubyte* read_storage; size_t _used; } } class TaskWithData(alias converter, T...) { Task!(converter, BamRead[], OutBuffer, T)* conversion_task; ReadStorage input_buffer; OutBuffer output_buffer; this(size_t n=131072) { input_buffer = ReadStorage(n); output_buffer = new OutBuffer(n * 5); } final void run(TaskPool pool, T params) { conversion_task = task!converter(input_buffer.reads, output_buffer, params); pool.put(conversion_task); } } void runConversion(alias converter, alias writer, R)(R reads, TaskPool pool) { auto n_tasks = max(pool.size, 2) * 4; auto tasks = RoundBuf!(TaskWithData!converter)(n_tasks); foreach (i; 0 .. n_tasks) { if (reads.empty) break; auto t = new TaskWithData!converter(); t.input_buffer.fill(&reads); t.run(pool); tasks.put(t); } while (!tasks.empty) { auto t = tasks.front; writer(t.conversion_task.yieldForce()); tasks.popFront(); if (!reads.empty) { t.input_buffer.clear(); t.input_buffer.fill(&reads); t.output_buffer.clear(); t.run(pool); tasks.put(t); } } } sambamba-0.6.7/sambamba/utils/common/tmpdir.d000066400000000000000000000012321320451002000211070ustar00rootroot00000000000000module sambamba.utils.common.tmpdir; import std.random; import std.path; import std.file; import std.process; import std.conv; string defaultTmpDir() { return environment.get("TMPDIR", "/tmp"); } string randomSubdir(string tmpdir, string prefix="") { auto gen = Random(unpredictableSeed); char[4] subdirname; string result; do { foreach (ref c; subdirname[]) c = uniform!"[]"('a', 'z', gen); result = buildPath(tmpdir, "sambamba-pid" ~ thisProcessID.to!string ~ "-" ~ prefix ~ subdirname[]); } while (std.file.exists(result)); std.file.mkdirRecurse(result); return result; } sambamba-0.6.7/sambamba/utils/view/000077500000000000000000000000001320451002000171275ustar00rootroot00000000000000sambamba-0.6.7/sambamba/utils/view/alignmentrangeprocessor.d000066400000000000000000000123551320451002000242350ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2013 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.utils.view.alignmentrangeprocessor; import bio.bam.reader; import bio.bam.read; import bio.bam.writer; import bio.bam.thirdparty.msgpack; import bio.core.utils.outbuffer; import bio.core.utils.range; import sambamba.utils.common.readstorage; import std.stdio; import std.exception; import std.string; import std.range; import std.array; import std.format; import std.traits; import undead.stream : Stream, BufferedFile, FileMode; import std.conv; import std.algorithm; import std.parallelism; class ReadCounter { size_t number_of_reads; void process(R, SB)(R reads, SB bam) { number_of_reads = walkLength(reads); } enum is_serial = true; } version(Posix) { extern(C) int isatty(int fd); } version(Windows) { bool isatty(int handle) { return 1; // FIXME!!! } } private bool isTty(ref std.stdio.File file) @property { return isatty(file.fileno()) != 0; } template chunkToFormat(char format) { char[] chunkToFormat(R)(in R[] reads, OutBuffer outbuffer) { FormatSpec!char f = void; f.spec = format; // nothing else matters if (reads.length > 0) { outbuffer.capacity = reads.length * reads.front.size_in_bytes * 2; foreach (r; reads) { r.toString((const(char)[] s) { outbuffer.put(cast(ubyte[])s); }, f); outbuffer.put('\n'); } } return cast(char[])(outbuffer.data); } } alias chunkToFormat!'s' chunkToSam; alias chunkToFormat!'j' chunkToJson; class TextSerializer { this(File f, TaskPool pool) { _f = f; _pool = pool; if (!_f.isTty) _f.setvbuf(1_024_576); } private std.stdio.File _f; private TaskPool _pool; } final class SamSerializer : TextSerializer { this(File f, TaskPool pool) { super(f, pool); } void process(R, SB)(R reads, SB bam) { auto w = _f.lockingTextWriter; runConversion!(chunkToSam, data => w.put(data))(reads, _pool); } enum is_serial = true; } import cram.writer; final class CramSerializer { private CramWriter _writer; this(string output_fn, string ref_fn, size_t n_threads) { if (output_fn is null) output_fn = "-"; // stdout _writer = new CramWriter(output_fn, n_threads); if (ref_fn !is null) _writer.setFastaFilename(ref_fn); } enum is_serial = true; void process(R, SB)(R reads, SB bam) { scope (exit) _writer.finish(); _writer.writeSamHeader(bam.header); foreach (read; reads) _writer.writeRecord(read); } } final class BamSerializer { private File _f; private int _level; private TaskPool _task_pool; private enum BUFSIZE = 4096;//1_048_576; string output_filename; this(string output_fn, File f, int compression_level, TaskPool pool) { output_filename = output_fn; _f = f; if (!_f.isTty) _f.setvbuf(BUFSIZE); _level = compression_level; _task_pool = pool; } enum is_serial = true; void process(R, SB)(R reads, SB bam) { version (Posix) { auto handle = _f.fileno; } version (Win32) { import core.stdc.stdio : _fdToHandle; auto handle = _fdToHandle(_f.fileno); } Stream output_stream = new BufferedFile(handle, FileMode.OutNew, BUFSIZE); auto writer = new BamWriter(output_stream, _level, _task_pool); writer.setFilename(output_filename); scope(exit) writer.finish(); writer.writeSamHeader(bam.header); writer.writeReferenceSequenceInfo(bam.reference_sequences); foreach (read; reads) writer.writeRecord(read); } } final class JsonSerializer : TextSerializer { this(File f, TaskPool pool) { super(f, pool); } void process(R, SB)(R reads, SB bam) { auto w = _f.lockingTextWriter; runConversion!(chunkToJson, data => w.put(data))(reads, _pool); } enum is_serial = true; } final class MsgpackSerializer : TextSerializer { this(File f) { super(f, null); } void process(R, SB)(R reads, SB bam) { auto packer = packer(Appender!(ubyte[])()); foreach (read; reads) { packer.pack(read); fwrite(packer.stream.data.ptr, packer.stream.data.length, ubyte.sizeof, _f.getFP()); packer.stream.clear(); } } enum is_serial = true; } sambamba-0.6.7/sambamba/utils/view/headerserializer.d000066400000000000000000000050631320451002000226220ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2013 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.utils.view.headerserializer; import bio.sam.header; import std.conv; import std.array; import std.stdio; import bio.bam.thirdparty.msgpack; private { abstract class IHeaderSerializer { private File _f; this(File f) { _f = f; } void writeln(SamHeader header); } final class HeaderSamSerializer : IHeaderSerializer { this(File f) { super(f); } override void writeln(SamHeader header) { _f.writef("%s", header); } } final class HeaderJsonSerializer : IHeaderSerializer { this(File f) { super(f); } override void writeln(SamHeader header) { _f.writef("%j", header); } } final class HeaderMsgpackSerializer : IHeaderSerializer { this(File f) { super(f); } override void writeln(SamHeader header) { auto packer = packer(Appender!(ubyte[])()); packer.pack(header); fwrite(packer.stream.data.ptr, packer.stream.data.length, ubyte.sizeof, _f.getFP()); } } } final class HeaderSerializer { private IHeaderSerializer _serializer; this(File f, string format) { switch(format) { case "sam": case "bam": _serializer = new HeaderSamSerializer(f); break; case "json": _serializer = new HeaderJsonSerializer(f); break; case "msgpack": _serializer = new HeaderMsgpackSerializer(f); break; default: throw new Exception("unknown format for serialization: '" ~ format ~ "' (expected 'sam', 'bam', 'json', or 'msgpack')"); } } void writeln(SamHeader header) { _serializer.writeln(header); } } sambamba-0.6.7/sambamba/view.d000066400000000000000000000346661320451002000161530ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2016 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module sambamba.view; import bio.bam.reader; import bio.bam.read; import bio.bam.splitter; import bio.bam.region; import bio.sam.reader; import cram.reader; import bio.core.region; import sambamba.utils.common.filtering; import sambamba.utils.common.overwrite; import sambamba.utils.common.progressbar; import sambamba.utils.view.alignmentrangeprocessor; import sambamba.utils.view.headerserializer; import sambamba.utils.common.bed; // import core.sys.posix.stdlib; // for exit import bio.core.utils.format; import utils.version_ : addPG; import std.stdio; import std.string; import std.array; import std.traits; import std.getopt; import std.parallelism; import std.algorithm; import std.math : isNaN; import std.random; import std.range; import std.conv; void printUsage() { stderr.writeln("Usage: sambamba-view [options] [region1 [...]]"); stderr.writeln(); stderr.writeln("Options: -F, --filter=FILTER"); stderr.writeln(" set custom filter for alignments"); stderr.writeln(" --num-filter=NUMFILTER"); stderr.writeln(" filter flag bits; 'i1/i2' corresponds to -f i1 -F i2 samtools arguments;"); stderr.writeln(" either of the numbers can be omitted"); stderr.writeln(" -f, --format=sam|bam|cram|json"); stderr.writeln(" specify which format to use for output (default is SAM)"); stderr.writeln(" -h, --with-header"); stderr.writeln(" print header before reads (always done for BAM output)"); stderr.writeln(" -H, --header"); stderr.writeln(" output only header to stdout (if format=bam, the header is printed as SAM)"); stderr.writeln(" -I, --reference-info"); stderr.writeln(" output to stdout only reference names and lengths in JSON"); stderr.writeln(" -L, --regions=FILENAME"); stderr.writeln(" output only reads overlapping one of regions from the BED file"); stderr.writeln(" -c, --count"); stderr.writeln(" output to stdout only count of matching records, hHI are ignored"); stderr.writeln(" -v, --valid"); stderr.writeln(" output only valid alignments"); stderr.writeln(" -S, --sam-input"); stderr.writeln(" specify that input is in SAM format"); stderr.writeln(" -C, --cram-input"); stderr.writeln(" specify that input is in CRAM format"); stderr.writeln(" -T, --ref-filename=FASTA"); stderr.writeln(" specify reference for writing CRAM"); stderr.writeln(" -p, --show-progress"); stderr.writeln(" show progressbar in STDERR (works only for BAM files with no regions specified)"); stderr.writeln(" -l, --compression-level"); stderr.writeln(" specify compression level (from 0 to 9, works only for BAM output)"); stderr.writeln(" -o, --output-filename"); stderr.writeln(" specify output filename"); stderr.writeln(" -t, --nthreads=NTHREADS"); stderr.writeln(" maximum number of threads to use"); stderr.writeln(" -s, --subsample=FRACTION"); stderr.writeln(" subsample reads (read pairs)"); stderr.writeln(" --subsampling-seed=SEED"); stderr.writeln(" set seed for subsampling"); } void outputReferenceInfoJson(T)(T bam) { auto w = stdout.lockingTextWriter; w.put('['); bool first = true; foreach (refseq; bam.reference_sequences) { if (first) { first = false; } else { w.put(','); } w.put(`{"name":`); writeJson((const(char)[] s) { w.put(s); }, refseq.name); w.put(`,"length":`); writeJson((const(char)[] s) { w.put(s); }, refseq.length); w.put('}'); } w.put("]\n"); } string format = "sam"; string query; string numfilter; string ref_fn; bool with_header; bool header_only; bool reference_info_only; bool count_only; bool skip_invalid_alignments; bool is_sam; bool is_cram; bool show_progress; int compression_level = -1; string output_filename; uint n_threads; double subsample_frac; // NaN by default ulong subsampling_seed; string bed_filename; string[] unparsed_args; version(standalone) { int main(string[] args) { return view_main(args); } } int view_main(string[] args) { foreach(arg; args) { if (arg == "--throw-error") { // undocumented: can throw a null pointer exception for testing debugger(s) char *p = null; *p = 'X'; // force an exception } } n_threads = totalCPUs; subsampling_seed = unpredictableSeed; subsampling_seed <<= 32; subsampling_seed += unpredictableSeed; unparsed_args = args.dup; try { getopt(args, std.getopt.config.caseSensitive, "filter|F", &query, "num-filter", &numfilter, "format|f", &format, "with-header|h", &with_header, "header|H", &header_only, "reference-info|I", &reference_info_only, "regions|L", &bed_filename, "count|c", &count_only, "valid|v", &skip_invalid_alignments, "sam-input|S", &is_sam, "cram-input|C", &is_cram, // TODO: autodetection of format "show-progress|p", &show_progress, "compression-level|l", &compression_level, "output-filename|o", &output_filename, "nthreads|t", &n_threads, "subsample|s", &subsample_frac, "subsampling-seed", &subsampling_seed, "ref-filename|T", &ref_fn); if (args.length < 2) { printUsage(); return 0; } // cram writer doesn't share the task pool if (!is_sam && format == "cram") n_threads /= 2; // protectFromOverwrite(args[1], output_filename); if (is_cram && is_sam) throw new Exception("only one of --sam-input and --cram-input can be specified"); auto task_pool = new TaskPool(n_threads); scope(exit) task_pool.finish(); if (is_sam) { auto sam = new SamReader(args[1]); return sambambaMain(sam, task_pool, args); } else if (!is_cram) { auto bam = new BamReader(args[1], task_pool); return sambambaMain(bam, task_pool, args); } else { auto cram = new CramReader(args[1], task_pool); return sambambaMain(cram, task_pool, args); } } catch (Exception e) { stderr.writeln("sambamba-view: ", e.msg); version(development) { throw e; // rethrow to see detailed message } return 1; } } auto filtered(R)(R reads, Filter f) { return reads.zip(f.repeat()).filter!q{a[1].accepts(a[0])}.map!q{a[0]}(); } int sambambaMain(T)(T _bam, TaskPool pool, string[] args) { auto bam = _bam; // FIXME: uhm, that was a workaround for some closure-related bug if (reference_info_only && !count_only) { outputReferenceInfoJson(bam); return 0; } File output_file; if (output_filename is null || output_filename == "-") output_file = stdout; else output_file = File(output_filename, "w+"); if (!header_only) // = some processing is done addPG("view", unparsed_args, bam.header); if (header_only && !count_only) { // write header to stdout (new HeaderSerializer(stdout, format)).writeln(bam.header); } else if (with_header && !count_only && format != "bam" && format != "cram") { (new HeaderSerializer(output_file, format)).writeln(bam.header); } if (header_only) { output_file.close(); return 0; } Filter read_filter = new NullFilter(); if (skip_invalid_alignments) { read_filter = new AndFilter(read_filter, new ValidAlignmentFilter()); } if (numfilter !is null) { ushort i1, i2; auto masks = numfilter.splitter("/").array(); if (masks.length > 0 && masks[0].length > 0) i1 = masks[0].to!ushort; if (masks.length > 1 && masks[1].length > 0) i2 = masks[1].to!ushort; read_filter = new AndFilter(read_filter, new FlagBitFilter(i1, i2)); } if (query !is null) { auto query_filter = createFilterFromQuery(query); if (query_filter is null) return 1; read_filter = new AndFilter(read_filter, query_filter); } if (!isNaN(subsample_frac)) { auto subsample_filter = new SubsampleFilter(subsample_frac, subsampling_seed); read_filter = new AndFilter(subsample_filter, read_filter); } int processAlignments(P)(P processor) { static if (is(T == SamReader)) { if (args.length > 2) { stderr.writeln("region queries are unavailable for SAM input"); return 1; } } void runProcessor(SB, R, F)(SB bam, R reads, F filter) { if (processor.is_serial) bam.assumeSequentialProcessing(); if (cast(NullFilter) filter) processor.process(reads, bam); else processor.process(reads.filtered(filter), bam); } bool output_all_reads = args.length == 2 && (bed_filename.empty || bam.header.sorting_order != SortingOrder.coordinate); static if (is(T == SamReader)) output_all_reads = true; if (bed_filename.length > 0 && args.length > 2) { throw new Exception("specifying both region and BED filename is disallowed"); } if (output_all_reads) { if (bed_filename !is null) { auto regions = parseBed(bed_filename, bam); read_filter = new AndFilter(read_filter, new BedFilter(regions)); } static if (is(T == BamReader)) { if (show_progress) { auto bar = new shared(ProgressBar)(); auto reads = bam.readsWithProgress((lazy float p) { bar.update(p); }); runProcessor(bam, reads, read_filter); bar.finish(); } else { runProcessor(bam, bam.reads!withoutOffsets(), read_filter); } } else { // SamFile runProcessor(bam, bam.reads, read_filter); } } else { // for BAM/CRAM, random access is available static if (is(T == BamReader) || is(T == CramReader)) { if (args.length > 2) { auto regions = map!parseRegion(args[2 .. $]); alias typeof(bam.unmappedReads().front) Read; alias InputRange!Read AlignmentRange; auto alignment_ranges = new AlignmentRange[regions.length]; size_t i = 0; foreach (region_description; args[2 .. $]) { AlignmentRange range; if (region_description == "*") { range = bam.unmappedReads().inputRangeObject; } else { auto r = parseRegion(region_description); auto seq = bam[r.reference]; if (r.end == uint.max) r.end = seq.length; range = seq[r.beg .. r.end].inputRangeObject; } alignment_ranges[i++] = range; } auto reads = joiner(alignment_ranges); runProcessor(bam, reads, read_filter); } else if (bed_filename.length > 0) { static if (is(T == CramReader)) { throw new Exception("BED support is unavailable for CRAM"); } else { auto regions = parseBed(bed_filename, bam); auto reads = bam.getReadsOverlapping(regions); runProcessor(bam, reads, read_filter); } } } } return 0; } if (count_only) { auto counter = new ReadCounter(); if (processAlignments(counter)) return 1; writeln(counter.number_of_reads); } else { if (format == "bam") { // FIXME: dirty hack to avoid closing file twice, depends on std.stdio.File internals scope(exit) *(*cast(void***)(&output_file)) = null; return processAlignments(new BamSerializer(output_filename, output_file, compression_level, pool)); } else if (format == "cram") { output_file.close(); return processAlignments(new CramSerializer(output_filename, ref_fn, n_threads)); } scope (exit) output_file.close(); switch (format) { case "sam": return processAlignments(new SamSerializer(output_file, pool)); case "json": return processAlignments(new JsonSerializer(output_file, pool)); case "msgpack": return processAlignments(new MsgpackSerializer(output_file)); default: stderr.writeln("output format must be one of sam, bam, cram, json"); return 1; } } return 0; } sambamba-0.6.7/test/000077500000000000000000000000001320451002000142315ustar00rootroot00000000000000sambamba-0.6.7/test/chr2_chr3_test_region.bed000066400000000000000000000001301320451002000210560ustar00rootroot000000000000002 166860000 166870000 2 166875000 166890000 3 100000000 170000000 3 150000000 200000000 sambamba-0.6.7/test/issue225.bam000066400000000000000000000102451320451002000162750ustar00rootroot00000000000000BC~sreg``pp 23 J/JK,Ir J(*0357rrtrtM-L8|2srJs:8B0&# V ðہYNxBC \݋]~D1TYbFSRʝ߯~^I8ArD% F$G,bDNB^(xED0 "efgz]=<~[-7__~>ޮj_1/od͛aqb23f6dތa֌՗~ZT&\h ,1/%!SHbOoUowme>}pMf}ݍP}2~6JALiAXά1Y)꩐Fx`:^7[?^\zMS7i}UU)9pu!fS29oe28I tV@B;~'Gq87Gl#,RWj;>ÒQu-zҏv\^l4Gh`NFfyYhT &8/\7:%\5ݼٸ@KH:# )&|;Cuhf'\؄M?{YD&똂ՌFO 2*%{U{n%\XMF+.DAddU$\N6} XcEQyYșx%Dm#$+"1ٌfv'5rܥ"`A)O8 (+ACl5u4d͈uA9! b qFsrпpfNpIQG!$G*ugBH̛ɬTvVd{fh4$]$D%ƥ-]= l)#TT6}?TJ8\ F壴S K%6}O48&M.)}Ǵ ĦLrH8B8φRw ]ve']VO&7.3nIbQhG+?#9>'!ndvp&J8bCyüA2]20ɵ 5$Ci1@#sp|kOp=Մ1A+JJ ʊ$ cJЄ+ vFh,GYRT kQy~vلLH$<U2dSVfP6ܵ 4s*"f%<ͬN F&f!9(K8OZ)< "E( +i>P:bW&7m WeѺi@ZR݇~Z[MEtĕLdWB&`1*"b$@D-%" lj#Cze陱tNW Pd+-QWM3r"Cz/ne^o2pMHʸH&gHFe2z3-q1Hj̓!sq7>~5.`'^w܄[q6]T<1Rj(v`v2Pbv1Q +e:/Vύޘ {o }釲"`EM ڛ1V[s@T?1~7qgmPAߨ)iFxLId!VbP-߻U؆gn藔ㅁ+vlBкA$M#сǬҞ(VjUJdcbfvii[?UUqgKO%[TBgmp؜sFjICJ+\;*Mc4]8Tm#PU ئ/> Yɣ7`>y %8ݪx 9&Zn]'E=Gʵd POydN@ !9#y1e2frU:^گq.4&F7i9 *DR)l90 ,bVF *TIX+ʡISQwy2'6 G_XE=x}D3ZMS"H @|n'H-{Z?h!pZZƃ`FuvWU\a3BI LX>a, O:9 q;wۉg$ЌmUsO7k'yoo} ɉBQD Q)eI `1%bd)m"ѽmcV2Ms֚`9=o>oXX+gW_I[+u)6`R-IrgIgE_"2q ^1V.a8C% 6rBIlCVr_~FNǥkZ! RpuqaL[ita ]IHYa(R$ld6Yob4/%?5'sDơsk?{{Wssuq;ЖkJu[U[o/<*>o/jL~Ȟo!~>HELxjdH<ƵAjttM@`ol|AhYjv@HlmÎ+F=MM@耞X.pN5€֓p=9b2/O1;rEf >A7'!}3bX$ t:KN<=P`_cdg[_ MF6`>n FF3#0Y,($hg1 kѹOxo`^&O8_{/h @ڙiL -ޟ/u>?wM {xeO= ܒ꺶\QiH31tAyϧEӟ sOw<:~#<cGV g JL a9$HNv}uqFx Oo\}sqq-v/rR(̢">SL4";:7=OVKhY ,{1_@>bIev 䳘jsݵ礭^/G"By %B1:x2gJ 6ǤvwQ/ 4CS~߶O\ܨ.lY $gEIPɃNQ Lh{93-I6oK.㣦ۡՕT\!Uޮ!fD9KìHCJevZ)@T_TeU B,@C{8 cKW/О9o:39kYد?RyM \ܨnNj|s0QpeH(li8xX#"o pc%&gLD}ޤ4KBCsambamba-0.6.7/test/issue225.bam.bai000066400000000000000000000001401320451002000170200ustar00rootroot00000000000000BAIIJ@sambamba-0.6.7/test/issue225.out000066400000000000000000001700641320451002000163530ustar00rootroot00000000000000REF POS COV A C G T DEL REFSKIP SAMPLE chrM 699 1 0 1 0 0 0 0 16-3584 chrM 700 1 0 1 0 0 0 0 16-3584 chrM 701 1 0 1 0 0 0 0 16-3584 chrM 702 1 0 0 0 1 0 0 16-3584 chrM 703 1 1 0 0 0 0 0 16-3584 chrM 704 2 0 1 0 1 0 0 16-3584 chrM 705 2 0 1 1 0 0 0 16-3584 chrM 706 2 0 1 0 1 0 0 16-3584 chrM 707 2 0 0 1 1 0 0 16-3584 chrM 708 2 0 1 1 0 0 0 16-3584 chrM 709 2 1 0 1 0 0 0 16-3584 chrM 710 2 0 2 0 0 0 0 16-3584 chrM 711 2 0 0 2 0 0 0 16-3584 chrM 712 2 0 2 0 0 0 0 16-3584 chrM 713 2 2 0 0 0 0 0 16-3584 chrM 714 2 0 1 1 0 0 0 16-3584 chrM 715 2 1 1 0 0 0 0 16-3584 chrM 716 2 0 1 1 0 0 0 16-3584 chrM 717 2 1 0 0 1 0 0 16-3584 chrM 718 2 1 0 0 1 0 0 16-3584 chrM 719 2 1 1 0 0 0 0 16-3584 chrM 720 2 2 0 0 0 0 0 16-3584 chrM 721 2 1 0 1 0 0 0 16-3584 chrM 722 2 1 0 0 1 0 0 16-3584 chrM 723 2 1 1 0 0 0 0 16-3584 chrM 724 2 0 0 2 0 0 0 16-3584 chrM 725 2 0 1 0 1 0 0 16-3584 chrM 726 2 1 0 1 0 0 0 16-3584 chrM 727 2 0 0 1 1 0 0 16-3584 chrM 728 2 0 2 0 0 0 0 16-3584 chrM 729 2 0 0 2 0 0 0 16-3584 chrM 730 2 0 2 0 0 0 0 16-3584 chrM 731 2 0 1 0 1 0 0 16-3584 chrM 732 2 0 1 1 0 0 0 16-3584 chrM 733 2 2 0 0 0 0 0 16-3584 chrM 734 2 2 0 0 0 0 0 16-3584 chrM 735 2 0 1 0 1 0 0 16-3584 chrM 736 2 2 0 0 0 0 0 16-3584 chrM 737 2 1 1 0 0 0 0 16-3584 chrM 738 2 0 1 1 0 0 0 16-3584 chrM 739 2 0 1 0 1 0 0 16-3584 chrM 740 2 0 0 2 0 0 0 16-3584 chrM 741 2 1 0 0 1 0 0 16-3584 chrM 742 2 1 0 1 0 0 0 16-3584 chrM 743 2 1 0 1 0 0 0 16-3584 chrM 744 2 0 0 1 1 0 0 16-3584 chrM 745 2 1 1 0 0 0 0 16-3584 chrM 746 2 0 1 1 0 0 0 16-3584 chrM 747 2 0 1 1 0 0 0 16-3584 chrM 748 2 1 1 0 0 0 0 16-3584 chrM 749 2 0 0 1 1 0 0 16-3584 chrM 750 2 1 1 0 0 0 0 16-3584 chrM 751 2 1 0 1 0 0 0 16-3584 chrM 752 2 1 0 1 0 0 0 16-3584 chrM 753 2 0 1 0 1 0 0 16-3584 chrM 754 2 1 0 1 0 0 0 16-3584 chrM 755 2 1 0 0 1 0 0 16-3584 chrM 756 2 0 0 1 1 0 0 16-3584 chrM 757 2 1 0 0 1 0 0 16-3584 chrM 758 2 1 0 0 1 0 0 16-3584 chrM 759 2 0 1 0 1 0 0 16-3584 chrM 760 2 0 2 0 0 0 0 16-3584 chrM 761 2 0 1 1 0 0 0 16-3584 chrM 762 2 0 1 0 1 0 0 16-3584 chrM 763 2 0 0 1 1 0 0 16-3584 chrM 764 2 1 0 1 0 0 0 16-3584 chrM 765 2 0 1 0 1 0 0 16-3584 chrM 766 2 1 0 1 0 0 0 16-3584 chrM 767 2 0 0 0 2 0 0 16-3584 chrM 768 2 1 0 1 0 0 0 16-3584 chrM 769 2 0 2 0 0 0 0 16-3584 chrM 770 2 0 2 0 0 0 0 16-3584 chrM 771 1 1 0 0 0 0 0 16-3584 chrM 772 1 0 1 0 0 0 0 16-3584 chrM 773 1 0 1 0 0 0 0 16-3584 chrM 774 1 1 0 0 0 0 0 16-3584 chrM 775 1 0 1 0 0 0 0 16-3584 chrM 1860 15 2 4 6 3 0 0 16-3584 chrM 1861 15 4 1 3 7 0 0 16-3584 chrM 1862 15 3 7 2 3 0 0 16-3584 chrM 1863 15 4 5 4 2 0 0 16-3584 chrM 1864 15 3 4 3 5 0 0 16-3584 chrM 1865 30 8 8 11 3 0 0 16-3584 chrM 1866 30 7 4 10 9 0 0 16-3584 chrM 1867 30 9 6 6 9 0 0 16-3584 chrM 1868 30 6 4 9 11 0 0 16-3584 chrM 1869 30 8 9 6 7 0 0 16-3584 chrM 1870 30 7 6 10 7 0 0 16-3584 chrM 1871 30 10 6 7 7 0 0 16-3584 chrM 1872 30 7 5 9 9 0 0 16-3584 chrM 1873 30 6 11 8 5 0 0 16-3584 chrM 1874 30 7 6 10 7 0 0 16-3584 chrM 1875 30 5 6 5 14 0 0 16-3584 chrM 1876 30 8 9 8 5 0 0 16-3584 chrM 1877 30 7 6 12 5 0 0 16-3584 chrM 1878 30 7 12 6 5 0 0 16-3584 chrM 1879 30 8 6 7 9 0 0 16-3584 chrM 1880 30 10 6 7 7 0 0 16-3584 chrM 1881 30 6 12 7 5 0 0 16-3584 chrM 1882 30 6 8 7 9 0 0 16-3584 chrM 1883 30 7 8 8 7 0 0 16-3584 chrM 1884 30 8 6 4 12 0 0 16-3584 chrM 1885 30 11 6 8 5 0 0 16-3584 chrM 1886 30 7 6 8 9 0 0 16-3584 chrM 1887 30 7 12 7 4 0 0 16-3584 chrM 1888 30 9 7 8 6 0 0 16-3584 chrM 1889 30 9 4 8 9 0 0 16-3584 chrM 1890 30 7 6 8 9 0 0 16-3584 chrM 1891 30 8 8 6 8 0 0 16-3584 chrM 1892 30 10 7 8 5 0 0 16-3584 chrM 1893 30 3 8 8 11 0 0 16-3584 chrM 1894 30 6 8 8 8 0 0 16-3584 chrM 1895 30 7 9 7 7 0 0 16-3584 chrM 1896 30 9 4 8 9 0 0 16-3584 chrM 1897 30 5 9 5 11 0 0 16-3584 chrM 1898 30 10 6 4 10 0 0 16-3584 chrM 1899 30 6 8 10 6 0 0 16-3584 chrM 1900 30 8 6 8 8 0 0 16-3584 chrM 1901 30 7 11 4 8 0 0 16-3584 chrM 1902 30 9 7 6 8 0 0 16-3584 chrM 1903 30 7 7 7 9 0 0 16-3584 chrM 1904 30 6 5 8 11 0 0 16-3584 chrM 1905 30 6 6 8 10 0 0 16-3584 chrM 1906 30 12 6 10 2 0 0 16-3584 chrM 1907 30 7 6 4 13 0 0 16-3584 chrM 1908 30 8 8 7 7 0 0 16-3584 chrM 1909 30 6 8 11 5 0 0 16-3584 chrM 1910 30 10 13 6 1 0 0 16-3584 chrM 1911 30 8 6 13 3 0 0 16-3584 chrM 1912 30 5 9 10 6 0 0 16-3584 chrM 1913 30 5 7 7 11 0 0 16-3584 chrM 1914 30 8 9 9 4 0 0 16-3584 chrM 1915 30 7 5 12 6 0 0 16-3584 chrM 1916 30 10 8 5 7 0 0 16-3584 chrM 1917 30 5 5 10 10 0 0 16-3584 chrM 1918 30 4 9 11 6 0 0 16-3584 chrM 1919 30 11 7 7 5 0 0 16-3584 chrM 1920 30 7 10 8 5 0 0 16-3584 chrM 1921 30 7 6 10 7 0 0 16-3584 chrM 1922 30 11 6 8 5 0 0 16-3584 chrM 1923 30 6 9 8 7 0 0 16-3584 chrM 1924 30 9 7 8 6 0 0 16-3584 chrM 1925 30 6 7 7 10 0 0 16-3584 chrM 1926 30 8 4 5 13 0 0 16-3584 chrM 1927 30 6 9 6 9 0 0 16-3584 chrM 1928 30 6 5 10 9 0 0 16-3584 chrM 1929 30 4 10 8 8 0 0 16-3584 chrM 1930 30 5 8 9 8 0 0 16-3584 chrM 1931 30 6 5 9 10 0 0 16-3584 chrM 1932 30 10 6 8 6 0 0 16-3584 chrM 1933 30 8 4 6 12 0 0 16-3584 chrM 1934 30 6 9 7 8 0 0 16-3584 chrM 1935 30 8 7 9 6 0 0 16-3584 chrM 1936 30 7 4 7 12 0 0 16-3584 chrM 1937 30 12 9 7 2 0 0 16-3584 chrM 1938 30 8 9 7 6 0 0 16-3584 chrM 1939 30 5 5 9 11 0 0 16-3584 chrM 1940 15 6 5 3 1 0 0 16-3584 chrM 1941 15 6 2 2 5 0 0 16-3584 chrM 1942 15 1 2 5 7 0 0 16-3584 chrM 1943 15 6 3 3 3 0 0 16-3584 chrM 1944 15 3 2 4 6 0 0 16-3584 chrM 3965 1 0 1 0 0 0 0 16-3584 chrM 3966 1 0 1 0 0 0 0 16-3584 chrM 3967 1 1 0 0 0 0 0 16-3584 chrM 3968 1 0 0 0 1 0 0 16-3584 chrM 3969 1 0 0 1 0 0 0 16-3584 chrM 3970 1 0 0 1 0 0 0 16-3584 chrM 3971 1 1 0 0 0 0 0 16-3584 chrM 3972 1 1 0 0 0 0 0 16-3584 chrM 3973 1 0 0 1 0 0 0 16-3584 chrM 3974 1 1 0 0 0 0 0 16-3584 chrM 3975 1 0 1 0 0 0 0 16-3584 chrM 3976 1 0 1 0 0 0 0 16-3584 chrM 3977 1 0 1 0 0 0 0 16-3584 chrM 3978 1 0 1 0 0 0 0 16-3584 chrM 3979 1 0 1 0 0 0 0 16-3584 chrM 3980 1 0 0 0 1 0 0 16-3584 chrM 3981 1 0 1 0 0 0 0 16-3584 chrM 3982 1 0 0 1 0 0 0 16-3584 chrM 3983 1 0 0 0 1 0 0 16-3584 chrM 3984 1 0 0 1 0 0 0 16-3584 chrM 3985 1 1 0 0 0 0 0 16-3584 chrM 3986 1 0 1 0 0 0 0 16-3584 chrM 3987 1 0 0 1 0 0 0 16-3584 chrM 3988 1 0 0 1 0 0 0 16-3584 chrM 3989 1 0 0 0 1 0 0 16-3584 chrM 3990 1 0 0 1 0 0 0 16-3584 chrM 3991 1 0 0 0 1 0 0 16-3584 chrM 3992 1 1 0 0 0 0 0 16-3584 chrM 3993 1 0 0 0 1 0 0 16-3584 chrM 3994 1 0 0 0 1 0 0 16-3584 chrM 3995 1 0 0 1 0 0 0 16-3584 chrM 3996 1 0 0 1 0 0 0 16-3584 chrM 3997 1 0 1 0 0 0 0 16-3584 chrM 3998 1 0 1 0 0 0 0 16-3584 chrM 3999 1 0 0 0 1 0 0 16-3584 chrM 4000 1 1 0 0 0 0 0 16-3584 chrM 4001 1 1 0 0 0 0 0 16-3584 chrM 4002 1 0 1 0 0 0 0 16-3584 chrM 4003 1 0 0 1 0 0 0 16-3584 chrM 4004 1 0 0 1 0 0 0 16-3584 chrM 4005 1 0 0 0 1 0 0 16-3584 chrM 4006 1 1 0 0 0 0 0 16-3584 chrM 4007 1 1 0 0 0 0 0 16-3584 chrM 4008 1 1 0 0 0 0 0 16-3584 chrM 4009 1 0 1 0 0 0 0 16-3584 chrM 4010 1 0 0 1 0 0 0 16-3584 chrM 4011 1 1 0 0 0 0 0 16-3584 chrM 4012 1 0 0 1 0 0 0 16-3584 chrM 4013 1 1 0 0 0 0 0 16-3584 chrM 4014 1 0 1 0 0 0 0 16-3584 chrM 4015 1 0 0 1 0 0 0 16-3584 chrM 4016 1 0 1 0 0 0 0 16-3584 chrM 4017 1 0 0 1 0 0 0 16-3584 chrM 4018 1 1 0 0 0 0 0 16-3584 chrM 4019 1 0 0 0 1 0 0 16-3584 chrM 4020 1 0 1 0 0 0 0 16-3584 chrM 4021 1 0 0 1 0 0 0 16-3584 chrM 4022 1 1 0 0 0 0 0 16-3584 chrM 4023 1 1 0 0 0 0 0 16-3584 chrM 4024 1 1 0 0 0 0 0 16-3584 chrM 4025 1 1 0 0 0 0 0 16-3584 chrM 4026 1 0 0 0 1 0 0 16-3584 chrM 4027 1 0 0 0 1 0 0 16-3584 chrM 4028 1 0 0 1 0 0 0 16-3584 chrM 4029 1 1 0 0 0 0 0 16-3584 chrM 4030 1 0 1 0 0 0 0 16-3584 chrM 4031 1 0 1 0 0 0 0 16-3584 chrM 4032 1 1 0 0 0 0 0 16-3584 chrM 4033 1 0 0 0 1 0 0 16-3584 chrM 4034 1 0 0 1 0 0 0 16-3584 chrM 4035 1 0 0 0 1 0 0 16-3584 chrM 4036 1 0 1 0 0 0 0 16-3584 chrM 4037 1 0 0 1 0 0 0 16-3584 chrM 4038 1 0 1 0 0 0 0 16-3584 chrM 4039 1 0 1 0 0 0 0 16-3584 chrM 4040 1 1 0 0 0 0 0 16-3584 chrM 4041 1 1 0 0 0 0 0 16-3584 chrM 4042 1 0 0 1 0 0 0 16-3584 chrM 4043 1 0 0 1 0 0 0 16-3584 chrM 4044 1 0 1 0 0 0 0 16-3584 chrM 4045 1 1 0 0 0 0 0 16-3584 chrM 4046 1 0 0 1 0 0 0 16-3584 chrM 4047 1 0 1 0 0 0 0 16-3584 chrM 4048 1 1 0 0 0 0 0 16-3584 chrM 4049 1 0 0 1 0 0 0 16-3584 chrM 4050 1 0 1 0 0 0 0 16-3584 chrM 4051 1 0 0 1 0 0 0 16-3584 chrM 4052 1 0 0 1 0 0 0 16-3584 chrM 4053 1 0 0 1 0 0 0 16-3584 chrM 4054 1 0 0 0 1 0 0 16-3584 chrM 4055 1 0 1 0 0 0 0 16-3584 chrM 4056 1 0 1 0 0 0 0 16-3584 chrM 4057 1 0 0 0 1 0 0 16-3584 chrM 4058 1 0 0 0 1 0 0 16-3584 chrM 4059 1 0 1 0 0 0 0 16-3584 chrM 4060 1 0 0 0 1 0 0 16-3584 chrM 4061 1 0 1 0 0 0 0 16-3584 chrM 4062 1 0 0 1 0 0 0 16-3584 chrM 4063 1 0 1 0 0 0 0 16-3584 chrM 4064 1 0 0 1 0 0 0 16-3584 chrM 4065 1 0 0 1 0 0 0 16-3584 chrM 4066 1 0 0 0 1 0 0 16-3584 chrM 4067 1 0 0 1 0 0 0 16-3584 chrM 4068 1 1 0 0 0 0 0 16-3584 chrM 4069 1 0 0 1 0 0 0 16-3584 chrM 4070 1 0 0 0 1 0 0 16-3584 chrM 4071 1 1 0 0 0 0 0 16-3584 chrM 4072 1 0 0 0 1 0 0 16-3584 chrM 4073 1 0 0 1 0 0 0 16-3584 chrM 4074 1 1 0 0 0 0 0 16-3584 chrM 4075 1 0 0 1 0 0 0 16-3584 chrM 4076 1 0 1 0 0 0 0 16-3584 chrM 4077 1 0 1 0 0 0 0 16-3584 chrM 4078 1 1 0 0 0 0 0 16-3584 chrM 4079 1 0 0 1 0 0 0 16-3584 chrM 4080 1 0 0 0 1 0 0 16-3584 chrM 4081 1 0 0 1 0 0 0 16-3584 chrM 4082 1 1 0 0 0 0 0 16-3584 chrM 4083 1 0 0 1 0 0 0 16-3584 chrM 4084 1 1 0 0 0 0 0 16-3584 chrM 4085 1 0 0 0 1 0 0 16-3584 chrM 4086 1 0 1 0 0 0 0 16-3584 chrM 4087 1 0 0 0 1 0 0 16-3584 chrM 4088 1 1 0 0 0 0 0 16-3584 chrM 4089 1 0 0 1 0 0 0 16-3584 chrM 4090 1 1 0 0 0 0 0 16-3584 chrM 4091 1 1 0 0 0 0 0 16-3584 chrM 4092 1 0 0 0 1 0 0 16-3584 chrM 4093 1 1 0 0 0 0 0 16-3584 chrM 4094 1 0 1 0 0 0 0 16-3584 chrM 4095 1 1 0 0 0 0 0 16-3584 chrM 4096 1 0 0 1 0 0 0 16-3584 chrM 4097 1 0 0 0 1 0 0 16-3584 chrM 4098 1 0 0 1 0 0 0 16-3584 chrM 4099 1 0 0 0 1 0 0 16-3584 chrM 4100 1 1 0 0 0 0 0 16-3584 chrM 4101 1 0 0 1 0 0 0 16-3584 chrM 4102 1 1 0 0 0 0 0 16-3584 chrM 4103 1 0 0 1 0 0 0 16-3584 chrM 4104 1 0 1 0 0 0 0 16-3584 chrM 4105 1 0 0 1 0 0 0 16-3584 chrM 4106 1 0 0 0 1 0 0 16-3584 chrM 4107 1 1 0 0 0 0 0 16-3584 chrM 4108 1 0 0 0 1 0 0 16-3584 chrM 4109 1 0 0 1 0 0 0 16-3584 chrM 4110 1 0 0 0 1 0 0 16-3584 chrM 4127 1 1 0 0 0 0 0 16-3584 chrM 4128 1 0 0 0 1 0 0 16-3584 chrM 4129 1 0 0 0 1 0 0 16-3584 chrM 4130 1 0 0 0 1 0 0 16-3584 chrM 4131 1 1 0 0 0 0 0 16-3584 chrM 4132 1 0 0 0 1 0 0 16-3584 chrM 4133 1 0 1 0 0 0 0 16-3584 chrM 4134 1 1 0 0 0 0 0 16-3584 chrM 4135 1 1 0 0 0 0 0 16-3584 chrM 4136 1 0 0 1 0 0 0 16-3584 chrM 4137 1 0 0 1 0 0 0 16-3584 chrM 4138 1 0 1 0 0 0 0 16-3584 chrM 4139 1 0 0 1 0 0 0 16-3584 chrM 4140 1 0 1 0 0 0 0 16-3584 chrM 4141 1 0 0 0 1 0 0 16-3584 chrM 4142 1 1 0 0 0 0 0 16-3584 chrM 4143 1 0 1 0 0 0 0 16-3584 chrM 4144 1 0 0 1 0 0 0 16-3584 chrM 4145 1 0 0 0 1 0 0 16-3584 chrM 4146 1 1 0 0 0 0 0 16-3584 chrM 4147 1 0 1 0 0 0 0 16-3584 chrM 4148 1 0 1 0 0 0 0 16-3584 chrM 4149 1 1 0 0 0 0 0 16-3584 chrM 4150 1 0 1 0 0 0 0 16-3584 chrM 4151 1 1 0 0 0 0 0 16-3584 chrM 4152 1 0 1 0 0 0 0 16-3584 chrM 4153 1 1 0 0 0 0 0 16-3584 chrM 4154 1 0 0 0 1 0 0 16-3584 chrM 4155 1 1 0 0 0 0 0 16-3584 chrM 4156 1 0 1 0 0 0 0 16-3584 chrM 4157 1 0 0 1 0 0 0 16-3584 chrM 4158 1 1 0 0 0 0 0 16-3584 chrM 4159 1 1 0 0 0 0 0 16-3584 chrM 4160 1 0 1 0 0 0 0 16-3584 chrM 4161 1 0 1 0 0 0 0 16-3584 chrM 4162 1 0 0 1 0 0 0 16-3584 chrM 4163 1 1 0 0 0 0 0 16-3584 chrM 4164 1 0 0 1 0 0 0 16-3584 chrM 4165 2 0 1 0 1 0 0 16-3584 chrM 4166 2 2 0 0 0 0 0 16-3584 chrM 4167 2 0 2 0 0 0 0 16-3584 chrM 4168 2 0 1 0 1 0 0 16-3584 chrM 4169 2 0 2 0 0 0 0 16-3584 chrM 4170 2 0 1 1 0 0 0 16-3584 chrM 4171 2 1 0 1 0 0 0 16-3584 chrM 4172 2 0 1 0 1 0 0 16-3584 chrM 4173 2 0 0 2 0 0 0 16-3584 chrM 4174 2 0 1 0 1 0 0 16-3584 chrM 4175 2 0 0 1 1 0 0 16-3584 chrM 4176 2 1 0 0 1 0 0 16-3584 chrM 4177 2 2 0 0 0 0 0 16-3584 chrM 4178 2 0 0 1 1 0 0 16-3584 chrM 4179 2 2 0 0 0 0 0 16-3584 chrM 4180 2 0 0 2 0 0 0 16-3584 chrM 4181 2 1 1 0 0 0 0 16-3584 chrM 4182 2 0 0 0 2 0 0 16-3584 chrM 4183 2 0 0 1 1 0 0 16-3584 chrM 4184 2 0 1 1 0 0 0 16-3584 chrM 4185 2 1 0 0 1 0 0 16-3584 chrM 4186 2 1 0 0 1 0 0 16-3584 chrM 4187 2 1 0 0 1 0 0 16-3584 chrM 4188 2 0 1 0 1 0 0 16-3584 chrM 4189 2 0 2 0 0 0 0 16-3584 chrM 4190 2 0 0 1 1 0 0 16-3584 chrM 4191 2 0 2 0 0 0 0 16-3584 chrM 4192 2 1 1 0 0 0 0 16-3584 chrM 4193 2 1 0 1 0 0 0 16-3584 chrM 4194 2 1 0 0 1 0 0 16-3584 chrM 4195 2 0 1 0 1 0 0 16-3584 chrM 4196 2 1 0 1 0 0 0 16-3584 chrM 4197 2 0 1 1 0 0 0 16-3584 chrM 4198 2 0 0 0 2 0 0 16-3584 chrM 4199 2 1 0 0 1 0 0 16-3584 chrM 4200 2 1 1 0 0 0 0 16-3584 chrM 4201 2 0 0 0 2 0 0 16-3584 chrM 4202 2 0 1 0 1 0 0 16-3584 chrM 4203 2 0 1 1 0 0 0 16-3584 chrM 4204 2 2 0 0 0 0 0 16-3584 chrM 4205 2 1 0 1 0 0 0 16-3584 chrM 4206 2 1 0 0 1 0 0 16-3584 chrM 4207 2 1 0 1 0 0 0 16-3584 chrM 4208 2 0 1 1 0 0 0 16-3584 chrM 4209 2 1 1 0 0 0 0 16-3584 chrM 4210 2 0 0 1 1 0 0 16-3584 chrM 4211 2 0 1 1 0 0 0 16-3584 chrM 4212 2 1 1 0 0 0 0 16-3584 chrM 4213 2 1 0 0 1 0 0 16-3584 chrM 4214 2 0 0 1 1 0 0 16-3584 chrM 4215 2 0 1 1 0 0 0 16-3584 chrM 4216 2 0 2 0 0 0 0 16-3584 chrM 4217 3 2 0 1 0 0 0 16-3584 chrM 4218 3 2 0 0 1 0 0 16-3584 chrM 4219 3 1 0 0 2 0 0 16-3584 chrM 4220 3 0 0 1 2 0 0 16-3584 chrM 4221 3 0 1 2 0 0 0 16-3584 chrM 4222 3 1 0 1 1 0 0 16-3584 chrM 4223 3 1 2 0 0 0 0 16-3584 chrM 4224 3 1 0 2 0 0 0 16-3584 chrM 4225 3 0 1 2 0 0 0 16-3584 chrM 4226 3 1 1 0 1 0 0 16-3584 chrM 4227 3 2 1 0 0 0 0 16-3584 chrM 4228 3 0 1 1 1 0 0 16-3584 chrM 4229 3 1 1 0 1 0 0 16-3584 chrM 4230 3 1 1 0 1 0 0 16-3584 chrM 4231 3 1 0 1 1 0 0 16-3584 chrM 4232 3 0 1 2 0 0 0 16-3584 chrM 4233 3 0 1 1 1 0 0 16-3584 chrM 4234 3 0 2 1 0 0 0 16-3584 chrM 4235 3 1 1 0 1 0 0 16-3584 chrM 4236 3 0 2 0 1 0 0 16-3584 chrM 4237 3 2 0 0 1 0 0 16-3584 chrM 4238 3 1 0 0 2 0 0 16-3584 chrM 4239 3 2 0 0 1 0 0 16-3584 chrM 4240 3 0 2 1 0 0 0 16-3584 chrM 4241 3 1 0 1 1 0 0 16-3584 chrM 4242 3 0 1 0 2 0 0 16-3584 chrM 4243 3 0 1 2 0 0 0 16-3584 chrM 4244 3 0 2 1 0 0 0 16-3584 chrM 4245 3 0 2 0 1 0 0 16-3584 chrM 4246 3 0 2 1 0 0 0 16-3584 chrM 4247 3 1 1 0 1 0 0 16-3584 chrM 4248 3 0 0 1 2 0 0 16-3584 chrM 4249 3 1 1 1 0 0 0 16-3584 chrM 4250 3 1 0 1 1 0 0 16-3584 chrM 4251 3 0 2 0 1 0 0 16-3584 chrM 4252 3 1 0 1 1 0 0 16-3584 chrM 4253 3 1 1 1 0 0 0 16-3584 chrM 4254 3 1 1 0 1 0 0 16-3584 chrM 4255 3 1 1 0 1 0 0 16-3584 chrM 4256 3 0 2 0 1 0 0 16-3584 chrM 4257 3 0 0 3 0 0 0 16-3584 chrM 4258 3 0 0 3 0 0 0 16-3584 chrM 4259 3 0 1 1 1 0 0 16-3584 chrM 4260 3 1 0 0 2 0 0 16-3584 chrM 4261 3 1 2 0 0 0 0 16-3584 chrM 4262 3 1 1 1 0 0 0 16-3584 chrM 4263 3 0 0 2 1 0 0 16-3584 chrM 4264 3 0 2 0 1 0 0 16-3584 chrM 4265 3 0 0 1 2 0 0 16-3584 chrM 4266 3 1 1 1 0 0 0 16-3584 chrM 4267 3 1 1 1 0 0 0 16-3584 chrM 4268 3 1 1 1 0 0 0 16-3584 chrM 4269 3 1 1 0 1 0 0 16-3584 chrM 4270 3 0 2 0 1 0 0 16-3584 chrM 4271 3 0 1 2 0 0 0 16-3584 chrM 4272 3 0 2 0 1 0 0 16-3584 chrM 4273 2 1 0 1 0 0 0 16-3584 chrM 4274 2 1 0 0 1 0 0 16-3584 chrM 4275 2 0 1 1 0 0 0 16-3584 chrM 4276 2 2 0 0 0 0 0 16-3584 chrM 4277 2 1 0 1 0 0 0 16-3584 chrM 4278 2 1 0 1 0 0 0 16-3584 chrM 4279 2 0 0 2 0 0 0 16-3584 chrM 4280 2 0 0 0 2 0 0 16-3584 chrM 4281 2 2 0 0 0 0 0 16-3584 chrM 4282 2 1 0 1 0 0 0 16-3584 chrM 4283 2 0 1 1 0 0 0 16-3584 chrM 4284 2 0 0 1 1 0 0 16-3584 chrM 4285 2 0 0 1 1 0 0 16-3584 chrM 4286 2 1 0 1 0 0 0 16-3584 chrM 4287 2 0 2 0 0 0 0 16-3584 chrM 4288 2 2 0 0 0 0 0 16-3584 chrM 4289 2 0 1 0 1 0 0 16-3584 chrM 4290 2 0 0 1 1 0 0 16-3584 chrM 4291 2 0 0 0 2 0 0 16-3584 chrM 4292 2 2 0 0 0 0 0 16-3584 chrM 4293 2 2 0 0 0 0 0 16-3584 chrM 4294 2 1 1 0 0 0 0 16-3584 chrM 4295 2 0 0 1 1 0 0 16-3584 chrM 4296 2 1 1 0 0 0 0 16-3584 chrM 4297 2 1 0 0 1 0 0 16-3584 chrM 4298 2 1 0 0 1 0 0 16-3584 chrM 4299 2 1 0 0 1 0 0 16-3584 chrM 4300 2 1 1 0 0 0 0 16-3584 chrM 4301 2 0 0 0 2 0 0 16-3584 chrM 4302 2 1 0 1 0 0 0 16-3584 chrM 4303 2 1 1 0 0 0 0 16-3584 chrM 4304 2 0 0 0 2 0 0 16-3584 chrM 4305 2 1 0 0 1 0 0 16-3584 chrM 4306 2 2 0 0 0 0 0 16-3584 chrM 4307 2 0 0 1 1 0 0 16-3584 chrM 4308 2 2 0 0 0 0 0 16-3584 chrM 4309 1 0 0 1 0 0 0 16-3584 chrM 4310 1 0 1 0 0 0 0 16-3584 chrM 4311 1 0 0 1 0 0 0 16-3584 chrM 4312 1 1 0 0 0 0 0 16-3584 chrM 4313 1 0 1 0 0 0 0 16-3584 chrM 4314 1 0 1 0 0 0 0 16-3584 chrM 4315 1 0 0 0 1 0 0 16-3584 chrM 4316 1 0 0 0 1 0 0 16-3584 chrM 4317 1 0 0 0 1 0 0 16-3584 chrM 4318 1 0 0 1 0 0 0 16-3584 chrM 4319 1 0 0 0 1 0 0 16-3584 chrM 4320 1 0 1 0 0 0 0 16-3584 chrM 4321 1 0 0 1 0 0 0 16-3584 chrM 4322 1 1 0 0 0 0 0 16-3584 chrM 4323 1 0 1 0 0 0 0 16-3584 chrM 4324 1 0 1 0 0 0 0 16-3584 chrM 4325 1 1 0 0 0 0 0 16-3584 chrM 4326 1 0 0 0 1 0 0 16-3584 chrM 4327 1 0 0 0 1 0 0 16-3584 chrM 4328 1 1 0 0 0 0 0 16-3584 chrM 4329 1 0 0 1 0 0 0 16-3584 chrM 4330 1 1 0 0 0 0 0 16-3584 chrM 4331 1 0 0 1 0 0 0 16-3584 chrM 4332 1 1 0 0 0 0 0 16-3584 chrM 4333 1 1 0 0 0 0 0 16-3584 chrM 4334 1 0 0 0 1 0 0 16-3584 chrM 4335 1 0 0 0 1 0 0 16-3584 chrM 4336 1 0 0 0 1 0 0 16-3584 chrM 4337 1 0 0 0 1 0 0 16-3584 chrM 4338 1 0 0 1 0 0 0 16-3584 chrM 4339 1 0 0 0 1 0 0 16-3584 chrM 4340 1 1 0 0 0 0 0 16-3584 chrM 4341 1 0 0 0 1 0 0 16-3584 chrM 4342 1 0 0 0 1 0 0 16-3584 chrM 4343 1 1 0 0 0 0 0 16-3584 chrM 4344 1 0 0 1 0 0 0 16-3584 chrM 4345 1 0 0 0 1 0 0 16-3584 chrM 4346 1 0 1 0 0 0 0 16-3584 chrM 4347 1 1 0 0 0 0 0 16-3584 chrM 4348 1 0 1 0 0 0 0 16-3584 chrM 4349 1 0 0 0 1 0 0 16-3584 chrM 4350 1 0 0 1 0 0 0 16-3584 chrM 4351 1 0 0 0 1 0 0 16-3584 chrM 4352 1 0 0 0 1 0 0 16-3584 chrM 4353 1 0 1 0 0 0 0 16-3584 chrM 4354 1 1 0 0 0 0 0 16-3584 chrM 4355 1 0 0 0 1 0 0 16-3584 chrM 4356 1 0 0 0 1 0 0 16-3584 chrM 4357 1 0 0 0 1 0 0 16-3584 chrM 4358 1 0 0 1 0 0 0 16-3584 chrM 4359 1 1 0 0 0 0 0 16-3584 chrM 4360 1 1 0 0 0 0 0 16-3584 chrM 4361 1 0 0 0 1 0 0 16-3584 chrM 4362 1 0 0 1 0 0 0 16-3584 chrM 4814 2 0 2 0 0 0 0 16-3584 chrM 4815 2 1 0 1 0 0 0 16-3584 chrM 4816 2 0 1 1 0 0 0 16-3584 chrM 4817 2 0 1 1 0 0 0 16-3584 chrM 4818 2 0 0 0 2 0 0 16-3584 chrM 4819 2 0 0 0 2 0 0 16-3584 chrM 4820 2 0 0 0 2 0 0 16-3584 chrM 4821 2 0 0 2 0 0 0 16-3584 chrM 4822 2 0 0 0 2 0 0 16-3584 chrM 4823 2 1 1 0 0 0 0 16-3584 chrM 4824 2 1 1 0 0 0 0 16-3584 chrM 4825 2 1 0 1 0 0 0 16-3584 chrM 4826 2 1 0 0 1 0 0 16-3584 chrM 4827 2 1 0 0 1 0 0 16-3584 chrM 4828 2 0 0 1 1 0 0 16-3584 chrM 4829 2 0 0 1 1 0 0 16-3584 chrM 4830 2 0 1 0 1 0 0 16-3584 chrM 4831 2 0 1 0 1 0 0 16-3584 chrM 4832 4 0 2 2 0 0 0 16-3584 chrM 4833 4 1 2 1 0 0 0 16-3584 chrM 4834 4 2 1 1 0 0 0 16-3584 chrM 4835 4 1 1 1 1 0 0 16-3584 chrM 4836 4 3 0 0 1 0 0 16-3584 chrM 4837 4 1 1 0 2 0 0 16-3584 chrM 4838 4 0 2 2 0 0 0 16-3584 chrM 4839 4 1 0 0 3 0 0 16-3584 chrM 4840 4 0 0 3 1 0 0 16-3584 chrM 4841 4 1 2 1 0 0 0 16-3584 chrM 4842 4 0 1 1 2 0 0 16-3584 chrM 4843 4 0 2 0 2 0 0 16-3584 chrM 4844 4 2 1 1 0 0 0 16-3584 chrM 4845 4 1 2 0 1 0 0 16-3584 chrM 4846 4 1 2 0 1 0 0 16-3584 chrM 4847 4 0 1 1 2 0 0 16-3584 chrM 4848 4 1 0 2 1 0 0 16-3584 chrM 4849 4 2 0 2 0 0 0 16-3584 chrM 4850 4 2 1 1 0 0 0 16-3584 chrM 4851 4 1 0 1 2 0 0 16-3584 chrM 4852 4 1 0 3 0 0 0 16-3584 chrM 4853 6 1 3 1 1 0 0 16-3584 chrM 4854 6 0 1 1 4 0 0 16-3584 chrM 4855 6 2 1 1 2 0 0 16-3584 chrM 4856 6 1 0 2 3 0 0 16-3584 chrM 4857 6 3 1 0 2 0 0 16-3584 chrM 4858 6 0 3 1 2 0 0 16-3584 chrM 4859 6 2 0 2 2 0 0 16-3584 chrM 4860 6 1 1 1 3 0 0 16-3584 chrM 4861 6 2 2 0 2 0 0 16-3584 chrM 4862 6 3 1 1 1 0 0 16-3584 chrM 4863 6 0 2 2 2 0 0 16-3584 chrM 4864 6 1 2 2 1 0 0 16-3584 chrM 4865 6 2 1 1 2 0 0 16-3584 chrM 4866 6 3 2 0 1 0 0 16-3584 chrM 4867 6 2 1 3 0 0 0 16-3584 chrM 4868 6 3 0 2 1 0 0 16-3584 chrM 4869 6 0 1 3 2 0 0 16-3584 chrM 4870 6 1 1 2 2 0 0 16-3584 chrM 4871 6 3 0 1 2 0 0 16-3584 chrM 4872 6 1 3 1 1 0 0 16-3584 chrM 4873 6 0 1 2 3 0 0 16-3584 chrM 4874 6 4 0 0 2 0 0 16-3584 chrM 4875 6 0 3 2 1 0 0 16-3584 chrM 4876 6 0 3 2 1 0 0 16-3584 chrM 4877 6 3 0 2 1 0 0 16-3584 chrM 4878 6 5 1 0 0 0 0 16-3584 chrM 4879 6 2 2 1 1 0 0 16-3584 chrM 4880 6 2 2 1 1 0 0 16-3584 chrM 4881 6 1 1 3 1 0 0 16-3584 chrM 4882 6 1 1 2 2 0 0 16-3584 chrM 4883 6 1 1 1 3 0 0 16-3584 chrM 4884 6 1 1 2 2 0 0 16-3584 chrM 4885 6 1 2 1 2 0 0 16-3584 chrM 4886 6 1 3 0 2 0 0 16-3584 chrM 4887 6 2 2 2 0 0 0 16-3584 chrM 4888 6 2 1 1 2 0 0 16-3584 chrM 4889 6 1 3 2 0 0 0 16-3584 chrM 4890 6 1 2 1 2 0 0 16-3584 chrM 4891 6 0 3 0 3 0 0 16-3584 chrM 4892 6 2 4 0 0 0 0 16-3584 chrM 4893 6 1 3 1 1 0 0 16-3584 chrM 4894 6 3 1 1 1 0 0 16-3584 chrM 4895 6 0 1 2 3 0 0 16-3584 chrM 4896 6 1 1 3 1 0 0 16-3584 chrM 4897 6 2 1 2 1 0 0 16-3584 chrM 4898 6 3 3 0 0 0 0 16-3584 chrM 4899 6 1 4 0 1 0 0 16-3584 chrM 4900 6 2 0 2 2 0 0 16-3584 chrM 4901 6 1 2 2 1 0 0 16-3584 chrM 4902 6 1 3 1 1 0 0 16-3584 chrM 4903 6 2 2 1 1 0 0 16-3584 chrM 4904 6 0 2 3 1 0 0 16-3584 chrM 4905 6 0 1 4 1 0 0 16-3584 chrM 4906 6 3 0 1 2 0 0 16-3584 chrM 4907 6 1 1 1 3 0 0 16-3584 chrM 4908 6 1 0 1 4 0 0 16-3584 chrM 4909 6 3 2 1 0 0 0 16-3584 chrM 4910 6 2 3 0 1 0 0 16-3584 chrM 4911 6 1 2 2 1 0 0 16-3584 chrM 4912 6 0 3 2 1 0 0 16-3584 chrM 4913 6 1 0 1 4 0 0 16-3584 chrM 4914 6 1 1 0 4 0 0 16-3584 chrM 4915 6 2 0 1 3 0 0 16-3584 chrM 4916 6 1 2 1 2 0 0 16-3584 chrM 4917 6 0 1 3 2 0 0 16-3584 chrM 4918 6 4 1 1 0 0 0 16-3584 chrM 4919 6 1 1 0 4 0 0 16-3584 chrM 4920 6 3 0 2 1 0 0 16-3584 chrM 4921 6 2 3 0 1 0 0 16-3584 chrM 4922 6 2 0 1 3 0 0 16-3584 chrM 4923 6 1 1 3 1 0 0 16-3584 chrM 4924 6 1 2 1 2 0 0 16-3584 chrM 4925 6 0 1 3 2 0 0 16-3584 chrM 4926 6 2 2 0 2 0 0 16-3584 chrM 4927 6 1 3 1 1 0 0 16-3584 chrM 4928 6 1 1 2 2 0 0 16-3584 chrM 4929 6 3 1 0 2 0 0 16-3584 chrM 4930 6 3 1 1 1 0 0 16-3584 chrM 4931 6 0 1 3 2 0 0 16-3584 chrM 4932 6 1 3 0 2 0 0 16-3584 chrM 4933 6 2 1 3 0 0 0 16-3584 chrM 4934 6 1 4 0 1 0 0 16-3584 chrM 4935 6 1 1 2 2 0 0 16-3584 chrM 4936 6 1 3 0 2 0 0 16-3584 chrM 4937 6 3 0 1 2 0 0 16-3584 chrM 4938 6 1 2 1 2 0 0 16-3584 chrM 4939 6 1 3 1 1 0 0 16-3584 chrM 4940 6 3 2 1 0 0 0 16-3584 chrM 4941 6 2 1 1 2 0 0 16-3584 chrM 4942 6 1 3 0 2 0 0 16-3584 chrM 4943 6 3 1 1 1 0 0 16-3584 chrM 4944 6 1 1 2 2 0 0 16-3584 chrM 4945 6 0 3 0 3 0 0 16-3584 chrM 4946 6 2 1 1 2 0 0 16-3584 chrM 4947 6 1 3 0 2 0 0 16-3584 chrM 4948 6 1 3 0 2 0 0 16-3584 chrM 4949 6 1 3 1 1 0 0 16-3584 chrM 4950 6 2 2 1 1 0 0 16-3584 chrM 4951 6 2 0 3 1 0 0 16-3584 chrM 4952 6 3 3 0 0 0 0 16-3584 chrM 4953 6 1 2 2 1 0 0 16-3584 chrM 4954 6 2 1 3 0 0 0 16-3584 chrM 4955 6 3 1 0 2 0 0 16-3584 chrM 4956 6 0 1 1 4 0 0 16-3584 chrM 4957 6 1 0 2 3 0 0 16-3584 chrM 4958 4 0 2 2 0 0 0 16-3584 chrM 4959 4 2 1 1 0 0 0 16-3584 chrM 4960 4 0 2 0 2 0 0 16-3584 chrM 4961 4 2 1 0 1 0 0 16-3584 chrM 4962 4 1 0 1 2 0 0 16-3584 chrM 4963 4 1 0 1 2 0 0 16-3584 chrM 4964 4 1 1 1 1 0 0 16-3584 chrM 4965 4 1 2 0 1 0 0 16-3584 chrM 4966 4 1 0 3 0 0 0 16-3584 chrM 4967 4 1 1 0 2 0 0 16-3584 chrM 4968 4 2 0 0 2 0 0 16-3584 chrM 4969 4 0 2 1 1 0 0 16-3584 chrM 4970 4 1 1 1 1 0 0 16-3584 chrM 4971 4 2 0 0 2 0 0 16-3584 chrM 4972 4 0 1 1 2 0 0 16-3584 chrM 4973 4 1 1 1 1 0 0 16-3584 chrM 4974 4 3 1 0 0 0 0 16-3584 chrM 4975 4 3 0 1 0 0 0 16-3584 chrM 4976 4 0 1 1 2 0 0 16-3584 chrM 4977 4 0 3 0 1 0 0 16-3584 chrM 4978 2 0 0 2 0 0 0 16-3584 chrM 4979 2 1 1 0 0 0 0 16-3584 chrM 4980 2 0 2 0 0 0 0 16-3584 chrM 4981 2 1 0 1 0 0 0 16-3584 chrM 4982 2 0 0 0 2 0 0 16-3584 chrM 4983 2 0 0 0 2 0 0 16-3584 chrM 4984 2 0 1 0 1 0 0 16-3584 chrM 4985 2 0 1 0 1 0 0 16-3584 chrM 4986 2 2 0 0 0 0 0 16-3584 chrM 4987 2 1 1 0 0 0 0 16-3584 chrM 4988 2 2 0 0 0 0 0 16-3584 chrM 4989 2 1 0 0 1 0 0 16-3584 chrM 4990 2 1 0 0 1 0 0 16-3584 chrM 4991 2 1 0 0 1 0 0 16-3584 chrM 4992 2 1 1 0 0 0 0 16-3584 chrM 4993 2 1 1 0 0 0 0 16-3584 chrM 4994 2 1 1 0 0 0 0 16-3584 chrM 4995 2 2 0 0 0 0 0 16-3584 chrM 4996 2 0 0 1 1 0 0 16-3584 chrM 4997 2 0 0 0 2 0 0 16-3584 chrM 4998 2 1 0 0 1 0 0 16-3584 chrM 5069 1 0 1 0 0 0 0 16-3584 chrM 5070 1 0 0 0 1 0 0 16-3584 chrM 5071 1 0 1 0 0 0 0 16-3584 chrM 5072 1 0 1 0 0 0 0 16-3584 chrM 5073 1 0 0 1 0 0 0 16-3584 chrM 5074 1 0 1 0 0 0 0 16-3584 chrM 5075 1 1 0 0 0 0 0 16-3584 chrM 5076 1 0 0 1 0 0 0 16-3584 chrM 5077 1 1 0 0 0 0 0 16-3584 chrM 5078 1 0 0 0 1 0 0 16-3584 chrM 5079 1 0 0 0 1 0 0 16-3584 chrM 5080 1 1 0 0 0 0 0 16-3584 chrM 5081 1 0 1 0 0 0 0 16-3584 chrM 5082 2 1 0 0 1 0 0 16-3584 chrM 5083 2 2 0 0 0 0 0 16-3584 chrM 5084 2 1 0 1 0 0 0 16-3584 chrM 5085 2 0 1 1 0 0 0 16-3584 chrM 5086 2 1 0 0 1 0 0 16-3584 chrM 5087 2 0 1 0 1 0 0 16-3584 chrM 5088 2 0 2 0 0 0 0 16-3584 chrM 5089 2 1 1 0 0 0 0 16-3584 chrM 5090 2 2 0 0 0 0 0 16-3584 chrM 5091 2 0 1 1 0 0 0 16-3584 chrM 5092 2 0 1 1 0 0 0 16-3584 chrM 5093 2 1 0 0 1 0 0 16-3584 chrM 5094 2 1 1 0 0 0 0 16-3584 chrM 5095 2 0 0 1 1 0 0 16-3584 chrM 5096 2 1 0 1 0 0 0 16-3584 chrM 5097 2 0 1 0 1 0 0 16-3584 chrM 5098 2 0 2 0 0 0 0 16-3584 chrM 5099 2 1 1 0 0 0 0 16-3584 chrM 5100 2 0 1 0 1 0 0 16-3584 chrM 5101 2 0 1 0 1 0 0 16-3584 chrM 5102 2 1 0 0 1 0 0 16-3584 chrM 5103 2 1 0 0 1 0 0 16-3584 chrM 5104 2 0 0 1 1 0 0 16-3584 chrM 5105 2 0 1 1 0 0 0 16-3584 chrM 5106 2 0 0 1 1 0 0 16-3584 chrM 5107 2 0 1 0 1 0 0 16-3584 chrM 5108 2 1 0 1 0 0 0 16-3584 chrM 5109 2 1 1 0 0 0 0 16-3584 chrM 5110 2 0 1 0 1 0 0 16-3584 chrM 5111 2 1 0 0 1 0 0 16-3584 chrM 5112 2 2 0 0 0 0 0 16-3584 chrM 5113 2 0 1 1 0 0 0 16-3584 chrM 5114 2 0 0 1 1 0 0 16-3584 chrM 5115 2 0 2 0 0 0 0 16-3584 chrM 5116 2 0 0 0 2 0 0 16-3584 chrM 5117 2 1 1 0 0 0 0 16-3584 chrM 5118 2 0 0 2 0 0 0 16-3584 chrM 5119 2 0 2 0 0 0 0 16-3584 chrM 5120 2 0 0 1 1 0 0 16-3584 chrM 5121 2 0 0 2 0 0 0 16-3584 chrM 5122 2 1 1 0 0 0 0 16-3584 chrM 5123 2 0 1 1 0 0 0 16-3584 chrM 5124 2 0 2 0 0 0 0 16-3584 chrM 5125 2 0 1 0 1 0 0 16-3584 chrM 5126 2 1 0 1 0 0 0 16-3584 chrM 5127 2 1 1 0 0 0 0 16-3584 chrM 5128 2 0 0 0 2 0 0 16-3584 chrM 5129 2 1 1 0 0 0 0 16-3584 chrM 5130 2 0 1 1 0 0 0 16-3584 chrM 5131 2 1 0 0 1 0 0 16-3584 chrM 5132 2 0 1 0 1 0 0 16-3584 chrM 5133 2 0 0 1 1 0 0 16-3584 chrM 5134 2 1 1 0 0 0 0 16-3584 chrM 5135 2 0 0 1 1 0 0 16-3584 chrM 5136 2 0 0 0 2 0 0 16-3584 chrM 5137 2 1 0 1 0 0 0 16-3584 chrM 5138 2 0 0 1 1 0 0 16-3584 chrM 5139 2 1 0 1 0 0 0 16-3584 chrM 5140 2 0 2 0 0 0 0 16-3584 chrM 5141 2 1 0 1 0 0 0 16-3584 chrM 5142 2 0 0 1 1 0 0 16-3584 chrM 5143 2 0 0 0 2 0 0 16-3584 chrM 5144 2 0 0 2 0 0 0 16-3584 chrM 5145 2 0 0 0 2 0 0 16-3584 chrM 5146 2 0 0 2 0 0 0 16-3584 chrM 5147 2 0 0 0 2 0 0 16-3584 chrM 5148 2 1 0 0 1 0 0 16-3584 chrM 5149 2 1 0 0 1 0 0 16-3584 chrM 5150 2 2 0 0 0 0 0 16-3584 chrM 5151 2 1 0 0 1 0 0 16-3584 chrM 5152 2 0 1 1 0 0 0 16-3584 chrM 5153 2 0 1 1 0 0 0 16-3584 chrM 5154 2 0 0 0 2 0 0 16-3584 chrM 5155 2 1 0 0 1 0 0 16-3584 chrM 5156 2 0 1 1 0 0 0 16-3584 chrM 5157 2 0 1 0 1 0 0 16-3584 chrM 5158 2 1 0 0 1 0 0 16-3584 chrM 5159 2 1 1 0 0 0 0 16-3584 chrM 5160 2 1 0 1 0 0 0 16-3584 chrM 5161 2 0 0 1 1 0 0 16-3584 chrM 5162 2 1 0 1 0 0 0 16-3584 chrM 5163 2 1 0 1 0 0 0 16-3584 chrM 5164 2 0 0 2 0 0 0 16-3584 chrM 5165 2 0 0 2 0 0 0 16-3584 chrM 5166 2 1 0 1 0 0 0 16-3584 chrM 5167 2 0 0 1 1 0 0 16-3584 chrM 5168 2 1 0 1 0 0 0 16-3584 chrM 5169 2 1 1 0 0 0 0 16-3584 chrM 5170 2 0 0 1 1 0 0 16-3584 chrM 5171 2 0 1 1 0 0 0 16-3584 chrM 5172 2 0 0 0 2 0 0 16-3584 chrM 5173 2 1 0 1 0 0 0 16-3584 chrM 5174 2 0 1 0 1 0 0 16-3584 chrM 5175 2 1 1 0 0 0 0 16-3584 chrM 5176 2 0 1 1 0 0 0 16-3584 chrM 5177 2 0 1 0 1 0 0 16-3584 chrM 5178 2 1 1 0 0 0 0 16-3584 chrM 5179 2 0 1 1 0 0 0 16-3584 chrM 5180 2 0 1 1 0 0 0 16-3584 chrM 5181 2 1 0 0 1 0 0 16-3584 chrM 5182 2 1 1 0 0 0 0 16-3584 chrM 5183 2 1 0 1 0 0 0 16-3584 chrM 5184 2 0 2 0 0 0 0 16-3584 chrM 5185 2 1 1 0 0 0 0 16-3584 chrM 5186 2 0 0 2 0 0 0 16-3584 chrM 5187 2 2 0 0 0 0 0 16-3584 chrM 5188 2 0 0 2 0 0 0 16-3584 chrM 5189 2 0 0 2 0 0 0 16-3584 chrM 5190 2 1 1 0 0 0 0 16-3584 chrM 5191 2 1 1 0 0 0 0 16-3584 chrM 5192 2 1 0 0 1 0 0 16-3584 chrM 5193 2 0 1 0 1 0 0 16-3584 chrM 5194 2 1 0 1 0 0 0 16-3584 chrM 5195 2 1 0 0 1 0 0 16-3584 chrM 5196 2 0 1 1 0 0 0 16-3584 chrM 5197 2 0 1 1 0 0 0 16-3584 chrM 5198 2 0 1 0 1 0 0 16-3584 chrM 5199 2 1 1 0 0 0 0 16-3584 chrM 5200 2 0 1 1 0 0 0 16-3584 chrM 5201 2 0 0 1 1 0 0 16-3584 chrM 5202 2 0 1 0 1 0 0 16-3584 chrM 5203 2 0 0 0 2 0 0 16-3584 chrM 5204 2 1 0 1 0 0 0 16-3584 chrM 5205 2 2 0 0 0 0 0 16-3584 chrM 5206 2 2 0 0 0 0 0 16-3584 chrM 5207 2 0 0 0 2 0 0 16-3584 chrM 5208 2 1 0 0 1 0 0 16-3584 chrM 5209 2 2 0 0 0 0 0 16-3584 chrM 5210 2 0 1 1 0 0 0 16-3584 chrM 5211 2 2 0 0 0 0 0 16-3584 chrM 5212 2 1 1 0 0 0 0 16-3584 chrM 5213 2 0 2 0 0 0 0 16-3584 chrM 5214 2 0 0 1 1 0 0 16-3584 chrM 5229 1 0 0 1 0 0 0 16-3584 chrM 5230 1 1 0 0 0 0 0 16-3584 chrM 5231 1 1 0 0 0 0 0 16-3584 chrM 5232 1 0 1 0 0 0 0 16-3584 chrM 5233 1 0 1 0 0 0 0 16-3584 chrM 5234 1 0 0 0 1 0 0 16-3584 chrM 5235 1 0 0 1 0 0 0 16-3584 chrM 5236 1 0 0 1 0 0 0 16-3584 chrM 5237 1 1 0 0 0 0 0 16-3584 chrM 5238 1 1 0 0 0 0 0 16-3584 chrM 5239 1 0 0 0 1 0 0 16-3584 chrM 5240 1 0 0 1 0 0 0 16-3584 chrM 5241 1 0 0 0 1 0 0 16-3584 chrM 5242 1 0 1 0 0 0 0 16-3584 chrM 5243 1 0 0 1 0 0 0 16-3584 chrM 5244 1 0 1 0 0 0 0 16-3584 chrM 5245 1 1 0 0 0 0 0 16-3584 chrM 5246 1 0 0 0 1 0 0 16-3584 chrM 5247 1 0 0 1 0 0 0 16-3584 chrM 5248 1 0 0 1 0 0 0 16-3584 chrM 5249 1 0 0 1 0 0 0 16-3584 chrM 5250 1 1 0 0 0 0 0 16-3584 chrM 5251 1 0 0 0 1 0 0 16-3584 chrM 5252 1 0 0 1 0 0 0 16-3584 chrM 5253 1 0 1 0 0 0 0 16-3584 chrM 5254 1 1 0 0 0 0 0 16-3584 chrM 5255 1 0 1 0 0 0 0 16-3584 chrM 5256 1 0 0 0 1 0 0 16-3584 chrM 5257 1 0 0 0 1 0 0 16-3584 chrM 5258 1 0 1 0 0 0 0 16-3584 chrM 5259 1 0 0 0 1 0 0 16-3584 chrM 5260 1 0 1 0 0 0 0 16-3584 chrM 5261 1 1 0 0 0 0 0 16-3584 chrM 5262 1 0 0 1 0 0 0 16-3584 chrM 5263 1 1 0 0 0 0 0 16-3584 chrM 5264 1 0 1 0 0 0 0 16-3584 chrM 5265 1 0 0 0 1 0 0 16-3584 chrM 5266 1 0 0 0 1 0 0 16-3584 chrM 5267 1 0 0 1 0 0 0 16-3584 chrM 5268 1 0 0 0 1 0 0 16-3584 chrM 5269 1 1 0 0 0 0 0 16-3584 chrM 5270 1 0 1 0 0 0 0 16-3584 chrM 5271 1 1 0 0 0 0 0 16-3584 chrM 5272 1 1 0 0 0 0 0 16-3584 chrM 5273 1 1 0 0 0 0 0 16-3584 chrM 5274 1 1 0 0 0 0 0 16-3584 chrM 5275 1 0 1 0 0 0 0 16-3584 chrM 5276 1 1 0 0 0 0 0 16-3584 chrM 5277 1 0 0 0 1 0 0 16-3584 chrM 5278 1 0 0 0 1 0 0 16-3584 chrM 5279 1 1 0 0 0 0 0 16-3584 chrM 5280 1 1 0 0 0 0 0 16-3584 chrM 5281 1 0 0 1 0 0 0 16-3584 chrM 5282 1 0 0 1 0 0 0 16-3584 chrM 5283 1 0 0 0 1 0 0 16-3584 chrM 5284 1 0 0 1 0 0 0 16-3584 chrM 5285 1 0 0 1 0 0 0 16-3584 chrM 5286 1 1 0 0 0 0 0 16-3584 chrM 5287 1 0 0 1 0 0 0 16-3584 chrM 5288 1 0 1 0 0 0 0 16-3584 chrM 5289 1 0 0 1 0 0 0 16-3584 chrM 5290 1 1 0 0 0 0 0 16-3584 chrM 5291 1 0 0 0 1 0 0 16-3584 chrM 5292 1 0 0 1 0 0 0 16-3584 chrM 5293 1 0 0 0 1 0 0 16-3584 chrM 5294 1 1 0 0 0 0 0 16-3584 chrM 5295 1 0 0 1 0 0 0 16-3584 chrM 5296 1 0 0 0 1 0 0 16-3584 chrM 5297 1 0 1 0 0 0 0 16-3584 chrM 5298 1 0 0 1 0 0 0 16-3584 chrM 5299 1 1 0 0 0 0 0 16-3584 chrM 5300 1 0 0 0 1 0 0 16-3584 chrM 5301 1 0 0 1 0 0 0 16-3584 chrM 5302 1 0 0 0 1 0 0 16-3584 chrM 5303 1 0 0 1 0 0 0 16-3584 chrM 5304 1 0 0 1 0 0 0 16-3584 chrM 5305 1 0 0 1 0 0 0 16-3584 chrM 5306 1 0 1 0 0 0 0 16-3584 chrM 5307 1 0 0 1 0 0 0 16-3584 chrM 5308 1 0 0 0 1 0 0 16-3584 chrM 5309 1 0 0 0 1 0 0 16-3584 chrM 5310 1 0 1 0 0 0 0 16-3584 chrM 5311 1 1 0 0 0 0 0 16-3584 chrM 5312 1 0 0 0 1 0 0 16-3584 chrM 5313 1 0 0 0 1 0 0 16-3584 chrM 5314 1 0 0 0 1 0 0 16-3584 chrM 5315 1 0 1 0 0 0 0 16-3584 chrM 5316 1 0 0 1 0 0 0 16-3584 chrM 5317 1 0 0 1 0 0 0 16-3584 chrM 5318 1 1 0 0 0 0 0 16-3584 chrM 5319 1 1 0 0 0 0 0 16-3584 chrM 5320 1 0 1 0 0 0 0 16-3584 chrM 5321 1 1 0 0 0 0 0 16-3584 chrM 5322 1 1 0 0 0 0 0 16-3584 chrM 5323 1 1 0 0 0 0 0 16-3584 chrM 5324 1 0 1 0 0 0 0 16-3584 chrM 5325 1 0 1 0 0 0 0 16-3584 chrM 5326 1 0 1 0 0 0 0 16-3584 chrM 5327 1 0 0 1 0 0 0 16-3584 chrM 5328 1 1 0 0 0 0 0 16-3584 chrM 5329 1 0 0 1 0 0 0 16-3584 chrM 5330 1 0 0 0 1 0 0 16-3584 chrM 5331 1 0 1 0 0 0 0 16-3584 chrM 5332 1 1 0 0 0 0 0 16-3584 chrM 5333 1 0 0 0 1 0 0 16-3584 chrM 5334 1 0 0 1 0 0 0 16-3584 chrM 5335 1 0 0 0 1 0 0 16-3584 chrM 5336 1 0 0 0 1 0 0 16-3584 chrM 5337 1 0 0 0 1 0 0 16-3584 chrM 5338 1 0 0 1 0 0 0 16-3584 chrM 5339 1 0 0 1 0 0 0 16-3584 chrM 5340 1 0 1 0 0 0 0 16-3584 chrM 5341 1 0 1 0 0 0 0 16-3584 chrM 5342 1 0 0 0 1 0 0 16-3584 chrM 5343 1 1 0 0 0 0 0 16-3584 chrM 5344 1 1 0 0 0 0 0 16-3584 chrM 5345 1 1 0 0 0 0 0 16-3584 chrM 5346 1 1 0 0 0 0 0 16-3584 chrM 5347 1 0 1 0 0 0 0 16-3584 chrM 5348 1 0 1 0 0 0 0 16-3584 chrM 5349 1 0 0 1 0 0 0 16-3584 chrM 5350 1 1 0 0 0 0 0 16-3584 chrM 5351 1 1 0 0 0 0 0 16-3584 chrM 5352 1 0 0 1 0 0 0 16-3584 chrM 5353 1 0 1 0 0 0 0 16-3584 chrM 5354 1 1 0 0 0 0 0 16-3584 chrM 5355 1 0 0 1 0 0 0 16-3584 chrM 5356 1 0 0 1 0 0 0 16-3584 chrM 5357 1 0 1 0 0 0 0 16-3584 chrM 5358 1 0 0 1 0 0 0 16-3584 chrM 5359 1 0 0 1 0 0 0 16-3584 chrM 5360 1 0 0 1 0 0 0 16-3584 chrM 5361 1 0 1 0 0 0 0 16-3584 chrM 5362 1 1 0 0 0 0 0 16-3584 chrM 5363 1 0 1 0 0 0 0 16-3584 chrM 5364 1 0 0 1 0 0 0 16-3584 chrM 5365 1 0 1 0 0 0 0 16-3584 chrM 5366 1 0 1 0 0 0 0 16-3584 chrM 5367 1 0 1 0 0 0 0 16-3584 chrM 5368 1 0 0 0 1 0 0 16-3584 chrM 5369 1 0 1 0 0 0 0 16-3584 chrM 5370 1 0 1 0 0 0 0 16-3584 chrM 5371 1 0 0 1 0 0 0 16-3584 chrM 5372 1 0 1 0 0 0 0 16-3584 chrM 5413 1 0 1 0 0 0 0 16-3584 chrM 5414 1 1 0 0 0 0 0 16-3584 chrM 5415 1 0 1 0 0 0 0 16-3584 chrM 5416 1 0 0 1 0 0 0 16-3584 chrM 5417 1 0 0 1 0 0 0 16-3584 chrM 5418 1 1 0 0 0 0 0 16-3584 chrM 5419 1 0 0 0 1 0 0 16-3584 chrM 5420 1 1 0 0 0 0 0 16-3584 chrM 5421 1 0 1 0 0 0 0 16-3584 chrM 5422 1 0 1 0 0 0 0 16-3584 chrM 5423 1 0 0 1 0 0 0 16-3584 chrM 5424 1 0 1 0 0 0 0 16-3584 chrM 5425 1 0 1 0 0 0 0 16-3584 chrM 5426 1 0 1 0 0 0 0 16-3584 chrM 5427 1 0 0 1 0 0 0 16-3584 chrM 5428 1 0 1 0 0 0 0 16-3584 chrM 5429 1 0 1 0 0 0 0 16-3584 chrM 5430 1 0 1 0 0 0 0 16-3584 chrM 5431 1 0 0 1 0 0 0 16-3584 chrM 5432 1 1 0 0 0 0 0 16-3584 chrM 5433 1 0 1 0 0 0 0 16-3584 chrM 5434 1 0 0 0 1 0 0 16-3584 chrM 5435 1 0 0 0 1 0 0 16-3584 chrM 5436 1 0 1 0 0 0 0 16-3584 chrM 5437 1 0 0 1 0 0 0 16-3584 chrM 5438 1 1 0 0 0 0 0 16-3584 chrM 5439 1 0 1 0 0 0 0 16-3584 chrM 5440 1 0 0 0 1 0 0 16-3584 chrM 5441 1 0 0 0 1 0 0 16-3584 chrM 5442 1 0 0 1 0 0 0 16-3584 chrM 5443 1 1 0 0 0 0 0 16-3584 chrM 5444 1 0 0 1 0 0 0 16-3584 chrM 5445 1 0 0 0 1 0 0 16-3584 chrM 5446 1 0 0 1 0 0 0 16-3584 chrM 5447 1 0 0 1 0 0 0 16-3584 chrM 5448 1 1 0 0 0 0 0 16-3584 chrM 5449 1 0 1 0 0 0 0 16-3584 chrM 5450 1 1 0 0 0 0 0 16-3584 chrM 5451 1 0 1 0 0 0 0 16-3584 chrM 5452 1 1 0 0 0 0 0 16-3584 chrM 5453 1 0 0 0 1 0 0 16-3584 chrM 5454 1 0 1 0 0 0 0 16-3584 chrM 5455 1 1 0 0 0 0 0 16-3584 chrM 5456 1 1 0 0 0 0 0 16-3584 chrM 5457 1 0 0 0 1 0 0 16-3584 chrM 5458 1 1 0 0 0 0 0 16-3584 chrM 5459 1 0 0 0 1 0 0 16-3584 chrM 5460 1 0 0 1 0 0 0 16-3584 chrM 5461 1 0 0 0 1 0 0 16-3584 chrM 5462 1 0 0 0 1 0 0 16-3584 chrM 5463 1 0 1 0 0 0 0 16-3584 chrM 5464 1 0 0 0 1 0 0 16-3584 chrM 5465 1 0 0 0 1 0 0 16-3584 chrM 5466 1 0 1 0 0 0 0 16-3584 chrM 5467 1 0 0 0 1 0 0 16-3584 chrM 5468 1 0 0 0 1 0 0 16-3584 chrM 5469 1 1 0 0 0 0 0 16-3584 chrM 5470 1 0 0 1 0 0 0 16-3584 chrM 5471 1 0 1 0 0 0 0 16-3584 chrM 5472 1 1 0 0 0 0 0 16-3584 chrM 5473 1 0 0 1 0 0 0 16-3584 chrM 5474 1 1 0 0 0 0 0 16-3584 chrM 5475 1 1 0 0 0 0 0 16-3584 chrM 5476 1 0 1 0 0 0 0 16-3584 chrM 5477 1 0 0 0 1 0 0 16-3584 chrM 5478 1 0 0 0 1 0 0 16-3584 chrM 5479 1 1 0 0 0 0 0 16-3584 chrM 5480 1 1 0 0 0 0 0 16-3584 chrM 5481 1 1 0 0 0 0 0 16-3584 chrM 5482 1 0 1 0 0 0 0 16-3584 chrM 5483 1 0 1 0 0 0 0 16-3584 chrM 5484 1 0 1 0 0 0 0 16-3584 chrM 5485 1 0 1 0 0 0 0 16-3584 chrM 5486 1 0 1 0 0 0 0 16-3584 chrM 5487 1 0 0 0 1 0 0 16-3584 chrM 5488 1 0 0 0 1 0 0 16-3584 chrM 5489 1 1 0 0 0 0 0 16-3584 chrM 5490 1 0 0 1 0 0 0 16-3584 chrM 5491 1 0 1 0 0 0 0 16-3584 chrM 5492 1 0 0 0 1 0 0 16-3584 chrM 5493 1 0 0 1 0 0 0 16-3584 chrM 5494 1 0 0 0 1 0 0 16-3584 chrM 5495 1 0 1 0 0 0 0 16-3584 chrM 5496 1 0 0 0 1 0 0 16-3584 chrM 5497 1 1 0 0 0 0 0 16-3584 chrM 5498 1 1 0 0 0 0 0 16-3584 chrM 5499 1 1 0 0 0 0 0 16-3584 chrM 5500 1 0 1 0 0 0 0 16-3584 chrM 5501 1 0 0 1 0 0 0 16-3584 chrM 5502 1 0 0 0 1 0 0 16-3584 chrM 5503 1 0 0 1 0 0 0 16-3584 chrM 5504 1 0 1 0 0 0 0 16-3584 chrM 5505 1 0 0 0 1 0 0 16-3584 chrM 5506 1 1 0 0 0 0 0 16-3584 chrM 5507 1 0 1 0 0 0 0 16-3584 chrM 5508 1 0 0 0 1 0 0 16-3584 chrM 5509 1 1 0 0 0 0 0 16-3584 chrM 5510 1 0 0 1 0 0 0 16-3584 chrM 5511 1 1 0 0 0 0 0 16-3584 chrM 5512 1 0 1 0 0 0 0 16-3584 chrM 5513 1 0 0 0 1 0 0 16-3584 chrM 5514 1 0 1 0 0 0 0 16-3584 chrM 5515 1 0 0 1 0 0 0 16-3584 chrM 5516 1 0 0 1 0 0 0 16-3584 chrM 5517 1 0 0 0 1 0 0 16-3584 chrM 5518 1 0 1 0 0 0 0 16-3584 chrM 5519 1 0 0 0 1 0 0 16-3584 chrM 5520 1 0 0 1 0 0 0 16-3584 chrM 5521 1 0 1 0 0 0 0 16-3584 chrM 5522 1 0 0 1 0 0 0 16-3584 chrM 5523 1 0 0 0 1 0 0 16-3584 chrM 5524 1 0 0 0 1 0 0 16-3584 chrM 5525 1 0 0 0 1 0 0 16-3584 chrM 5526 1 0 0 0 1 0 0 16-3584 chrM 5527 1 0 1 0 0 0 0 16-3584 chrM 5528 1 1 0 0 0 0 0 16-3584 chrM 5529 1 1 0 0 0 0 0 16-3584 chrM 5530 1 0 0 0 1 0 0 16-3584 chrM 5531 1 1 0 0 0 0 0 16-3584 chrM 5532 1 0 0 0 1 0 0 16-3584 chrM 5533 1 0 0 0 1 0 0 16-3584 chrM 5534 1 0 0 0 1 0 0 16-3584 chrM 5535 1 0 1 0 0 0 0 16-3584 chrM 5536 1 0 0 0 1 0 0 16-3584 chrM 5537 1 0 0 0 1 0 0 16-3584 chrM 5538 1 0 0 0 1 0 0 16-3584 chrM 5539 1 0 0 0 1 0 0 16-3584 chrM 5540 1 0 1 0 0 0 0 16-3584 chrM 5541 1 0 1 0 0 0 0 16-3584 chrM 5542 1 0 1 0 0 0 0 16-3584 chrM 5543 1 0 0 0 1 0 0 16-3584 chrM 5544 1 0 0 1 0 0 0 16-3584 chrM 5545 1 1 0 0 0 0 0 16-3584 chrM 5546 1 1 0 0 0 0 0 16-3584 chrM 5547 1 0 1 0 0 0 0 16-3584 chrM 5548 1 0 0 1 0 0 0 16-3584 chrM 5549 1 0 0 1 0 0 0 16-3584 chrM 5550 1 0 0 1 0 0 0 16-3584 chrM 5551 1 0 0 0 1 0 0 16-3584 chrM 5552 1 0 1 0 0 0 0 16-3584 chrM 5553 1 0 0 0 1 0 0 16-3584 chrM 5554 1 0 1 0 0 0 0 16-3584 chrM 5555 1 0 0 1 0 0 0 16-3584 chrM 5556 1 1 0 0 0 0 0 16-3584 chrM 5557 1 0 0 0 1 0 0 16-3584 chrM 5558 1 0 0 1 0 0 0 16-3584 chrM 9027 2 1 1 0 0 0 0 16-3584 chrM 9028 2 0 0 0 2 0 0 16-3584 chrM 9029 2 2 0 0 0 0 0 16-3584 chrM 9030 2 1 0 0 1 0 0 16-3584 chrM 9031 2 0 0 2 0 0 0 16-3584 chrM 9032 4 0 2 0 2 0 0 16-3584 chrM 9033 4 2 0 2 0 0 0 16-3584 chrM 9034 4 1 1 1 1 0 0 16-3584 chrM 9035 4 0 1 2 1 0 0 16-3584 chrM 9036 4 1 2 0 1 0 0 16-3584 chrM 9037 4 1 1 1 1 0 0 16-3584 chrM 9038 4 1 0 2 1 0 0 16-3584 chrM 9039 4 0 2 2 0 0 0 16-3584 chrM 9040 4 0 3 0 1 0 0 16-3584 chrM 9041 4 0 0 1 3 0 0 16-3584 chrM 9042 4 1 2 0 1 0 0 16-3584 chrM 9043 4 1 0 3 0 0 0 16-3584 chrM 9044 4 2 1 1 0 0 0 16-3584 chrM 9045 4 0 1 2 1 0 0 16-3584 chrM 9046 4 0 2 1 1 0 0 16-3584 chrM 9047 4 2 2 0 0 0 0 16-3584 chrM 9048 4 0 1 2 1 0 0 16-3584 chrM 9049 4 0 1 0 3 0 0 16-3584 chrM 9050 4 1 1 2 0 0 0 16-3584 chrM 9051 4 0 0 0 4 0 0 16-3584 chrM 9052 4 1 0 2 1 0 0 16-3584 chrM 9053 4 2 0 1 1 0 0 16-3584 chrM 9054 4 0 2 0 2 0 0 16-3584 chrM 9055 4 0 2 2 0 0 0 16-3584 chrM 9056 4 2 0 1 1 0 0 16-3584 chrM 9057 4 0 0 1 3 0 0 16-3584 chrM 9058 4 2 1 0 1 0 0 16-3584 chrM 9059 4 1 1 0 2 0 0 16-3584 chrM 9060 4 0 2 0 2 0 0 16-3584 chrM 9061 4 1 0 2 1 0 0 16-3584 chrM 9062 4 1 1 1 1 0 0 16-3584 chrM 9063 4 2 1 0 1 0 0 16-3584 chrM 9064 4 1 1 2 0 0 0 16-3584 chrM 9065 4 0 3 1 0 0 0 16-3584 chrM 9066 4 1 0 1 2 0 0 16-3584 chrM 9067 4 2 0 1 1 0 0 16-3584 chrM 9068 4 0 1 1 2 0 0 16-3584 chrM 9069 4 1 1 0 2 0 0 16-3584 chrM 9070 4 0 0 4 0 0 0 16-3584 chrM 9071 4 1 1 2 0 0 0 16-3584 chrM 9072 4 3 1 0 0 0 0 16-3584 chrM 9073 4 2 1 1 0 0 0 16-3584 chrM 9074 4 1 1 1 1 0 0 16-3584 chrM 9075 2 0 0 2 0 0 0 16-3584 chrM 9076 2 0 1 1 0 0 0 16-3584 chrM 9077 2 0 1 0 1 0 0 16-3584 chrM 9078 2 0 1 1 0 0 0 16-3584 chrM 9079 2 0 1 0 1 0 0 16-3584 chrM 9278 2 1 0 1 0 0 0 16-3584 chrM 9279 2 0 2 0 0 0 0 16-3584 chrM 9280 2 0 1 0 1 0 0 16-3584 chrM 9281 2 0 2 0 0 0 0 16-3584 chrM 9282 2 0 0 2 0 0 0 16-3584 chrM 9283 2 0 1 1 0 0 0 16-3584 chrM 9284 2 0 0 1 1 0 0 16-3584 chrM 9285 2 0 0 0 2 0 0 16-3584 chrM 9286 2 2 0 0 0 0 0 16-3584 chrM 9287 2 1 1 0 0 0 0 16-3584 chrM 9288 2 0 1 1 0 0 0 16-3584 chrM 9289 2 1 0 0 1 0 0 16-3584 chrM 9290 2 0 0 0 2 0 0 16-3584 chrM 9291 2 1 0 0 1 0 0 16-3584 chrM 9292 2 1 1 0 0 0 0 16-3584 chrM 9293 2 1 0 1 0 0 0 16-3584 chrM 9294 2 2 0 0 0 0 0 16-3584 chrM 9295 2 1 0 1 0 0 0 16-3584 chrM 9296 2 1 0 1 0 0 0 16-3584 chrM 9297 2 1 0 1 0 0 0 16-3584 chrM 9298 2 1 0 0 1 0 0 16-3584 chrM 9299 2 1 0 1 0 0 0 16-3584 chrM 9300 2 1 1 0 0 0 0 16-3584 chrM 9301 2 1 0 0 1 0 0 16-3584 chrM 9302 2 0 1 0 1 0 0 16-3584 chrM 9303 2 0 1 0 1 0 0 16-3584 chrM 9304 2 1 0 0 1 0 0 16-3584 chrM 9305 2 0 1 0 1 0 0 16-3584 chrM 9306 2 0 1 0 1 0 0 16-3584 chrM 9307 2 0 1 1 0 0 0 16-3584 chrM 9308 2 1 0 0 1 0 0 16-3584 chrM 9309 2 1 0 1 0 0 0 16-3584 chrM 9310 2 2 0 0 0 0 0 16-3584 chrM 9311 2 0 1 1 0 0 0 16-3584 chrM 9312 2 1 0 0 1 0 0 16-3584 chrM 9313 2 0 1 1 0 0 0 16-3584 chrM 9314 2 0 2 0 0 0 0 16-3584 chrM 9315 2 1 1 0 0 0 0 16-3584 chrM 9316 2 0 1 1 0 0 0 16-3584 chrM 9317 2 0 1 0 1 0 0 16-3584 chrM 9318 2 1 0 1 0 0 0 16-3584 chrM 9319 2 1 0 1 0 0 0 16-3584 chrM 9320 2 2 0 0 0 0 0 16-3584 chrM 9321 2 1 1 0 0 0 0 16-3584 chrM 9322 4 1 0 0 3 0 0 16-3584 chrM 9323 4 1 1 1 1 0 0 16-3584 chrM 9324 4 1 0 1 2 0 0 16-3584 chrM 9325 4 0 1 3 0 0 0 16-3584 chrM 9326 4 2 1 1 0 0 0 16-3584 chrM 9327 4 2 0 2 0 0 0 16-3584 chrM 9328 4 1 0 1 2 0 0 16-3584 chrM 9329 4 1 2 1 0 0 0 16-3584 chrM 9330 4 2 1 0 1 0 0 16-3584 chrM 9331 4 2 1 1 0 0 0 16-3584 chrM 9332 4 2 1 0 1 0 0 16-3584 chrM 9333 4 0 1 1 2 0 0 16-3584 chrM 9334 4 1 2 0 1 0 0 16-3584 chrM 9335 4 0 1 0 3 0 0 16-3584 chrM 9336 4 1 0 1 2 0 0 16-3584 chrM 9337 4 1 0 1 2 0 0 16-3584 chrM 9338 4 2 0 0 2 0 0 16-3584 chrM 9339 4 2 0 1 1 0 0 16-3584 chrM 9340 4 3 0 1 0 0 0 16-3584 chrM 9341 4 1 1 1 1 0 0 16-3584 chrM 9342 4 0 1 0 3 0 0 16-3584 chrM 9343 4 0 1 1 2 0 0 16-3584 chrM 9344 4 0 1 2 1 0 0 16-3584 chrM 9345 4 2 1 0 1 0 0 16-3584 chrM 9346 4 1 3 0 0 0 0 16-3584 chrM 9347 4 1 1 0 2 0 0 16-3584 chrM 9348 4 2 1 1 0 0 0 16-3584 chrM 9349 4 2 1 1 0 0 0 16-3584 chrM 9350 4 0 0 2 2 0 0 16-3584 chrM 9351 4 0 2 0 2 0 0 16-3584 chrM 9352 4 1 1 2 0 0 0 16-3584 chrM 9353 4 1 0 2 1 0 0 16-3584 chrM 9354 4 1 0 2 1 0 0 16-3584 chrM 9355 4 4 0 0 0 0 0 16-3584 chrM 9356 4 2 0 1 1 0 0 16-3584 chrM 9357 4 0 0 1 3 0 0 16-3584 chrM 9358 4 2 1 0 1 0 0 16-3584 chrM 9359 4 2 2 0 0 0 0 16-3584 chrM 9360 4 2 1 0 1 0 0 16-3584 chrM 9361 4 0 2 2 0 0 0 16-3584 chrM 9362 4 1 1 0 2 0 0 16-3584 chrM 9363 4 1 1 0 2 0 0 16-3584 chrM 9364 4 2 0 1 1 0 0 16-3584 chrM 9365 4 1 2 0 1 0 0 16-3584 chrM 9366 4 1 2 1 0 0 0 16-3584 chrM 9367 4 0 0 1 3 0 0 16-3584 chrM 9368 4 3 0 1 0 0 0 16-3584 chrM 9369 4 0 1 1 2 0 0 16-3584 chrM 9370 4 0 0 3 1 0 0 16-3584 chrM 9371 4 0 2 1 1 0 0 16-3584 chrM 9372 4 1 2 1 0 0 0 16-3584 chrM 9373 4 1 1 1 1 0 0 16-3584 chrM 9374 4 1 0 1 2 0 0 16-3584 chrM 9375 4 2 0 0 2 0 0 16-3584 chrM 9376 4 0 1 3 0 0 0 16-3584 chrM 9377 4 0 1 0 3 0 0 16-3584 chrM 9378 4 1 1 0 2 0 0 16-3584 chrM 9379 4 0 1 2 1 0 0 16-3584 chrM 9380 4 2 1 0 1 0 0 16-3584 chrM 9381 4 2 2 0 0 0 0 16-3584 chrM 9382 4 0 1 1 2 0 0 16-3584 chrM 9383 4 0 0 3 1 0 0 16-3584 chrM 9384 4 0 1 2 1 0 0 16-3584 chrM 9385 4 2 0 0 2 0 0 16-3584 chrM 9386 4 2 0 2 0 0 0 16-3584 chrM 9387 4 0 1 2 1 0 0 16-3584 chrM 9388 4 1 0 1 2 0 0 16-3584 chrM 9389 4 1 1 2 0 0 0 16-3584 chrM 9390 4 1 1 1 1 0 0 16-3584 chrM 9391 4 2 0 1 1 0 0 16-3584 chrM 9392 4 0 1 1 2 0 0 16-3584 chrM 9393 4 3 0 0 1 0 0 16-3584 chrM 9394 4 1 1 1 1 0 0 16-3584 chrM 9395 4 0 0 3 1 0 0 16-3584 chrM 9396 4 2 1 0 1 0 0 16-3584 chrM 9397 4 0 0 2 2 0 0 16-3584 chrM 9398 4 2 1 1 0 0 0 16-3584 chrM 9399 4 0 2 0 2 0 0 16-3584 chrM 9400 4 1 2 0 1 0 0 16-3584 chrM 9401 4 0 1 2 1 0 0 16-3584 chrM 9402 4 1 2 0 1 0 0 16-3584 chrM 9403 4 1 1 0 2 0 0 16-3584 chrM 9404 4 2 2 0 0 0 0 16-3584 chrM 9405 4 1 1 0 2 0 0 16-3584 chrM 9406 4 0 1 3 0 0 0 16-3584 chrM 9407 4 0 1 1 2 0 0 16-3584 chrM 9408 4 1 2 0 1 0 0 16-3584 chrM 9409 4 1 1 1 1 0 0 16-3584 chrM 9410 4 1 1 1 1 0 0 16-3584 chrM 9411 4 1 1 2 0 0 0 16-3584 chrM 9412 4 1 0 1 2 0 0 16-3584 chrM 9413 4 3 0 0 1 0 0 16-3584 chrM 9414 4 1 2 0 1 0 0 16-3584 chrM 9415 4 1 1 1 1 0 0 16-3584 chrM 9416 4 1 0 2 1 0 0 16-3584 chrM 9417 4 1 0 1 2 0 0 16-3584 chrM 9418 4 2 0 1 1 0 0 16-3584 chrM 9419 4 2 1 1 0 0 0 16-3584 chrM 9420 4 1 2 0 1 0 0 16-3584 chrM 9421 4 0 2 2 0 0 0 16-3584 chrM 9422 4 0 0 4 0 0 0 16-3584 chrM 9423 4 0 1 1 2 0 0 16-3584 chrM 9424 2 1 0 0 1 0 0 16-3584 chrM 9425 2 1 1 0 0 0 0 16-3584 chrM 9426 2 1 1 0 0 0 0 16-3584 chrM 9427 2 2 0 0 0 0 0 16-3584 chrM 9428 2 0 1 1 0 0 0 16-3584 chrM 9429 2 0 0 1 1 0 0 16-3584 chrM 9430 2 2 0 0 0 0 0 16-3584 chrM 9431 2 2 0 0 0 0 0 16-3584 chrM 9432 2 0 0 1 1 0 0 16-3584 chrM 9433 2 0 1 1 0 0 0 16-3584 chrM 9434 2 0 0 0 2 0 0 16-3584 chrM 9435 2 1 0 0 1 0 0 16-3584 chrM 9436 2 0 1 1 0 0 0 16-3584 chrM 9437 2 0 0 1 1 0 0 16-3584 chrM 9438 2 0 0 0 2 0 0 16-3584 chrM 9439 2 0 1 0 1 0 0 16-3584 chrM 9440 2 0 0 1 1 0 0 16-3584 chrM 9441 2 0 0 1 1 0 0 16-3584 chrM 9442 2 0 1 0 1 0 0 16-3584 chrM 9443 2 0 1 1 0 0 0 16-3584 chrM 9444 2 0 0 1 1 0 0 16-3584 chrM 9445 2 1 0 1 0 0 0 16-3584 chrM 9446 2 1 0 1 0 0 0 16-3584 chrM 9447 2 0 1 1 0 0 0 16-3584 chrM 9448 2 0 0 0 2 0 0 16-3584 chrM 9449 2 1 0 0 1 0 0 16-3584 chrM 9450 2 1 0 1 0 0 0 16-3584 chrM 9451 2 1 0 0 1 0 0 16-3584 chrM 9452 2 0 1 1 0 0 0 16-3584 chrM 9453 2 1 1 0 0 0 0 16-3584 chrM 9454 2 1 1 0 0 0 0 16-3584 chrM 9455 2 1 1 0 0 0 0 16-3584 chrM 9456 2 2 0 0 0 0 0 16-3584 chrM 9457 2 1 0 0 1 0 0 16-3584 chrM 9458 2 2 0 0 0 0 0 16-3584 chrM 9459 2 0 0 1 1 0 0 16-3584 chrM 9460 2 0 1 0 1 0 0 16-3584 chrM 9461 2 0 1 1 0 0 0 16-3584 chrM 9462 2 0 1 1 0 0 0 16-3584 chrM 9463 2 2 0 0 0 0 0 16-3584 chrM 9464 2 1 1 0 0 0 0 16-3584 chrM 9465 2 1 1 0 0 0 0 16-3584 chrM 10912 1 0 0 0 1 0 0 16-3584 chrM 10913 1 1 0 0 0 0 0 16-3584 chrM 10914 1 1 0 0 0 0 0 16-3584 chrM 10915 1 0 0 1 0 0 0 16-3584 chrM 10916 1 0 0 0 1 0 0 16-3584 chrM 10917 2 0 0 2 0 0 0 16-3584 chrM 10918 2 0 1 0 1 0 0 16-3584 chrM 10919 2 0 2 0 0 0 0 16-3584 chrM 10920 2 0 1 1 0 0 0 16-3584 chrM 10921 2 0 2 0 0 0 0 16-3584 chrM 10922 2 1 0 1 0 0 0 16-3584 chrM 10923 2 1 0 1 0 0 0 16-3584 chrM 10924 2 1 0 1 0 0 0 16-3584 chrM 10925 2 0 0 2 0 0 0 16-3584 chrM 10926 2 0 2 0 0 0 0 16-3584 chrM 10927 2 0 0 2 0 0 0 16-3584 chrM 10928 2 1 0 1 0 0 0 16-3584 chrM 10929 2 1 1 0 0 0 0 16-3584 chrM 10930 2 1 0 0 1 0 0 16-3584 chrM 10931 2 1 0 1 0 0 0 16-3584 chrM 10932 2 1 1 0 0 0 0 16-3584 chrM 10933 2 1 0 1 0 0 0 16-3584 chrM 10934 2 0 1 1 0 0 0 16-3584 chrM 10935 2 1 1 0 0 0 0 16-3584 chrM 10936 2 1 0 0 1 0 0 16-3584 chrM 10937 2 0 2 0 0 0 0 16-3584 chrM 10938 2 1 0 0 1 0 0 16-3584 chrM 10939 2 0 0 1 1 0 0 16-3584 chrM 10940 2 0 0 1 1 0 0 16-3584 chrM 10941 2 0 1 1 0 0 0 16-3584 chrM 10942 2 0 1 0 1 0 0 16-3584 chrM 10943 2 0 1 0 1 0 0 16-3584 chrM 10944 2 2 0 0 0 0 0 16-3584 chrM 10945 2 1 0 1 0 0 0 16-3584 chrM 10946 2 1 1 0 0 0 0 16-3584 chrM 10947 2 0 0 1 1 0 0 16-3584 chrM 10948 2 0 1 1 0 0 0 16-3584 chrM 10949 2 1 1 0 0 0 0 16-3584 chrM 10950 2 1 0 0 1 0 0 16-3584 chrM 10951 2 0 1 0 1 0 0 16-3584 chrM 10952 2 0 0 0 2 0 0 16-3584 chrM 10953 2 0 0 1 1 0 0 16-3584 chrM 10954 2 0 0 2 0 0 0 16-3584 chrM 10955 2 2 0 0 0 0 0 16-3584 chrM 10956 2 0 1 0 1 0 0 16-3584 chrM 10957 2 0 0 2 0 0 0 16-3584 chrM 10958 2 0 1 0 1 0 0 16-3584 chrM 10959 2 0 1 0 1 0 0 16-3584 chrM 10960 2 1 0 0 1 0 0 16-3584 chrM 10961 2 1 1 0 0 0 0 16-3584 chrM 10962 2 1 0 0 1 0 0 16-3584 chrM 10963 2 1 0 0 1 0 0 16-3584 chrM 10964 2 0 0 0 2 0 0 16-3584 chrM 10965 2 1 1 0 0 0 0 16-3584 chrM 10966 2 0 1 1 0 0 0 16-3584 chrM 10967 2 0 1 0 1 0 0 16-3584 chrM 10968 2 0 1 0 1 0 0 16-3584 chrM 10969 2 0 1 1 0 0 0 16-3584 chrM 10970 2 0 0 1 1 0 0 16-3584 chrM 10971 2 1 1 0 0 0 0 16-3584 chrM 10972 2 0 0 1 1 0 0 16-3584 chrM 10973 2 2 0 0 0 0 0 16-3584 chrM 10974 2 2 0 0 0 0 0 16-3584 chrM 10975 2 1 0 1 0 0 0 16-3584 chrM 10976 2 0 2 0 0 0 0 16-3584 chrM 10977 2 1 0 1 0 0 0 16-3584 chrM 10978 2 1 0 0 1 0 0 16-3584 chrM 10979 2 0 0 0 2 0 0 16-3584 chrM 10980 2 2 0 0 0 0 0 16-3584 chrM 10981 2 0 2 0 0 0 0 16-3584 chrM 10982 2 1 1 0 0 0 0 16-3584 chrM 10983 2 1 1 0 0 0 0 16-3584 chrM 10984 1 0 0 0 1 0 0 16-3584 chrM 10985 1 1 0 0 0 0 0 16-3584 chrM 10986 1 0 1 0 0 0 0 16-3584 chrM 10987 1 0 1 0 0 0 0 16-3584 chrM 10988 1 1 0 0 0 0 0 16-3584 chrM 11991 1 0 1 0 0 0 0 16-3584 chrM 11992 1 1 0 0 0 0 0 16-3584 chrM 11993 1 1 0 0 0 0 0 16-3584 chrM 11994 1 0 1 0 0 0 0 16-3584 chrM 11995 1 1 0 0 0 0 0 16-3584 chrM 11996 2 0 1 0 1 0 0 16-3584 chrM 11997 2 1 1 0 0 0 0 16-3584 chrM 11998 2 1 0 0 1 0 0 16-3584 chrM 11999 2 0 0 0 2 0 0 16-3584 chrM 12000 2 0 0 1 1 0 0 16-3584 chrM 12001 2 1 1 0 0 0 0 16-3584 chrM 12002 2 0 1 1 0 0 0 16-3584 chrM 12003 2 1 0 1 0 0 0 16-3584 chrM 12004 2 1 0 1 0 0 0 16-3584 chrM 12005 2 0 1 1 0 0 0 16-3584 chrM 12006 2 0 1 1 0 0 0 16-3584 chrM 12007 2 1 0 0 1 0 0 16-3584 chrM 12008 2 0 2 0 0 0 0 16-3584 chrM 12009 2 1 1 0 0 0 0 16-3584 chrM 12010 2 0 2 0 0 0 0 16-3584 chrM 12011 2 0 0 1 1 0 0 16-3584 chrM 12012 2 0 1 0 1 0 0 16-3584 chrM 12013 2 0 0 2 0 0 0 16-3584 chrM 12014 2 1 0 1 0 0 0 16-3584 chrM 12015 2 0 1 1 0 0 0 16-3584 chrM 12016 2 1 0 0 1 0 0 16-3584 chrM 12017 2 0 1 0 1 0 0 16-3584 chrM 12018 2 1 1 0 0 0 0 16-3584 chrM 12019 2 0 1 0 1 0 0 16-3584 chrM 12020 2 1 0 0 1 0 0 16-3584 chrM 12021 2 0 0 0 2 0 0 16-3584 chrM 12022 2 1 1 0 0 0 0 16-3584 chrM 12023 2 0 1 1 0 0 0 16-3584 chrM 12024 2 1 1 0 0 0 0 16-3584 chrM 12025 2 2 0 0 0 0 0 16-3584 chrM 12026 2 1 0 0 1 0 0 16-3584 chrM 12027 2 1 0 1 0 0 0 16-3584 chrM 12028 2 0 0 1 1 0 0 16-3584 chrM 12029 2 0 0 0 2 0 0 16-3584 chrM 12030 2 0 1 1 0 0 0 16-3584 chrM 12031 2 0 1 1 0 0 0 16-3584 chrM 12032 2 0 1 1 0 0 0 16-3584 chrM 12033 2 1 0 0 1 0 0 16-3584 chrM 12034 2 1 1 0 0 0 0 16-3584 chrM 12035 2 2 0 0 0 0 0 16-3584 chrM 12036 2 0 0 2 0 0 0 16-3584 chrM 12037 2 0 0 1 1 0 0 16-3584 chrM 12038 2 0 1 0 1 0 0 16-3584 chrM 12039 2 1 0 0 1 0 0 16-3584 chrM 12040 2 0 0 1 1 0 0 16-3584 chrM 12041 2 0 0 0 2 0 0 16-3584 chrM 12042 2 1 1 0 0 0 0 16-3584 chrM 12043 2 1 0 0 1 0 0 16-3584 chrM 12044 2 1 1 0 0 0 0 16-3584 chrM 12045 2 0 0 1 1 0 0 16-3584 chrM 12046 2 0 2 0 0 0 0 16-3584 chrM 12047 2 0 0 2 0 0 0 16-3584 chrM 12048 1 0 0 1 0 0 0 16-3584 chrM 12049 1 1 0 0 0 0 0 16-3584 chrM 12050 1 0 0 1 0 0 0 16-3584 chrM 12051 1 1 0 0 0 0 0 16-3584 chrM 12052 1 0 0 0 1 0 0 16-3584 chrM 13365 1 1 0 0 0 0 0 16-3584 chrM 13366 1 0 0 0 1 0 0 16-3584 chrM 13367 1 0 1 0 0 0 0 16-3584 chrM 13368 1 1 0 0 0 0 0 16-3584 chrM 13369 1 0 0 0 1 0 0 16-3584 chrM 13370 1 1 0 0 0 0 0 16-3584 chrM 13371 1 0 0 1 0 0 0 16-3584 chrM 13372 1 0 0 0 1 0 0 16-3584 chrM 13373 1 0 0 0 1 0 0 16-3584 chrM 13374 1 0 1 0 0 0 0 16-3584 chrM 13375 1 1 0 0 0 0 0 16-3584 chrM 13376 1 0 0 1 0 0 0 16-3584 chrM 13377 1 0 0 0 1 0 0 16-3584 chrM 13378 1 1 0 0 0 0 0 16-3584 chrM 13379 1 0 1 0 0 0 0 16-3584 chrM 13380 1 0 0 1 0 0 0 16-3584 chrM 13381 1 1 0 0 0 0 0 16-3584 chrM 13382 1 1 0 0 0 0 0 16-3584 chrM 13383 1 0 0 0 1 0 0 16-3584 chrM 13384 1 1 0 0 0 0 0 16-3584 chrM 13385 1 1 0 0 0 0 0 16-3584 chrM 13386 1 0 0 1 0 0 0 16-3584 chrM 13387 1 1 0 0 0 0 0 16-3584 chrM 13388 1 0 1 0 0 0 0 16-3584 chrM 13389 1 1 0 0 0 0 0 16-3584 chrM 13390 1 1 0 0 0 0 0 16-3584 chrM 13391 1 0 1 0 0 0 0 16-3584 chrM 13392 1 1 0 0 0 0 0 16-3584 chrM 13393 1 0 1 0 0 0 0 16-3584 chrM 13394 1 0 0 0 1 0 0 16-3584 chrM 13395 1 1 0 0 0 0 0 16-3584 chrM 13396 1 1 0 0 0 0 0 16-3584 chrM 13397 1 0 0 0 1 0 0 16-3584 chrM 13398 1 1 0 0 0 0 0 16-3584 chrM 13399 1 0 0 0 1 0 0 16-3584 chrM 13400 1 0 1 0 0 0 0 16-3584 chrM 13401 1 1 0 0 0 0 0 16-3584 chrM 13402 1 0 0 1 0 0 0 16-3584 chrM 13403 1 0 0 1 0 0 0 16-3584 chrM 13404 1 1 0 0 0 0 0 16-3584 chrM 13405 1 0 0 1 0 0 0 16-3584 chrM 13406 2 1 0 1 0 0 0 16-3584 chrM 13407 2 1 0 0 1 0 0 16-3584 chrM 13408 2 1 0 0 1 0 0 16-3584 chrM 13409 2 1 0 1 0 0 0 16-3584 chrM 13410 2 0 1 0 1 0 0 16-3584 chrM 13411 2 0 1 1 0 0 0 16-3584 chrM 13412 2 0 0 2 0 0 0 16-3584 chrM 13413 2 0 1 0 1 0 0 16-3584 chrM 13414 2 1 0 0 1 0 0 16-3584 chrM 13415 2 1 0 0 1 0 0 16-3584 chrM 13416 2 0 0 1 1 0 0 16-3584 chrM 13417 2 1 0 0 1 0 0 16-3584 chrM 13418 2 0 0 1 1 0 0 16-3584 chrM 13419 2 0 1 0 1 0 0 16-3584 chrM 13420 2 0 1 1 0 0 0 16-3584 chrM 13421 2 0 1 0 1 0 0 16-3584 chrM 13422 2 0 0 1 1 0 0 16-3584 chrM 13423 2 2 0 0 0 0 0 16-3584 chrM 13424 2 0 1 0 1 0 0 16-3584 chrM 13425 2 0 0 1 1 0 0 16-3584 chrM 13426 2 1 0 0 1 0 0 16-3584 chrM 13427 2 1 0 1 0 0 0 16-3584 chrM 13428 2 0 1 1 0 0 0 16-3584 chrM 13429 2 0 0 2 0 0 0 16-3584 chrM 13430 2 0 0 1 1 0 0 16-3584 chrM 13431 2 0 1 1 0 0 0 16-3584 chrM 13432 2 0 1 1 0 0 0 16-3584 chrM 13433 2 0 1 1 0 0 0 16-3584 chrM 13434 2 1 1 0 0 0 0 16-3584 chrM 13435 2 1 0 1 0 0 0 16-3584 chrM 13436 2 1 0 1 0 0 0 16-3584 chrM 13437 2 0 1 0 1 0 0 16-3584 chrM 13438 2 0 1 0 1 0 0 16-3584 chrM 13439 2 1 1 0 0 0 0 16-3584 chrM 13440 2 1 0 1 0 0 0 16-3584 chrM 13441 2 0 1 1 0 0 0 16-3584 chrM 13442 2 1 0 0 1 0 0 16-3584 chrM 13443 2 0 0 0 2 0 0 16-3584 chrM 13444 2 0 1 0 1 0 0 16-3584 chrM 13445 2 1 0 0 1 0 0 16-3584 chrM 13446 2 0 0 0 2 0 0 16-3584 chrM 13447 2 1 0 0 1 0 0 16-3584 chrM 13448 2 0 0 0 2 0 0 16-3584 chrM 13449 2 0 2 0 0 0 0 16-3584 chrM 13450 2 2 0 0 0 0 0 16-3584 chrM 13451 2 1 0 1 0 0 0 16-3584 chrM 13452 2 0 1 0 1 0 0 16-3584 chrM 13453 2 1 0 0 1 0 0 16-3584 chrM 13454 2 2 0 0 0 0 0 16-3584 chrM 13455 2 0 1 0 1 0 0 16-3584 chrM 13456 2 0 2 0 0 0 0 16-3584 chrM 13457 2 0 1 0 1 0 0 16-3584 chrM 13458 2 1 1 0 0 0 0 16-3584 chrM 13459 2 1 0 0 1 0 0 16-3584 chrM 13460 2 0 0 0 2 0 0 16-3584 chrM 13461 2 1 0 0 1 0 0 16-3584 chrM 13462 2 1 1 0 0 0 0 16-3584 chrM 13463 2 1 0 1 0 0 0 16-3584 chrM 13464 2 0 1 1 0 0 0 16-3584 chrM 13465 2 1 0 0 1 0 0 16-3584 chrM 13466 2 0 0 2 0 0 0 16-3584 chrM 13467 2 0 1 1 0 0 0 16-3584 chrM 13468 2 0 2 0 0 0 0 16-3584 chrM 13469 2 1 1 0 0 0 0 16-3584 chrM 13470 2 0 0 0 2 0 0 16-3584 chrM 13471 2 1 1 0 0 0 0 16-3584 chrM 13472 2 0 1 0 1 0 0 16-3584 chrM 13473 2 1 0 1 0 0 0 16-3584 chrM 13474 2 1 0 0 1 0 0 16-3584 chrM 13475 2 0 0 0 2 0 0 16-3584 chrM 13476 2 0 1 1 0 0 0 16-3584 chrM 13477 2 1 1 0 0 0 0 16-3584 chrM 13478 2 0 1 0 1 0 0 16-3584 chrM 13479 2 0 1 1 0 0 0 16-3584 chrM 13480 2 0 1 1 0 0 0 16-3584 chrM 13481 2 2 0 0 0 0 0 16-3584 chrM 13482 2 1 0 1 0 0 0 16-3584 chrM 13483 2 1 1 0 0 0 0 16-3584 chrM 13484 2 0 1 0 1 0 0 16-3584 chrM 13485 2 1 0 0 1 0 0 16-3584 chrM 13486 2 0 0 0 2 0 0 16-3584 chrM 13487 2 2 0 0 0 0 0 16-3584 chrM 13488 2 1 1 0 0 0 0 16-3584 chrM 13489 2 0 1 1 0 0 0 16-3584 chrM 13490 2 2 0 0 0 0 0 16-3584 chrM 13491 2 0 1 0 1 0 0 16-3584 chrM 13492 2 0 2 0 0 0 0 16-3584 chrM 13493 2 1 0 0 1 0 0 16-3584 chrM 13494 2 0 0 0 2 0 0 16-3584 chrM 13495 2 1 1 0 0 0 0 16-3584 chrM 13496 2 1 1 0 0 0 0 16-3584 chrM 13497 2 1 0 1 0 0 0 16-3584 chrM 13498 2 1 1 0 0 0 0 16-3584 chrM 13499 2 0 2 0 0 0 0 16-3584 chrM 13500 2 0 0 0 2 0 0 16-3584 chrM 13501 2 1 0 1 0 0 0 16-3584 chrM 13502 2 1 1 0 0 0 0 16-3584 chrM 13503 2 0 1 1 0 0 0 16-3584 chrM 13504 2 0 1 1 0 0 0 16-3584 chrM 13505 2 2 0 0 0 0 0 16-3584 chrM 13506 2 1 0 1 0 0 0 16-3584 chrM 13507 2 0 1 0 1 0 0 16-3584 chrM 13508 2 1 0 1 0 0 0 16-3584 chrM 13509 2 0 0 0 2 0 0 16-3584 chrM 13510 1 0 0 1 0 0 0 16-3584 chrM 13511 1 0 0 0 1 0 0 16-3584 chrM 13512 1 0 0 0 1 0 0 16-3584 chrM 13513 1 0 0 0 1 0 0 16-3584 chrM 13514 1 1 0 0 0 0 0 16-3584 chrM 13515 1 0 0 0 1 0 0 16-3584 chrM 13516 1 1 0 0 0 0 0 16-3584 chrM 13517 1 0 0 1 0 0 0 16-3584 chrM 13518 1 0 0 1 0 0 0 16-3584 chrM 13519 1 1 0 0 0 0 0 16-3584 chrM 13520 1 0 0 1 0 0 0 16-3584 chrM 13521 1 0 0 1 0 0 0 16-3584 chrM 13522 1 0 0 1 0 0 0 16-3584 chrM 13523 1 0 0 1 0 0 0 16-3584 chrM 13524 1 0 0 1 0 0 0 16-3584 chrM 13525 1 0 0 1 0 0 0 16-3584 chrM 13526 1 0 0 1 0 0 0 16-3584 chrM 13527 1 0 1 0 0 0 0 16-3584 chrM 13528 1 0 0 1 0 0 0 16-3584 chrM 13529 1 0 0 1 0 0 0 16-3584 chrM 13530 1 0 1 0 0 0 0 16-3584 chrM 13531 1 1 0 0 0 0 0 16-3584 chrM 13532 1 1 0 0 0 0 0 16-3584 chrM 13533 1 1 0 0 0 0 0 16-3584 chrM 13534 1 0 0 1 0 0 0 16-3584 chrM 13535 1 1 0 0 0 0 0 16-3584 chrM 13536 1 0 0 0 1 0 0 16-3584 chrM 13537 1 0 0 1 0 0 0 16-3584 chrM 13538 1 0 0 1 0 0 0 16-3584 chrM 13539 1 0 1 0 0 0 0 16-3584 chrM 13540 1 0 0 0 1 0 0 16-3584 chrM 13541 1 0 0 1 0 0 0 16-3584 chrM 13542 1 0 0 1 0 0 0 16-3584 chrM 13543 1 1 0 0 0 0 0 16-3584 chrM 13544 1 0 0 1 0 0 0 16-3584 chrM 13545 1 0 0 0 1 0 0 16-3584 chrM 13546 1 0 0 1 0 0 0 16-3584 chrM 13547 1 0 1 0 0 0 0 16-3584 chrM 13548 1 1 0 0 0 0 0 16-3584 chrM 13549 1 0 0 0 1 0 0 16-3584 chrM 13550 1 0 0 0 1 0 0 16-3584 chrM 13551 1 1 0 0 0 0 0 16-3584 chrM 14794 1 0 0 1 0 0 0 16-3584 chrM 14795 1 0 0 1 0 0 0 16-3584 chrM 14796 1 0 0 0 1 0 0 16-3584 chrM 14797 1 1 0 0 0 0 0 16-3584 chrM 14798 1 1 0 0 0 0 0 16-3584 chrM 14799 1 1 0 0 0 0 0 16-3584 chrM 14800 1 0 1 0 0 0 0 16-3584 chrM 14801 1 0 1 0 0 0 0 16-3584 chrM 14802 1 0 0 1 0 0 0 16-3584 chrM 14803 1 0 0 0 1 0 0 16-3584 chrM 14804 1 0 0 0 1 0 0 16-3584 chrM 14805 1 0 1 0 0 0 0 16-3584 chrM 14806 1 0 1 0 0 0 0 16-3584 chrM 14807 1 0 1 0 0 0 0 16-3584 chrM 14808 1 0 0 0 1 0 0 16-3584 chrM 14809 1 0 0 0 1 0 0 16-3584 chrM 14810 1 0 0 1 0 0 0 16-3584 chrM 14811 1 0 0 1 0 0 0 16-3584 chrM 14812 1 0 1 0 0 0 0 16-3584 chrM 14813 1 0 0 0 1 0 0 16-3584 chrM 14814 1 0 1 0 0 0 0 16-3584 chrM 14815 1 0 0 1 0 0 0 16-3584 chrM 14816 1 0 1 0 0 0 0 16-3584 chrM 14817 1 0 0 1 0 0 0 16-3584 chrM 14818 1 1 0 0 0 0 0 16-3584 chrM 14819 1 0 0 1 0 0 0 16-3584 chrM 14820 2 0 1 0 1 0 0 16-3584 chrM 14821 2 0 1 0 1 0 0 16-3584 chrM 14822 2 0 1 0 1 0 0 16-3584 chrM 14823 2 0 1 1 0 0 0 16-3584 chrM 14824 2 1 1 0 0 0 0 16-3584 chrM 14825 2 0 0 1 1 0 0 16-3584 chrM 14826 2 0 1 1 0 0 0 16-3584 chrM 14827 2 1 0 1 0 0 0 16-3584 chrM 14828 2 0 1 0 1 0 0 16-3584 chrM 14829 2 1 1 0 0 0 0 16-3584 chrM 14830 2 0 0 2 0 0 0 16-3584 chrM 14831 2 0 0 1 1 0 0 16-3584 chrM 14832 2 0 1 1 0 0 0 16-3584 chrM 14833 2 0 2 0 0 0 0 16-3584 chrM 14834 2 1 0 1 0 0 0 16-3584 chrM 14835 2 1 0 1 0 0 0 16-3584 chrM 14836 2 1 1 0 0 0 0 16-3584 chrM 14837 2 0 1 1 0 0 0 16-3584 chrM 14838 2 1 0 1 0 0 0 16-3584 chrM 14839 2 0 1 1 0 0 0 16-3584 chrM 14840 2 0 2 0 0 0 0 16-3584 chrM 14841 2 0 0 2 0 0 0 16-3584 chrM 14842 2 0 1 0 1 0 0 16-3584 chrM 14843 2 0 2 0 0 0 0 16-3584 chrM 14844 2 0 1 0 1 0 0 16-3584 chrM 14845 2 1 1 0 0 0 0 16-3584 chrM 14846 2 1 1 0 0 0 0 16-3584 chrM 14847 2 2 0 0 0 0 0 16-3584 chrM 14848 2 1 1 0 0 0 0 16-3584 chrM 14849 2 0 0 2 0 0 0 16-3584 chrM 14850 2 0 0 2 0 0 0 16-3584 chrM 14851 2 1 1 0 0 0 0 16-3584 chrM 14852 2 0 1 0 1 0 0 16-3584 chrM 14853 2 0 0 0 2 0 0 16-3584 chrM 14854 2 0 2 0 0 0 0 16-3584 chrM 14855 2 2 0 0 0 0 0 16-3584 chrM 14856 2 1 0 1 0 0 0 16-3584 chrM 14857 2 0 1 0 1 0 0 16-3584 chrM 14858 2 0 0 1 1 0 0 16-3584 chrM 14859 2 0 1 1 0 0 0 16-3584 chrM 14860 2 0 1 1 0 0 0 16-3584 chrM 14861 2 0 1 1 0 0 0 16-3584 chrM 14862 2 1 1 0 0 0 0 16-3584 chrM 14863 2 0 0 2 0 0 0 16-3584 chrM 14864 2 2 0 0 0 0 0 16-3584 chrM 14865 2 1 1 0 0 0 0 16-3584 chrM 14866 2 0 1 1 0 0 0 16-3584 chrM 14867 2 0 2 0 0 0 0 16-3584 chrM 14868 2 0 0 0 2 0 0 16-3584 chrM 14869 2 1 1 0 0 0 0 16-3584 chrM 14870 2 1 0 1 0 0 0 16-3584 chrM 14871 2 0 2 0 0 0 0 16-3584 chrM 14872 2 1 0 0 1 0 0 16-3584 chrM 14873 2 1 0 1 0 0 0 16-3584 chrM 14874 2 0 0 1 1 0 0 16-3584 chrM 14875 2 1 0 0 1 0 0 16-3584 chrM 14876 2 0 2 0 0 0 0 16-3584 chrM 14877 2 0 2 0 0 0 0 16-3584 chrM 14878 2 0 0 2 0 0 0 16-3584 chrM 14879 2 0 1 1 0 0 0 16-3584 chrM 14880 2 0 0 2 0 0 0 16-3584 chrM 14881 2 0 0 0 2 0 0 16-3584 chrM 14882 2 0 0 2 0 0 0 16-3584 chrM 14883 2 1 0 0 1 0 0 16-3584 chrM 14884 2 0 1 0 1 0 0 16-3584 chrM 14885 2 0 1 1 0 0 0 16-3584 chrM 14886 2 0 0 1 1 0 0 16-3584 chrM 14887 2 0 1 1 0 0 0 16-3584 chrM 14888 2 0 0 1 1 0 0 16-3584 chrM 14889 2 0 1 0 1 0 0 16-3584 chrM 14890 2 1 0 0 1 0 0 16-3584 chrM 14891 2 0 1 1 0 0 0 16-3584 chrM 14892 2 0 1 0 1 0 0 16-3584 chrM 14893 2 1 0 1 0 0 0 16-3584 chrM 14894 2 1 0 0 1 0 0 16-3584 chrM 14895 2 2 0 0 0 0 0 16-3584 chrM 14896 2 0 2 0 0 0 0 16-3584 chrM 14897 2 0 1 1 0 0 0 16-3584 chrM 14898 2 0 1 0 1 0 0 16-3584 chrM 14899 2 0 0 0 2 0 0 16-3584 chrM 14900 2 1 0 0 1 0 0 16-3584 chrM 14901 2 1 0 0 1 0 0 16-3584 chrM 14902 2 0 0 2 0 0 0 16-3584 chrM 14903 2 1 0 0 1 0 0 16-3584 chrM 14904 2 1 0 0 1 0 0 16-3584 chrM 14905 2 1 1 0 0 0 0 16-3584 chrM 14906 2 0 1 0 1 0 0 16-3584 chrM 14907 2 0 0 2 0 0 0 16-3584 chrM 14908 2 0 0 1 1 0 0 16-3584 chrM 14909 2 0 0 1 1 0 0 16-3584 chrM 14910 2 0 1 0 1 0 0 16-3584 chrM 14911 2 1 0 0 1 0 0 16-3584 chrM 14912 2 1 0 0 1 0 0 16-3584 chrM 14913 2 2 0 0 0 0 0 16-3584 chrM 14914 2 1 0 0 1 0 0 16-3584 chrM 14915 2 1 0 0 1 0 0 16-3584 chrM 14916 2 1 1 0 0 0 0 16-3584 chrM 14917 2 0 1 1 0 0 0 16-3584 chrM 14918 2 1 0 0 1 0 0 16-3584 chrM 14919 2 1 0 1 0 0 0 16-3584 chrM 14920 2 0 1 1 0 0 0 16-3584 chrM 14921 2 1 0 0 1 0 0 16-3584 chrM 14922 2 0 1 0 1 0 0 16-3584 chrM 14923 2 0 1 1 0 0 0 16-3584 chrM 14924 2 0 0 2 0 0 0 16-3584 chrM 14925 2 1 0 0 1 0 0 16-3584 chrM 14926 2 0 1 1 0 0 0 16-3584 chrM 14927 2 0 1 0 1 0 0 16-3584 chrM 14928 2 0 1 0 1 0 0 16-3584 chrM 14929 2 0 1 0 1 0 0 16-3584 chrM 14930 2 1 1 0 0 0 0 16-3584 chrM 14931 2 1 0 0 1 0 0 16-3584 chrM 14932 2 0 1 0 1 0 0 16-3584 chrM 14933 2 0 0 0 2 0 0 16-3584 chrM 14934 2 1 1 0 0 0 0 16-3584 chrM 14935 2 0 1 1 0 0 0 16-3584 chrM 14936 2 1 0 1 0 0 0 16-3584 chrM 14937 2 1 0 1 0 0 0 16-3584 chrM 14938 2 1 0 0 1 0 0 16-3584 chrM 14939 2 1 1 0 0 0 0 16-3584 chrM 14940 1 0 0 0 1 0 0 16-3584 chrM 14941 1 0 1 0 0 0 0 16-3584 chrM 14942 1 0 0 0 1 0 0 16-3584 chrM 14943 1 0 0 1 0 0 0 16-3584 chrM 14944 1 0 0 1 0 0 0 16-3584 chrM 14945 1 0 1 0 0 0 0 16-3584 chrM 14946 1 0 0 1 0 0 0 16-3584 chrM 14947 1 0 0 1 0 0 0 16-3584 chrM 14948 1 1 0 0 0 0 0 16-3584 chrM 14949 1 1 0 0 0 0 0 16-3584 chrM 14950 1 0 1 0 0 0 0 16-3584 chrM 14951 1 1 0 0 0 0 0 16-3584 chrM 14952 1 0 0 0 1 0 0 16-3584 chrM 14953 1 0 0 1 0 0 0 16-3584 chrM 14954 1 0 0 1 0 0 0 16-3584 chrM 14955 1 0 0 1 0 0 0 16-3584 chrM 14956 1 0 1 0 0 0 0 16-3584 chrM 14957 1 0 0 0 1 0 0 16-3584 chrM 14958 1 1 0 0 0 0 0 16-3584 chrM 14959 1 1 0 0 0 0 0 16-3584 chrM 14960 1 0 1 0 0 0 0 16-3584 chrM 14961 1 1 0 0 0 0 0 16-3584 chrM 14962 1 0 0 1 0 0 0 16-3584 chrM 14963 1 1 0 0 0 0 0 16-3584 chrM 14964 1 0 1 0 0 0 0 16-3584 sambamba-0.6.7/test/issue225.z.out000066400000000000000000020265451320451002000166310ustar00rootroot00000000000000REF POS COV A C G T DEL REFSKIP SAMPLE chrM 0 0 0 0 0 0 0 0 16-3584 chrM 1 0 0 0 0 0 0 0 16-3584 chrM 2 0 0 0 0 0 0 0 16-3584 chrM 3 0 0 0 0 0 0 0 16-3584 chrM 4 0 0 0 0 0 0 0 16-3584 chrM 5 0 0 0 0 0 0 0 16-3584 chrM 6 0 0 0 0 0 0 0 16-3584 chrM 7 0 0 0 0 0 0 0 16-3584 chrM 8 0 0 0 0 0 0 0 16-3584 chrM 9 0 0 0 0 0 0 0 16-3584 chrM 10 0 0 0 0 0 0 0 16-3584 chrM 11 0 0 0 0 0 0 0 16-3584 chrM 12 0 0 0 0 0 0 0 16-3584 chrM 13 0 0 0 0 0 0 0 16-3584 chrM 14 0 0 0 0 0 0 0 16-3584 chrM 15 0 0 0 0 0 0 0 16-3584 chrM 16 0 0 0 0 0 0 0 16-3584 chrM 17 0 0 0 0 0 0 0 16-3584 chrM 18 0 0 0 0 0 0 0 16-3584 chrM 19 0 0 0 0 0 0 0 16-3584 chrM 20 0 0 0 0 0 0 0 16-3584 chrM 21 0 0 0 0 0 0 0 16-3584 chrM 22 0 0 0 0 0 0 0 16-3584 chrM 23 0 0 0 0 0 0 0 16-3584 chrM 24 0 0 0 0 0 0 0 16-3584 chrM 25 0 0 0 0 0 0 0 16-3584 chrM 26 0 0 0 0 0 0 0 16-3584 chrM 27 0 0 0 0 0 0 0 16-3584 chrM 28 0 0 0 0 0 0 0 16-3584 chrM 29 0 0 0 0 0 0 0 16-3584 chrM 30 0 0 0 0 0 0 0 16-3584 chrM 31 0 0 0 0 0 0 0 16-3584 chrM 32 0 0 0 0 0 0 0 16-3584 chrM 33 0 0 0 0 0 0 0 16-3584 chrM 34 0 0 0 0 0 0 0 16-3584 chrM 35 0 0 0 0 0 0 0 16-3584 chrM 36 0 0 0 0 0 0 0 16-3584 chrM 37 0 0 0 0 0 0 0 16-3584 chrM 38 0 0 0 0 0 0 0 16-3584 chrM 39 0 0 0 0 0 0 0 16-3584 chrM 40 0 0 0 0 0 0 0 16-3584 chrM 41 0 0 0 0 0 0 0 16-3584 chrM 42 0 0 0 0 0 0 0 16-3584 chrM 43 0 0 0 0 0 0 0 16-3584 chrM 44 0 0 0 0 0 0 0 16-3584 chrM 45 0 0 0 0 0 0 0 16-3584 chrM 46 0 0 0 0 0 0 0 16-3584 chrM 47 0 0 0 0 0 0 0 16-3584 chrM 48 0 0 0 0 0 0 0 16-3584 chrM 49 0 0 0 0 0 0 0 16-3584 chrM 50 0 0 0 0 0 0 0 16-3584 chrM 51 0 0 0 0 0 0 0 16-3584 chrM 52 0 0 0 0 0 0 0 16-3584 chrM 53 0 0 0 0 0 0 0 16-3584 chrM 54 0 0 0 0 0 0 0 16-3584 chrM 55 0 0 0 0 0 0 0 16-3584 chrM 56 0 0 0 0 0 0 0 16-3584 chrM 57 0 0 0 0 0 0 0 16-3584 chrM 58 0 0 0 0 0 0 0 16-3584 chrM 59 0 0 0 0 0 0 0 16-3584 chrM 60 0 0 0 0 0 0 0 16-3584 chrM 61 0 0 0 0 0 0 0 16-3584 chrM 62 0 0 0 0 0 0 0 16-3584 chrM 63 0 0 0 0 0 0 0 16-3584 chrM 64 0 0 0 0 0 0 0 16-3584 chrM 65 0 0 0 0 0 0 0 16-3584 chrM 66 0 0 0 0 0 0 0 16-3584 chrM 67 0 0 0 0 0 0 0 16-3584 chrM 68 0 0 0 0 0 0 0 16-3584 chrM 69 0 0 0 0 0 0 0 16-3584 chrM 70 0 0 0 0 0 0 0 16-3584 chrM 71 0 0 0 0 0 0 0 16-3584 chrM 72 0 0 0 0 0 0 0 16-3584 chrM 73 0 0 0 0 0 0 0 16-3584 chrM 74 0 0 0 0 0 0 0 16-3584 chrM 75 0 0 0 0 0 0 0 16-3584 chrM 76 0 0 0 0 0 0 0 16-3584 chrM 77 0 0 0 0 0 0 0 16-3584 chrM 78 0 0 0 0 0 0 0 16-3584 chrM 79 0 0 0 0 0 0 0 16-3584 chrM 80 0 0 0 0 0 0 0 16-3584 chrM 81 0 0 0 0 0 0 0 16-3584 chrM 82 0 0 0 0 0 0 0 16-3584 chrM 83 0 0 0 0 0 0 0 16-3584 chrM 84 0 0 0 0 0 0 0 16-3584 chrM 85 0 0 0 0 0 0 0 16-3584 chrM 86 0 0 0 0 0 0 0 16-3584 chrM 87 0 0 0 0 0 0 0 16-3584 chrM 88 0 0 0 0 0 0 0 16-3584 chrM 89 0 0 0 0 0 0 0 16-3584 chrM 90 0 0 0 0 0 0 0 16-3584 chrM 91 0 0 0 0 0 0 0 16-3584 chrM 92 0 0 0 0 0 0 0 16-3584 chrM 93 0 0 0 0 0 0 0 16-3584 chrM 94 0 0 0 0 0 0 0 16-3584 chrM 95 0 0 0 0 0 0 0 16-3584 chrM 96 0 0 0 0 0 0 0 16-3584 chrM 97 0 0 0 0 0 0 0 16-3584 chrM 98 0 0 0 0 0 0 0 16-3584 chrM 99 0 0 0 0 0 0 0 16-3584 chrM 100 0 0 0 0 0 0 0 16-3584 chrM 101 0 0 0 0 0 0 0 16-3584 chrM 102 0 0 0 0 0 0 0 16-3584 chrM 103 0 0 0 0 0 0 0 16-3584 chrM 104 0 0 0 0 0 0 0 16-3584 chrM 105 0 0 0 0 0 0 0 16-3584 chrM 106 0 0 0 0 0 0 0 16-3584 chrM 107 0 0 0 0 0 0 0 16-3584 chrM 108 0 0 0 0 0 0 0 16-3584 chrM 109 0 0 0 0 0 0 0 16-3584 chrM 110 0 0 0 0 0 0 0 16-3584 chrM 111 0 0 0 0 0 0 0 16-3584 chrM 112 0 0 0 0 0 0 0 16-3584 chrM 113 0 0 0 0 0 0 0 16-3584 chrM 114 0 0 0 0 0 0 0 16-3584 chrM 115 0 0 0 0 0 0 0 16-3584 chrM 116 0 0 0 0 0 0 0 16-3584 chrM 117 0 0 0 0 0 0 0 16-3584 chrM 118 0 0 0 0 0 0 0 16-3584 chrM 119 0 0 0 0 0 0 0 16-3584 chrM 120 0 0 0 0 0 0 0 16-3584 chrM 121 0 0 0 0 0 0 0 16-3584 chrM 122 0 0 0 0 0 0 0 16-3584 chrM 123 0 0 0 0 0 0 0 16-3584 chrM 124 0 0 0 0 0 0 0 16-3584 chrM 125 0 0 0 0 0 0 0 16-3584 chrM 126 0 0 0 0 0 0 0 16-3584 chrM 127 0 0 0 0 0 0 0 16-3584 chrM 128 0 0 0 0 0 0 0 16-3584 chrM 129 0 0 0 0 0 0 0 16-3584 chrM 130 0 0 0 0 0 0 0 16-3584 chrM 131 0 0 0 0 0 0 0 16-3584 chrM 132 0 0 0 0 0 0 0 16-3584 chrM 133 0 0 0 0 0 0 0 16-3584 chrM 134 0 0 0 0 0 0 0 16-3584 chrM 135 0 0 0 0 0 0 0 16-3584 chrM 136 0 0 0 0 0 0 0 16-3584 chrM 137 0 0 0 0 0 0 0 16-3584 chrM 138 0 0 0 0 0 0 0 16-3584 chrM 139 0 0 0 0 0 0 0 16-3584 chrM 140 0 0 0 0 0 0 0 16-3584 chrM 141 0 0 0 0 0 0 0 16-3584 chrM 142 0 0 0 0 0 0 0 16-3584 chrM 143 0 0 0 0 0 0 0 16-3584 chrM 144 0 0 0 0 0 0 0 16-3584 chrM 145 0 0 0 0 0 0 0 16-3584 chrM 146 0 0 0 0 0 0 0 16-3584 chrM 147 0 0 0 0 0 0 0 16-3584 chrM 148 0 0 0 0 0 0 0 16-3584 chrM 149 0 0 0 0 0 0 0 16-3584 chrM 150 0 0 0 0 0 0 0 16-3584 chrM 151 0 0 0 0 0 0 0 16-3584 chrM 152 0 0 0 0 0 0 0 16-3584 chrM 153 0 0 0 0 0 0 0 16-3584 chrM 154 0 0 0 0 0 0 0 16-3584 chrM 155 0 0 0 0 0 0 0 16-3584 chrM 156 0 0 0 0 0 0 0 16-3584 chrM 157 0 0 0 0 0 0 0 16-3584 chrM 158 0 0 0 0 0 0 0 16-3584 chrM 159 0 0 0 0 0 0 0 16-3584 chrM 160 0 0 0 0 0 0 0 16-3584 chrM 161 0 0 0 0 0 0 0 16-3584 chrM 162 0 0 0 0 0 0 0 16-3584 chrM 163 0 0 0 0 0 0 0 16-3584 chrM 164 0 0 0 0 0 0 0 16-3584 chrM 165 0 0 0 0 0 0 0 16-3584 chrM 166 0 0 0 0 0 0 0 16-3584 chrM 167 0 0 0 0 0 0 0 16-3584 chrM 168 0 0 0 0 0 0 0 16-3584 chrM 169 0 0 0 0 0 0 0 16-3584 chrM 170 0 0 0 0 0 0 0 16-3584 chrM 171 0 0 0 0 0 0 0 16-3584 chrM 172 0 0 0 0 0 0 0 16-3584 chrM 173 0 0 0 0 0 0 0 16-3584 chrM 174 0 0 0 0 0 0 0 16-3584 chrM 175 0 0 0 0 0 0 0 16-3584 chrM 176 0 0 0 0 0 0 0 16-3584 chrM 177 0 0 0 0 0 0 0 16-3584 chrM 178 0 0 0 0 0 0 0 16-3584 chrM 179 0 0 0 0 0 0 0 16-3584 chrM 180 0 0 0 0 0 0 0 16-3584 chrM 181 0 0 0 0 0 0 0 16-3584 chrM 182 0 0 0 0 0 0 0 16-3584 chrM 183 0 0 0 0 0 0 0 16-3584 chrM 184 0 0 0 0 0 0 0 16-3584 chrM 185 0 0 0 0 0 0 0 16-3584 chrM 186 0 0 0 0 0 0 0 16-3584 chrM 187 0 0 0 0 0 0 0 16-3584 chrM 188 0 0 0 0 0 0 0 16-3584 chrM 189 0 0 0 0 0 0 0 16-3584 chrM 190 0 0 0 0 0 0 0 16-3584 chrM 191 0 0 0 0 0 0 0 16-3584 chrM 192 0 0 0 0 0 0 0 16-3584 chrM 193 0 0 0 0 0 0 0 16-3584 chrM 194 0 0 0 0 0 0 0 16-3584 chrM 195 0 0 0 0 0 0 0 16-3584 chrM 196 0 0 0 0 0 0 0 16-3584 chrM 197 0 0 0 0 0 0 0 16-3584 chrM 198 0 0 0 0 0 0 0 16-3584 chrM 199 0 0 0 0 0 0 0 16-3584 chrM 200 0 0 0 0 0 0 0 16-3584 chrM 201 0 0 0 0 0 0 0 16-3584 chrM 202 0 0 0 0 0 0 0 16-3584 chrM 203 0 0 0 0 0 0 0 16-3584 chrM 204 0 0 0 0 0 0 0 16-3584 chrM 205 0 0 0 0 0 0 0 16-3584 chrM 206 0 0 0 0 0 0 0 16-3584 chrM 207 0 0 0 0 0 0 0 16-3584 chrM 208 0 0 0 0 0 0 0 16-3584 chrM 209 0 0 0 0 0 0 0 16-3584 chrM 210 0 0 0 0 0 0 0 16-3584 chrM 211 0 0 0 0 0 0 0 16-3584 chrM 212 0 0 0 0 0 0 0 16-3584 chrM 213 0 0 0 0 0 0 0 16-3584 chrM 214 0 0 0 0 0 0 0 16-3584 chrM 215 0 0 0 0 0 0 0 16-3584 chrM 216 0 0 0 0 0 0 0 16-3584 chrM 217 0 0 0 0 0 0 0 16-3584 chrM 218 0 0 0 0 0 0 0 16-3584 chrM 219 0 0 0 0 0 0 0 16-3584 chrM 220 0 0 0 0 0 0 0 16-3584 chrM 221 0 0 0 0 0 0 0 16-3584 chrM 222 0 0 0 0 0 0 0 16-3584 chrM 223 0 0 0 0 0 0 0 16-3584 chrM 224 0 0 0 0 0 0 0 16-3584 chrM 225 0 0 0 0 0 0 0 16-3584 chrM 226 0 0 0 0 0 0 0 16-3584 chrM 227 0 0 0 0 0 0 0 16-3584 chrM 228 0 0 0 0 0 0 0 16-3584 chrM 229 0 0 0 0 0 0 0 16-3584 chrM 230 0 0 0 0 0 0 0 16-3584 chrM 231 0 0 0 0 0 0 0 16-3584 chrM 232 0 0 0 0 0 0 0 16-3584 chrM 233 0 0 0 0 0 0 0 16-3584 chrM 234 0 0 0 0 0 0 0 16-3584 chrM 235 0 0 0 0 0 0 0 16-3584 chrM 236 0 0 0 0 0 0 0 16-3584 chrM 237 0 0 0 0 0 0 0 16-3584 chrM 238 0 0 0 0 0 0 0 16-3584 chrM 239 0 0 0 0 0 0 0 16-3584 chrM 240 0 0 0 0 0 0 0 16-3584 chrM 241 0 0 0 0 0 0 0 16-3584 chrM 242 0 0 0 0 0 0 0 16-3584 chrM 243 0 0 0 0 0 0 0 16-3584 chrM 244 0 0 0 0 0 0 0 16-3584 chrM 245 0 0 0 0 0 0 0 16-3584 chrM 246 0 0 0 0 0 0 0 16-3584 chrM 247 0 0 0 0 0 0 0 16-3584 chrM 248 0 0 0 0 0 0 0 16-3584 chrM 249 0 0 0 0 0 0 0 16-3584 chrM 250 0 0 0 0 0 0 0 16-3584 chrM 251 0 0 0 0 0 0 0 16-3584 chrM 252 0 0 0 0 0 0 0 16-3584 chrM 253 0 0 0 0 0 0 0 16-3584 chrM 254 0 0 0 0 0 0 0 16-3584 chrM 255 0 0 0 0 0 0 0 16-3584 chrM 256 0 0 0 0 0 0 0 16-3584 chrM 257 0 0 0 0 0 0 0 16-3584 chrM 258 0 0 0 0 0 0 0 16-3584 chrM 259 0 0 0 0 0 0 0 16-3584 chrM 260 0 0 0 0 0 0 0 16-3584 chrM 261 0 0 0 0 0 0 0 16-3584 chrM 262 0 0 0 0 0 0 0 16-3584 chrM 263 0 0 0 0 0 0 0 16-3584 chrM 264 0 0 0 0 0 0 0 16-3584 chrM 265 0 0 0 0 0 0 0 16-3584 chrM 266 0 0 0 0 0 0 0 16-3584 chrM 267 0 0 0 0 0 0 0 16-3584 chrM 268 0 0 0 0 0 0 0 16-3584 chrM 269 0 0 0 0 0 0 0 16-3584 chrM 270 0 0 0 0 0 0 0 16-3584 chrM 271 0 0 0 0 0 0 0 16-3584 chrM 272 0 0 0 0 0 0 0 16-3584 chrM 273 0 0 0 0 0 0 0 16-3584 chrM 274 0 0 0 0 0 0 0 16-3584 chrM 275 0 0 0 0 0 0 0 16-3584 chrM 276 0 0 0 0 0 0 0 16-3584 chrM 277 0 0 0 0 0 0 0 16-3584 chrM 278 0 0 0 0 0 0 0 16-3584 chrM 279 0 0 0 0 0 0 0 16-3584 chrM 280 0 0 0 0 0 0 0 16-3584 chrM 281 0 0 0 0 0 0 0 16-3584 chrM 282 0 0 0 0 0 0 0 16-3584 chrM 283 0 0 0 0 0 0 0 16-3584 chrM 284 0 0 0 0 0 0 0 16-3584 chrM 285 0 0 0 0 0 0 0 16-3584 chrM 286 0 0 0 0 0 0 0 16-3584 chrM 287 0 0 0 0 0 0 0 16-3584 chrM 288 0 0 0 0 0 0 0 16-3584 chrM 289 0 0 0 0 0 0 0 16-3584 chrM 290 0 0 0 0 0 0 0 16-3584 chrM 291 0 0 0 0 0 0 0 16-3584 chrM 292 0 0 0 0 0 0 0 16-3584 chrM 293 0 0 0 0 0 0 0 16-3584 chrM 294 0 0 0 0 0 0 0 16-3584 chrM 295 0 0 0 0 0 0 0 16-3584 chrM 296 0 0 0 0 0 0 0 16-3584 chrM 297 0 0 0 0 0 0 0 16-3584 chrM 298 0 0 0 0 0 0 0 16-3584 chrM 299 0 0 0 0 0 0 0 16-3584 chrM 300 0 0 0 0 0 0 0 16-3584 chrM 301 0 0 0 0 0 0 0 16-3584 chrM 302 0 0 0 0 0 0 0 16-3584 chrM 303 0 0 0 0 0 0 0 16-3584 chrM 304 0 0 0 0 0 0 0 16-3584 chrM 305 0 0 0 0 0 0 0 16-3584 chrM 306 0 0 0 0 0 0 0 16-3584 chrM 307 0 0 0 0 0 0 0 16-3584 chrM 308 0 0 0 0 0 0 0 16-3584 chrM 309 0 0 0 0 0 0 0 16-3584 chrM 310 0 0 0 0 0 0 0 16-3584 chrM 311 0 0 0 0 0 0 0 16-3584 chrM 312 0 0 0 0 0 0 0 16-3584 chrM 313 0 0 0 0 0 0 0 16-3584 chrM 314 0 0 0 0 0 0 0 16-3584 chrM 315 0 0 0 0 0 0 0 16-3584 chrM 316 0 0 0 0 0 0 0 16-3584 chrM 317 0 0 0 0 0 0 0 16-3584 chrM 318 0 0 0 0 0 0 0 16-3584 chrM 319 0 0 0 0 0 0 0 16-3584 chrM 320 0 0 0 0 0 0 0 16-3584 chrM 321 0 0 0 0 0 0 0 16-3584 chrM 322 0 0 0 0 0 0 0 16-3584 chrM 323 0 0 0 0 0 0 0 16-3584 chrM 324 0 0 0 0 0 0 0 16-3584 chrM 325 0 0 0 0 0 0 0 16-3584 chrM 326 0 0 0 0 0 0 0 16-3584 chrM 327 0 0 0 0 0 0 0 16-3584 chrM 328 0 0 0 0 0 0 0 16-3584 chrM 329 0 0 0 0 0 0 0 16-3584 chrM 330 0 0 0 0 0 0 0 16-3584 chrM 331 0 0 0 0 0 0 0 16-3584 chrM 332 0 0 0 0 0 0 0 16-3584 chrM 333 0 0 0 0 0 0 0 16-3584 chrM 334 0 0 0 0 0 0 0 16-3584 chrM 335 0 0 0 0 0 0 0 16-3584 chrM 336 0 0 0 0 0 0 0 16-3584 chrM 337 0 0 0 0 0 0 0 16-3584 chrM 338 0 0 0 0 0 0 0 16-3584 chrM 339 0 0 0 0 0 0 0 16-3584 chrM 340 0 0 0 0 0 0 0 16-3584 chrM 341 0 0 0 0 0 0 0 16-3584 chrM 342 0 0 0 0 0 0 0 16-3584 chrM 343 0 0 0 0 0 0 0 16-3584 chrM 344 0 0 0 0 0 0 0 16-3584 chrM 345 0 0 0 0 0 0 0 16-3584 chrM 346 0 0 0 0 0 0 0 16-3584 chrM 347 0 0 0 0 0 0 0 16-3584 chrM 348 0 0 0 0 0 0 0 16-3584 chrM 349 0 0 0 0 0 0 0 16-3584 chrM 350 0 0 0 0 0 0 0 16-3584 chrM 351 0 0 0 0 0 0 0 16-3584 chrM 352 0 0 0 0 0 0 0 16-3584 chrM 353 0 0 0 0 0 0 0 16-3584 chrM 354 0 0 0 0 0 0 0 16-3584 chrM 355 0 0 0 0 0 0 0 16-3584 chrM 356 0 0 0 0 0 0 0 16-3584 chrM 357 0 0 0 0 0 0 0 16-3584 chrM 358 0 0 0 0 0 0 0 16-3584 chrM 359 0 0 0 0 0 0 0 16-3584 chrM 360 0 0 0 0 0 0 0 16-3584 chrM 361 0 0 0 0 0 0 0 16-3584 chrM 362 0 0 0 0 0 0 0 16-3584 chrM 363 0 0 0 0 0 0 0 16-3584 chrM 364 0 0 0 0 0 0 0 16-3584 chrM 365 0 0 0 0 0 0 0 16-3584 chrM 366 0 0 0 0 0 0 0 16-3584 chrM 367 0 0 0 0 0 0 0 16-3584 chrM 368 0 0 0 0 0 0 0 16-3584 chrM 369 0 0 0 0 0 0 0 16-3584 chrM 370 0 0 0 0 0 0 0 16-3584 chrM 371 0 0 0 0 0 0 0 16-3584 chrM 372 0 0 0 0 0 0 0 16-3584 chrM 373 0 0 0 0 0 0 0 16-3584 chrM 374 0 0 0 0 0 0 0 16-3584 chrM 375 0 0 0 0 0 0 0 16-3584 chrM 376 0 0 0 0 0 0 0 16-3584 chrM 377 0 0 0 0 0 0 0 16-3584 chrM 378 0 0 0 0 0 0 0 16-3584 chrM 379 0 0 0 0 0 0 0 16-3584 chrM 380 0 0 0 0 0 0 0 16-3584 chrM 381 0 0 0 0 0 0 0 16-3584 chrM 382 0 0 0 0 0 0 0 16-3584 chrM 383 0 0 0 0 0 0 0 16-3584 chrM 384 0 0 0 0 0 0 0 16-3584 chrM 385 0 0 0 0 0 0 0 16-3584 chrM 386 0 0 0 0 0 0 0 16-3584 chrM 387 0 0 0 0 0 0 0 16-3584 chrM 388 0 0 0 0 0 0 0 16-3584 chrM 389 0 0 0 0 0 0 0 16-3584 chrM 390 0 0 0 0 0 0 0 16-3584 chrM 391 0 0 0 0 0 0 0 16-3584 chrM 392 0 0 0 0 0 0 0 16-3584 chrM 393 0 0 0 0 0 0 0 16-3584 chrM 394 0 0 0 0 0 0 0 16-3584 chrM 395 0 0 0 0 0 0 0 16-3584 chrM 396 0 0 0 0 0 0 0 16-3584 chrM 397 0 0 0 0 0 0 0 16-3584 chrM 398 0 0 0 0 0 0 0 16-3584 chrM 399 0 0 0 0 0 0 0 16-3584 chrM 400 0 0 0 0 0 0 0 16-3584 chrM 401 0 0 0 0 0 0 0 16-3584 chrM 402 0 0 0 0 0 0 0 16-3584 chrM 403 0 0 0 0 0 0 0 16-3584 chrM 404 0 0 0 0 0 0 0 16-3584 chrM 405 0 0 0 0 0 0 0 16-3584 chrM 406 0 0 0 0 0 0 0 16-3584 chrM 407 0 0 0 0 0 0 0 16-3584 chrM 408 0 0 0 0 0 0 0 16-3584 chrM 409 0 0 0 0 0 0 0 16-3584 chrM 410 0 0 0 0 0 0 0 16-3584 chrM 411 0 0 0 0 0 0 0 16-3584 chrM 412 0 0 0 0 0 0 0 16-3584 chrM 413 0 0 0 0 0 0 0 16-3584 chrM 414 0 0 0 0 0 0 0 16-3584 chrM 415 0 0 0 0 0 0 0 16-3584 chrM 416 0 0 0 0 0 0 0 16-3584 chrM 417 0 0 0 0 0 0 0 16-3584 chrM 418 0 0 0 0 0 0 0 16-3584 chrM 419 0 0 0 0 0 0 0 16-3584 chrM 420 0 0 0 0 0 0 0 16-3584 chrM 421 0 0 0 0 0 0 0 16-3584 chrM 422 0 0 0 0 0 0 0 16-3584 chrM 423 0 0 0 0 0 0 0 16-3584 chrM 424 0 0 0 0 0 0 0 16-3584 chrM 425 0 0 0 0 0 0 0 16-3584 chrM 426 0 0 0 0 0 0 0 16-3584 chrM 427 0 0 0 0 0 0 0 16-3584 chrM 428 0 0 0 0 0 0 0 16-3584 chrM 429 0 0 0 0 0 0 0 16-3584 chrM 430 0 0 0 0 0 0 0 16-3584 chrM 431 0 0 0 0 0 0 0 16-3584 chrM 432 0 0 0 0 0 0 0 16-3584 chrM 433 0 0 0 0 0 0 0 16-3584 chrM 434 0 0 0 0 0 0 0 16-3584 chrM 435 0 0 0 0 0 0 0 16-3584 chrM 436 0 0 0 0 0 0 0 16-3584 chrM 437 0 0 0 0 0 0 0 16-3584 chrM 438 0 0 0 0 0 0 0 16-3584 chrM 439 0 0 0 0 0 0 0 16-3584 chrM 440 0 0 0 0 0 0 0 16-3584 chrM 441 0 0 0 0 0 0 0 16-3584 chrM 442 0 0 0 0 0 0 0 16-3584 chrM 443 0 0 0 0 0 0 0 16-3584 chrM 444 0 0 0 0 0 0 0 16-3584 chrM 445 0 0 0 0 0 0 0 16-3584 chrM 446 0 0 0 0 0 0 0 16-3584 chrM 447 0 0 0 0 0 0 0 16-3584 chrM 448 0 0 0 0 0 0 0 16-3584 chrM 449 0 0 0 0 0 0 0 16-3584 chrM 450 0 0 0 0 0 0 0 16-3584 chrM 451 0 0 0 0 0 0 0 16-3584 chrM 452 0 0 0 0 0 0 0 16-3584 chrM 453 0 0 0 0 0 0 0 16-3584 chrM 454 0 0 0 0 0 0 0 16-3584 chrM 455 0 0 0 0 0 0 0 16-3584 chrM 456 0 0 0 0 0 0 0 16-3584 chrM 457 0 0 0 0 0 0 0 16-3584 chrM 458 0 0 0 0 0 0 0 16-3584 chrM 459 0 0 0 0 0 0 0 16-3584 chrM 460 0 0 0 0 0 0 0 16-3584 chrM 461 0 0 0 0 0 0 0 16-3584 chrM 462 0 0 0 0 0 0 0 16-3584 chrM 463 0 0 0 0 0 0 0 16-3584 chrM 464 0 0 0 0 0 0 0 16-3584 chrM 465 0 0 0 0 0 0 0 16-3584 chrM 466 0 0 0 0 0 0 0 16-3584 chrM 467 0 0 0 0 0 0 0 16-3584 chrM 468 0 0 0 0 0 0 0 16-3584 chrM 469 0 0 0 0 0 0 0 16-3584 chrM 470 0 0 0 0 0 0 0 16-3584 chrM 471 0 0 0 0 0 0 0 16-3584 chrM 472 0 0 0 0 0 0 0 16-3584 chrM 473 0 0 0 0 0 0 0 16-3584 chrM 474 0 0 0 0 0 0 0 16-3584 chrM 475 0 0 0 0 0 0 0 16-3584 chrM 476 0 0 0 0 0 0 0 16-3584 chrM 477 0 0 0 0 0 0 0 16-3584 chrM 478 0 0 0 0 0 0 0 16-3584 chrM 479 0 0 0 0 0 0 0 16-3584 chrM 480 0 0 0 0 0 0 0 16-3584 chrM 481 0 0 0 0 0 0 0 16-3584 chrM 482 0 0 0 0 0 0 0 16-3584 chrM 483 0 0 0 0 0 0 0 16-3584 chrM 484 0 0 0 0 0 0 0 16-3584 chrM 485 0 0 0 0 0 0 0 16-3584 chrM 486 0 0 0 0 0 0 0 16-3584 chrM 487 0 0 0 0 0 0 0 16-3584 chrM 488 0 0 0 0 0 0 0 16-3584 chrM 489 0 0 0 0 0 0 0 16-3584 chrM 490 0 0 0 0 0 0 0 16-3584 chrM 491 0 0 0 0 0 0 0 16-3584 chrM 492 0 0 0 0 0 0 0 16-3584 chrM 493 0 0 0 0 0 0 0 16-3584 chrM 494 0 0 0 0 0 0 0 16-3584 chrM 495 0 0 0 0 0 0 0 16-3584 chrM 496 0 0 0 0 0 0 0 16-3584 chrM 497 0 0 0 0 0 0 0 16-3584 chrM 498 0 0 0 0 0 0 0 16-3584 chrM 499 0 0 0 0 0 0 0 16-3584 chrM 500 0 0 0 0 0 0 0 16-3584 chrM 501 0 0 0 0 0 0 0 16-3584 chrM 502 0 0 0 0 0 0 0 16-3584 chrM 503 0 0 0 0 0 0 0 16-3584 chrM 504 0 0 0 0 0 0 0 16-3584 chrM 505 0 0 0 0 0 0 0 16-3584 chrM 506 0 0 0 0 0 0 0 16-3584 chrM 507 0 0 0 0 0 0 0 16-3584 chrM 508 0 0 0 0 0 0 0 16-3584 chrM 509 0 0 0 0 0 0 0 16-3584 chrM 510 0 0 0 0 0 0 0 16-3584 chrM 511 0 0 0 0 0 0 0 16-3584 chrM 512 0 0 0 0 0 0 0 16-3584 chrM 513 0 0 0 0 0 0 0 16-3584 chrM 514 0 0 0 0 0 0 0 16-3584 chrM 515 0 0 0 0 0 0 0 16-3584 chrM 516 0 0 0 0 0 0 0 16-3584 chrM 517 0 0 0 0 0 0 0 16-3584 chrM 518 0 0 0 0 0 0 0 16-3584 chrM 519 0 0 0 0 0 0 0 16-3584 chrM 520 0 0 0 0 0 0 0 16-3584 chrM 521 0 0 0 0 0 0 0 16-3584 chrM 522 0 0 0 0 0 0 0 16-3584 chrM 523 0 0 0 0 0 0 0 16-3584 chrM 524 0 0 0 0 0 0 0 16-3584 chrM 525 0 0 0 0 0 0 0 16-3584 chrM 526 0 0 0 0 0 0 0 16-3584 chrM 527 0 0 0 0 0 0 0 16-3584 chrM 528 0 0 0 0 0 0 0 16-3584 chrM 529 0 0 0 0 0 0 0 16-3584 chrM 530 0 0 0 0 0 0 0 16-3584 chrM 531 0 0 0 0 0 0 0 16-3584 chrM 532 0 0 0 0 0 0 0 16-3584 chrM 533 0 0 0 0 0 0 0 16-3584 chrM 534 0 0 0 0 0 0 0 16-3584 chrM 535 0 0 0 0 0 0 0 16-3584 chrM 536 0 0 0 0 0 0 0 16-3584 chrM 537 0 0 0 0 0 0 0 16-3584 chrM 538 0 0 0 0 0 0 0 16-3584 chrM 539 0 0 0 0 0 0 0 16-3584 chrM 540 0 0 0 0 0 0 0 16-3584 chrM 541 0 0 0 0 0 0 0 16-3584 chrM 542 0 0 0 0 0 0 0 16-3584 chrM 543 0 0 0 0 0 0 0 16-3584 chrM 544 0 0 0 0 0 0 0 16-3584 chrM 545 0 0 0 0 0 0 0 16-3584 chrM 546 0 0 0 0 0 0 0 16-3584 chrM 547 0 0 0 0 0 0 0 16-3584 chrM 548 0 0 0 0 0 0 0 16-3584 chrM 549 0 0 0 0 0 0 0 16-3584 chrM 550 0 0 0 0 0 0 0 16-3584 chrM 551 0 0 0 0 0 0 0 16-3584 chrM 552 0 0 0 0 0 0 0 16-3584 chrM 553 0 0 0 0 0 0 0 16-3584 chrM 554 0 0 0 0 0 0 0 16-3584 chrM 555 0 0 0 0 0 0 0 16-3584 chrM 556 0 0 0 0 0 0 0 16-3584 chrM 557 0 0 0 0 0 0 0 16-3584 chrM 558 0 0 0 0 0 0 0 16-3584 chrM 559 0 0 0 0 0 0 0 16-3584 chrM 560 0 0 0 0 0 0 0 16-3584 chrM 561 0 0 0 0 0 0 0 16-3584 chrM 562 0 0 0 0 0 0 0 16-3584 chrM 563 0 0 0 0 0 0 0 16-3584 chrM 564 0 0 0 0 0 0 0 16-3584 chrM 565 0 0 0 0 0 0 0 16-3584 chrM 566 0 0 0 0 0 0 0 16-3584 chrM 567 0 0 0 0 0 0 0 16-3584 chrM 568 0 0 0 0 0 0 0 16-3584 chrM 569 0 0 0 0 0 0 0 16-3584 chrM 570 0 0 0 0 0 0 0 16-3584 chrM 571 0 0 0 0 0 0 0 16-3584 chrM 572 0 0 0 0 0 0 0 16-3584 chrM 573 0 0 0 0 0 0 0 16-3584 chrM 574 0 0 0 0 0 0 0 16-3584 chrM 575 0 0 0 0 0 0 0 16-3584 chrM 576 0 0 0 0 0 0 0 16-3584 chrM 577 0 0 0 0 0 0 0 16-3584 chrM 578 0 0 0 0 0 0 0 16-3584 chrM 579 0 0 0 0 0 0 0 16-3584 chrM 580 0 0 0 0 0 0 0 16-3584 chrM 581 0 0 0 0 0 0 0 16-3584 chrM 582 0 0 0 0 0 0 0 16-3584 chrM 583 0 0 0 0 0 0 0 16-3584 chrM 584 0 0 0 0 0 0 0 16-3584 chrM 585 0 0 0 0 0 0 0 16-3584 chrM 586 0 0 0 0 0 0 0 16-3584 chrM 587 0 0 0 0 0 0 0 16-3584 chrM 588 0 0 0 0 0 0 0 16-3584 chrM 589 0 0 0 0 0 0 0 16-3584 chrM 590 0 0 0 0 0 0 0 16-3584 chrM 591 0 0 0 0 0 0 0 16-3584 chrM 592 0 0 0 0 0 0 0 16-3584 chrM 593 0 0 0 0 0 0 0 16-3584 chrM 594 0 0 0 0 0 0 0 16-3584 chrM 595 0 0 0 0 0 0 0 16-3584 chrM 596 0 0 0 0 0 0 0 16-3584 chrM 597 0 0 0 0 0 0 0 16-3584 chrM 598 0 0 0 0 0 0 0 16-3584 chrM 599 0 0 0 0 0 0 0 16-3584 chrM 600 0 0 0 0 0 0 0 16-3584 chrM 601 0 0 0 0 0 0 0 16-3584 chrM 602 0 0 0 0 0 0 0 16-3584 chrM 603 0 0 0 0 0 0 0 16-3584 chrM 604 0 0 0 0 0 0 0 16-3584 chrM 605 0 0 0 0 0 0 0 16-3584 chrM 606 0 0 0 0 0 0 0 16-3584 chrM 607 0 0 0 0 0 0 0 16-3584 chrM 608 0 0 0 0 0 0 0 16-3584 chrM 609 0 0 0 0 0 0 0 16-3584 chrM 610 0 0 0 0 0 0 0 16-3584 chrM 611 0 0 0 0 0 0 0 16-3584 chrM 612 0 0 0 0 0 0 0 16-3584 chrM 613 0 0 0 0 0 0 0 16-3584 chrM 614 0 0 0 0 0 0 0 16-3584 chrM 615 0 0 0 0 0 0 0 16-3584 chrM 616 0 0 0 0 0 0 0 16-3584 chrM 617 0 0 0 0 0 0 0 16-3584 chrM 618 0 0 0 0 0 0 0 16-3584 chrM 619 0 0 0 0 0 0 0 16-3584 chrM 620 0 0 0 0 0 0 0 16-3584 chrM 621 0 0 0 0 0 0 0 16-3584 chrM 622 0 0 0 0 0 0 0 16-3584 chrM 623 0 0 0 0 0 0 0 16-3584 chrM 624 0 0 0 0 0 0 0 16-3584 chrM 625 0 0 0 0 0 0 0 16-3584 chrM 626 0 0 0 0 0 0 0 16-3584 chrM 627 0 0 0 0 0 0 0 16-3584 chrM 628 0 0 0 0 0 0 0 16-3584 chrM 629 0 0 0 0 0 0 0 16-3584 chrM 630 0 0 0 0 0 0 0 16-3584 chrM 631 0 0 0 0 0 0 0 16-3584 chrM 632 0 0 0 0 0 0 0 16-3584 chrM 633 0 0 0 0 0 0 0 16-3584 chrM 634 0 0 0 0 0 0 0 16-3584 chrM 635 0 0 0 0 0 0 0 16-3584 chrM 636 0 0 0 0 0 0 0 16-3584 chrM 637 0 0 0 0 0 0 0 16-3584 chrM 638 0 0 0 0 0 0 0 16-3584 chrM 639 0 0 0 0 0 0 0 16-3584 chrM 640 0 0 0 0 0 0 0 16-3584 chrM 641 0 0 0 0 0 0 0 16-3584 chrM 642 0 0 0 0 0 0 0 16-3584 chrM 643 0 0 0 0 0 0 0 16-3584 chrM 644 0 0 0 0 0 0 0 16-3584 chrM 645 0 0 0 0 0 0 0 16-3584 chrM 646 0 0 0 0 0 0 0 16-3584 chrM 647 0 0 0 0 0 0 0 16-3584 chrM 648 0 0 0 0 0 0 0 16-3584 chrM 649 0 0 0 0 0 0 0 16-3584 chrM 650 0 0 0 0 0 0 0 16-3584 chrM 651 0 0 0 0 0 0 0 16-3584 chrM 652 0 0 0 0 0 0 0 16-3584 chrM 653 0 0 0 0 0 0 0 16-3584 chrM 654 0 0 0 0 0 0 0 16-3584 chrM 655 0 0 0 0 0 0 0 16-3584 chrM 656 0 0 0 0 0 0 0 16-3584 chrM 657 0 0 0 0 0 0 0 16-3584 chrM 658 0 0 0 0 0 0 0 16-3584 chrM 659 0 0 0 0 0 0 0 16-3584 chrM 660 0 0 0 0 0 0 0 16-3584 chrM 661 0 0 0 0 0 0 0 16-3584 chrM 662 0 0 0 0 0 0 0 16-3584 chrM 663 0 0 0 0 0 0 0 16-3584 chrM 664 0 0 0 0 0 0 0 16-3584 chrM 665 0 0 0 0 0 0 0 16-3584 chrM 666 0 0 0 0 0 0 0 16-3584 chrM 667 0 0 0 0 0 0 0 16-3584 chrM 668 0 0 0 0 0 0 0 16-3584 chrM 669 0 0 0 0 0 0 0 16-3584 chrM 670 0 0 0 0 0 0 0 16-3584 chrM 671 0 0 0 0 0 0 0 16-3584 chrM 672 0 0 0 0 0 0 0 16-3584 chrM 673 0 0 0 0 0 0 0 16-3584 chrM 674 0 0 0 0 0 0 0 16-3584 chrM 675 0 0 0 0 0 0 0 16-3584 chrM 676 0 0 0 0 0 0 0 16-3584 chrM 677 0 0 0 0 0 0 0 16-3584 chrM 678 0 0 0 0 0 0 0 16-3584 chrM 679 0 0 0 0 0 0 0 16-3584 chrM 680 0 0 0 0 0 0 0 16-3584 chrM 681 0 0 0 0 0 0 0 16-3584 chrM 682 0 0 0 0 0 0 0 16-3584 chrM 683 0 0 0 0 0 0 0 16-3584 chrM 684 0 0 0 0 0 0 0 16-3584 chrM 685 0 0 0 0 0 0 0 16-3584 chrM 686 0 0 0 0 0 0 0 16-3584 chrM 687 0 0 0 0 0 0 0 16-3584 chrM 688 0 0 0 0 0 0 0 16-3584 chrM 689 0 0 0 0 0 0 0 16-3584 chrM 690 0 0 0 0 0 0 0 16-3584 chrM 691 0 0 0 0 0 0 0 16-3584 chrM 692 0 0 0 0 0 0 0 16-3584 chrM 693 0 0 0 0 0 0 0 16-3584 chrM 694 0 0 0 0 0 0 0 16-3584 chrM 695 0 0 0 0 0 0 0 16-3584 chrM 696 0 0 0 0 0 0 0 16-3584 chrM 697 0 0 0 0 0 0 0 16-3584 chrM 698 0 0 0 0 0 0 0 16-3584 chrM 699 1 0 1 0 0 0 0 16-3584 chrM 700 1 0 1 0 0 0 0 16-3584 chrM 701 1 0 1 0 0 0 0 16-3584 chrM 702 1 0 0 0 1 0 0 16-3584 chrM 703 1 1 0 0 0 0 0 16-3584 chrM 704 2 0 1 0 1 0 0 16-3584 chrM 705 2 0 1 1 0 0 0 16-3584 chrM 706 2 0 1 0 1 0 0 16-3584 chrM 707 2 0 0 1 1 0 0 16-3584 chrM 708 2 0 1 1 0 0 0 16-3584 chrM 709 2 1 0 1 0 0 0 16-3584 chrM 710 2 0 2 0 0 0 0 16-3584 chrM 711 2 0 0 2 0 0 0 16-3584 chrM 712 2 0 2 0 0 0 0 16-3584 chrM 713 2 2 0 0 0 0 0 16-3584 chrM 714 2 0 1 1 0 0 0 16-3584 chrM 715 2 1 1 0 0 0 0 16-3584 chrM 716 2 0 1 1 0 0 0 16-3584 chrM 717 2 1 0 0 1 0 0 16-3584 chrM 718 2 1 0 0 1 0 0 16-3584 chrM 719 2 1 1 0 0 0 0 16-3584 chrM 720 2 2 0 0 0 0 0 16-3584 chrM 721 2 1 0 1 0 0 0 16-3584 chrM 722 2 1 0 0 1 0 0 16-3584 chrM 723 2 1 1 0 0 0 0 16-3584 chrM 724 2 0 0 2 0 0 0 16-3584 chrM 725 2 0 1 0 1 0 0 16-3584 chrM 726 2 1 0 1 0 0 0 16-3584 chrM 727 2 0 0 1 1 0 0 16-3584 chrM 728 2 0 2 0 0 0 0 16-3584 chrM 729 2 0 0 2 0 0 0 16-3584 chrM 730 2 0 2 0 0 0 0 16-3584 chrM 731 2 0 1 0 1 0 0 16-3584 chrM 732 2 0 1 1 0 0 0 16-3584 chrM 733 2 2 0 0 0 0 0 16-3584 chrM 734 2 2 0 0 0 0 0 16-3584 chrM 735 2 0 1 0 1 0 0 16-3584 chrM 736 2 2 0 0 0 0 0 16-3584 chrM 737 2 1 1 0 0 0 0 16-3584 chrM 738 2 0 1 1 0 0 0 16-3584 chrM 739 2 0 1 0 1 0 0 16-3584 chrM 740 2 0 0 2 0 0 0 16-3584 chrM 741 2 1 0 0 1 0 0 16-3584 chrM 742 2 1 0 1 0 0 0 16-3584 chrM 743 2 1 0 1 0 0 0 16-3584 chrM 744 2 0 0 1 1 0 0 16-3584 chrM 745 2 1 1 0 0 0 0 16-3584 chrM 746 2 0 1 1 0 0 0 16-3584 chrM 747 2 0 1 1 0 0 0 16-3584 chrM 748 2 1 1 0 0 0 0 16-3584 chrM 749 2 0 0 1 1 0 0 16-3584 chrM 750 2 1 1 0 0 0 0 16-3584 chrM 751 2 1 0 1 0 0 0 16-3584 chrM 752 2 1 0 1 0 0 0 16-3584 chrM 753 2 0 1 0 1 0 0 16-3584 chrM 754 2 1 0 1 0 0 0 16-3584 chrM 755 2 1 0 0 1 0 0 16-3584 chrM 756 2 0 0 1 1 0 0 16-3584 chrM 757 2 1 0 0 1 0 0 16-3584 chrM 758 2 1 0 0 1 0 0 16-3584 chrM 759 2 0 1 0 1 0 0 16-3584 chrM 760 2 0 2 0 0 0 0 16-3584 chrM 761 2 0 1 1 0 0 0 16-3584 chrM 762 2 0 1 0 1 0 0 16-3584 chrM 763 2 0 0 1 1 0 0 16-3584 chrM 764 2 1 0 1 0 0 0 16-3584 chrM 765 2 0 1 0 1 0 0 16-3584 chrM 766 2 1 0 1 0 0 0 16-3584 chrM 767 2 0 0 0 2 0 0 16-3584 chrM 768 2 1 0 1 0 0 0 16-3584 chrM 769 2 0 2 0 0 0 0 16-3584 chrM 770 2 0 2 0 0 0 0 16-3584 chrM 771 1 1 0 0 0 0 0 16-3584 chrM 772 1 0 1 0 0 0 0 16-3584 chrM 773 1 0 1 0 0 0 0 16-3584 chrM 774 1 1 0 0 0 0 0 16-3584 chrM 775 1 0 1 0 0 0 0 16-3584 chrM 776 0 0 0 0 0 0 0 16-3584 chrM 777 0 0 0 0 0 0 0 16-3584 chrM 778 0 0 0 0 0 0 0 16-3584 chrM 779 0 0 0 0 0 0 0 16-3584 chrM 780 0 0 0 0 0 0 0 16-3584 chrM 781 0 0 0 0 0 0 0 16-3584 chrM 782 0 0 0 0 0 0 0 16-3584 chrM 783 0 0 0 0 0 0 0 16-3584 chrM 784 0 0 0 0 0 0 0 16-3584 chrM 785 0 0 0 0 0 0 0 16-3584 chrM 786 0 0 0 0 0 0 0 16-3584 chrM 787 0 0 0 0 0 0 0 16-3584 chrM 788 0 0 0 0 0 0 0 16-3584 chrM 789 0 0 0 0 0 0 0 16-3584 chrM 790 0 0 0 0 0 0 0 16-3584 chrM 791 0 0 0 0 0 0 0 16-3584 chrM 792 0 0 0 0 0 0 0 16-3584 chrM 793 0 0 0 0 0 0 0 16-3584 chrM 794 0 0 0 0 0 0 0 16-3584 chrM 795 0 0 0 0 0 0 0 16-3584 chrM 796 0 0 0 0 0 0 0 16-3584 chrM 797 0 0 0 0 0 0 0 16-3584 chrM 798 0 0 0 0 0 0 0 16-3584 chrM 799 0 0 0 0 0 0 0 16-3584 chrM 800 0 0 0 0 0 0 0 16-3584 chrM 801 0 0 0 0 0 0 0 16-3584 chrM 802 0 0 0 0 0 0 0 16-3584 chrM 803 0 0 0 0 0 0 0 16-3584 chrM 804 0 0 0 0 0 0 0 16-3584 chrM 805 0 0 0 0 0 0 0 16-3584 chrM 806 0 0 0 0 0 0 0 16-3584 chrM 807 0 0 0 0 0 0 0 16-3584 chrM 808 0 0 0 0 0 0 0 16-3584 chrM 809 0 0 0 0 0 0 0 16-3584 chrM 810 0 0 0 0 0 0 0 16-3584 chrM 811 0 0 0 0 0 0 0 16-3584 chrM 812 0 0 0 0 0 0 0 16-3584 chrM 813 0 0 0 0 0 0 0 16-3584 chrM 814 0 0 0 0 0 0 0 16-3584 chrM 815 0 0 0 0 0 0 0 16-3584 chrM 816 0 0 0 0 0 0 0 16-3584 chrM 817 0 0 0 0 0 0 0 16-3584 chrM 818 0 0 0 0 0 0 0 16-3584 chrM 819 0 0 0 0 0 0 0 16-3584 chrM 820 0 0 0 0 0 0 0 16-3584 chrM 821 0 0 0 0 0 0 0 16-3584 chrM 822 0 0 0 0 0 0 0 16-3584 chrM 823 0 0 0 0 0 0 0 16-3584 chrM 824 0 0 0 0 0 0 0 16-3584 chrM 825 0 0 0 0 0 0 0 16-3584 chrM 826 0 0 0 0 0 0 0 16-3584 chrM 827 0 0 0 0 0 0 0 16-3584 chrM 828 0 0 0 0 0 0 0 16-3584 chrM 829 0 0 0 0 0 0 0 16-3584 chrM 830 0 0 0 0 0 0 0 16-3584 chrM 831 0 0 0 0 0 0 0 16-3584 chrM 832 0 0 0 0 0 0 0 16-3584 chrM 833 0 0 0 0 0 0 0 16-3584 chrM 834 0 0 0 0 0 0 0 16-3584 chrM 835 0 0 0 0 0 0 0 16-3584 chrM 836 0 0 0 0 0 0 0 16-3584 chrM 837 0 0 0 0 0 0 0 16-3584 chrM 838 0 0 0 0 0 0 0 16-3584 chrM 839 0 0 0 0 0 0 0 16-3584 chrM 840 0 0 0 0 0 0 0 16-3584 chrM 841 0 0 0 0 0 0 0 16-3584 chrM 842 0 0 0 0 0 0 0 16-3584 chrM 843 0 0 0 0 0 0 0 16-3584 chrM 844 0 0 0 0 0 0 0 16-3584 chrM 845 0 0 0 0 0 0 0 16-3584 chrM 846 0 0 0 0 0 0 0 16-3584 chrM 847 0 0 0 0 0 0 0 16-3584 chrM 848 0 0 0 0 0 0 0 16-3584 chrM 849 0 0 0 0 0 0 0 16-3584 chrM 850 0 0 0 0 0 0 0 16-3584 chrM 851 0 0 0 0 0 0 0 16-3584 chrM 852 0 0 0 0 0 0 0 16-3584 chrM 853 0 0 0 0 0 0 0 16-3584 chrM 854 0 0 0 0 0 0 0 16-3584 chrM 855 0 0 0 0 0 0 0 16-3584 chrM 856 0 0 0 0 0 0 0 16-3584 chrM 857 0 0 0 0 0 0 0 16-3584 chrM 858 0 0 0 0 0 0 0 16-3584 chrM 859 0 0 0 0 0 0 0 16-3584 chrM 860 0 0 0 0 0 0 0 16-3584 chrM 861 0 0 0 0 0 0 0 16-3584 chrM 862 0 0 0 0 0 0 0 16-3584 chrM 863 0 0 0 0 0 0 0 16-3584 chrM 864 0 0 0 0 0 0 0 16-3584 chrM 865 0 0 0 0 0 0 0 16-3584 chrM 866 0 0 0 0 0 0 0 16-3584 chrM 867 0 0 0 0 0 0 0 16-3584 chrM 868 0 0 0 0 0 0 0 16-3584 chrM 869 0 0 0 0 0 0 0 16-3584 chrM 870 0 0 0 0 0 0 0 16-3584 chrM 871 0 0 0 0 0 0 0 16-3584 chrM 872 0 0 0 0 0 0 0 16-3584 chrM 873 0 0 0 0 0 0 0 16-3584 chrM 874 0 0 0 0 0 0 0 16-3584 chrM 875 0 0 0 0 0 0 0 16-3584 chrM 876 0 0 0 0 0 0 0 16-3584 chrM 877 0 0 0 0 0 0 0 16-3584 chrM 878 0 0 0 0 0 0 0 16-3584 chrM 879 0 0 0 0 0 0 0 16-3584 chrM 880 0 0 0 0 0 0 0 16-3584 chrM 881 0 0 0 0 0 0 0 16-3584 chrM 882 0 0 0 0 0 0 0 16-3584 chrM 883 0 0 0 0 0 0 0 16-3584 chrM 884 0 0 0 0 0 0 0 16-3584 chrM 885 0 0 0 0 0 0 0 16-3584 chrM 886 0 0 0 0 0 0 0 16-3584 chrM 887 0 0 0 0 0 0 0 16-3584 chrM 888 0 0 0 0 0 0 0 16-3584 chrM 889 0 0 0 0 0 0 0 16-3584 chrM 890 0 0 0 0 0 0 0 16-3584 chrM 891 0 0 0 0 0 0 0 16-3584 chrM 892 0 0 0 0 0 0 0 16-3584 chrM 893 0 0 0 0 0 0 0 16-3584 chrM 894 0 0 0 0 0 0 0 16-3584 chrM 895 0 0 0 0 0 0 0 16-3584 chrM 896 0 0 0 0 0 0 0 16-3584 chrM 897 0 0 0 0 0 0 0 16-3584 chrM 898 0 0 0 0 0 0 0 16-3584 chrM 899 0 0 0 0 0 0 0 16-3584 chrM 900 0 0 0 0 0 0 0 16-3584 chrM 901 0 0 0 0 0 0 0 16-3584 chrM 902 0 0 0 0 0 0 0 16-3584 chrM 903 0 0 0 0 0 0 0 16-3584 chrM 904 0 0 0 0 0 0 0 16-3584 chrM 905 0 0 0 0 0 0 0 16-3584 chrM 906 0 0 0 0 0 0 0 16-3584 chrM 907 0 0 0 0 0 0 0 16-3584 chrM 908 0 0 0 0 0 0 0 16-3584 chrM 909 0 0 0 0 0 0 0 16-3584 chrM 910 0 0 0 0 0 0 0 16-3584 chrM 911 0 0 0 0 0 0 0 16-3584 chrM 912 0 0 0 0 0 0 0 16-3584 chrM 913 0 0 0 0 0 0 0 16-3584 chrM 914 0 0 0 0 0 0 0 16-3584 chrM 915 0 0 0 0 0 0 0 16-3584 chrM 916 0 0 0 0 0 0 0 16-3584 chrM 917 0 0 0 0 0 0 0 16-3584 chrM 918 0 0 0 0 0 0 0 16-3584 chrM 919 0 0 0 0 0 0 0 16-3584 chrM 920 0 0 0 0 0 0 0 16-3584 chrM 921 0 0 0 0 0 0 0 16-3584 chrM 922 0 0 0 0 0 0 0 16-3584 chrM 923 0 0 0 0 0 0 0 16-3584 chrM 924 0 0 0 0 0 0 0 16-3584 chrM 925 0 0 0 0 0 0 0 16-3584 chrM 926 0 0 0 0 0 0 0 16-3584 chrM 927 0 0 0 0 0 0 0 16-3584 chrM 928 0 0 0 0 0 0 0 16-3584 chrM 929 0 0 0 0 0 0 0 16-3584 chrM 930 0 0 0 0 0 0 0 16-3584 chrM 931 0 0 0 0 0 0 0 16-3584 chrM 932 0 0 0 0 0 0 0 16-3584 chrM 933 0 0 0 0 0 0 0 16-3584 chrM 934 0 0 0 0 0 0 0 16-3584 chrM 935 0 0 0 0 0 0 0 16-3584 chrM 936 0 0 0 0 0 0 0 16-3584 chrM 937 0 0 0 0 0 0 0 16-3584 chrM 938 0 0 0 0 0 0 0 16-3584 chrM 939 0 0 0 0 0 0 0 16-3584 chrM 940 0 0 0 0 0 0 0 16-3584 chrM 941 0 0 0 0 0 0 0 16-3584 chrM 942 0 0 0 0 0 0 0 16-3584 chrM 943 0 0 0 0 0 0 0 16-3584 chrM 944 0 0 0 0 0 0 0 16-3584 chrM 945 0 0 0 0 0 0 0 16-3584 chrM 946 0 0 0 0 0 0 0 16-3584 chrM 947 0 0 0 0 0 0 0 16-3584 chrM 948 0 0 0 0 0 0 0 16-3584 chrM 949 0 0 0 0 0 0 0 16-3584 chrM 950 0 0 0 0 0 0 0 16-3584 chrM 951 0 0 0 0 0 0 0 16-3584 chrM 952 0 0 0 0 0 0 0 16-3584 chrM 953 0 0 0 0 0 0 0 16-3584 chrM 954 0 0 0 0 0 0 0 16-3584 chrM 955 0 0 0 0 0 0 0 16-3584 chrM 956 0 0 0 0 0 0 0 16-3584 chrM 957 0 0 0 0 0 0 0 16-3584 chrM 958 0 0 0 0 0 0 0 16-3584 chrM 959 0 0 0 0 0 0 0 16-3584 chrM 960 0 0 0 0 0 0 0 16-3584 chrM 961 0 0 0 0 0 0 0 16-3584 chrM 962 0 0 0 0 0 0 0 16-3584 chrM 963 0 0 0 0 0 0 0 16-3584 chrM 964 0 0 0 0 0 0 0 16-3584 chrM 965 0 0 0 0 0 0 0 16-3584 chrM 966 0 0 0 0 0 0 0 16-3584 chrM 967 0 0 0 0 0 0 0 16-3584 chrM 968 0 0 0 0 0 0 0 16-3584 chrM 969 0 0 0 0 0 0 0 16-3584 chrM 970 0 0 0 0 0 0 0 16-3584 chrM 971 0 0 0 0 0 0 0 16-3584 chrM 972 0 0 0 0 0 0 0 16-3584 chrM 973 0 0 0 0 0 0 0 16-3584 chrM 974 0 0 0 0 0 0 0 16-3584 chrM 975 0 0 0 0 0 0 0 16-3584 chrM 976 0 0 0 0 0 0 0 16-3584 chrM 977 0 0 0 0 0 0 0 16-3584 chrM 978 0 0 0 0 0 0 0 16-3584 chrM 979 0 0 0 0 0 0 0 16-3584 chrM 980 0 0 0 0 0 0 0 16-3584 chrM 981 0 0 0 0 0 0 0 16-3584 chrM 982 0 0 0 0 0 0 0 16-3584 chrM 983 0 0 0 0 0 0 0 16-3584 chrM 984 0 0 0 0 0 0 0 16-3584 chrM 985 0 0 0 0 0 0 0 16-3584 chrM 986 0 0 0 0 0 0 0 16-3584 chrM 987 0 0 0 0 0 0 0 16-3584 chrM 988 0 0 0 0 0 0 0 16-3584 chrM 989 0 0 0 0 0 0 0 16-3584 chrM 990 0 0 0 0 0 0 0 16-3584 chrM 991 0 0 0 0 0 0 0 16-3584 chrM 992 0 0 0 0 0 0 0 16-3584 chrM 993 0 0 0 0 0 0 0 16-3584 chrM 994 0 0 0 0 0 0 0 16-3584 chrM 995 0 0 0 0 0 0 0 16-3584 chrM 996 0 0 0 0 0 0 0 16-3584 chrM 997 0 0 0 0 0 0 0 16-3584 chrM 998 0 0 0 0 0 0 0 16-3584 chrM 999 0 0 0 0 0 0 0 16-3584 chrM 1000 0 0 0 0 0 0 0 16-3584 chrM 1001 0 0 0 0 0 0 0 16-3584 chrM 1002 0 0 0 0 0 0 0 16-3584 chrM 1003 0 0 0 0 0 0 0 16-3584 chrM 1004 0 0 0 0 0 0 0 16-3584 chrM 1005 0 0 0 0 0 0 0 16-3584 chrM 1006 0 0 0 0 0 0 0 16-3584 chrM 1007 0 0 0 0 0 0 0 16-3584 chrM 1008 0 0 0 0 0 0 0 16-3584 chrM 1009 0 0 0 0 0 0 0 16-3584 chrM 1010 0 0 0 0 0 0 0 16-3584 chrM 1011 0 0 0 0 0 0 0 16-3584 chrM 1012 0 0 0 0 0 0 0 16-3584 chrM 1013 0 0 0 0 0 0 0 16-3584 chrM 1014 0 0 0 0 0 0 0 16-3584 chrM 1015 0 0 0 0 0 0 0 16-3584 chrM 1016 0 0 0 0 0 0 0 16-3584 chrM 1017 0 0 0 0 0 0 0 16-3584 chrM 1018 0 0 0 0 0 0 0 16-3584 chrM 1019 0 0 0 0 0 0 0 16-3584 chrM 1020 0 0 0 0 0 0 0 16-3584 chrM 1021 0 0 0 0 0 0 0 16-3584 chrM 1022 0 0 0 0 0 0 0 16-3584 chrM 1023 0 0 0 0 0 0 0 16-3584 chrM 1024 0 0 0 0 0 0 0 16-3584 chrM 1025 0 0 0 0 0 0 0 16-3584 chrM 1026 0 0 0 0 0 0 0 16-3584 chrM 1027 0 0 0 0 0 0 0 16-3584 chrM 1028 0 0 0 0 0 0 0 16-3584 chrM 1029 0 0 0 0 0 0 0 16-3584 chrM 1030 0 0 0 0 0 0 0 16-3584 chrM 1031 0 0 0 0 0 0 0 16-3584 chrM 1032 0 0 0 0 0 0 0 16-3584 chrM 1033 0 0 0 0 0 0 0 16-3584 chrM 1034 0 0 0 0 0 0 0 16-3584 chrM 1035 0 0 0 0 0 0 0 16-3584 chrM 1036 0 0 0 0 0 0 0 16-3584 chrM 1037 0 0 0 0 0 0 0 16-3584 chrM 1038 0 0 0 0 0 0 0 16-3584 chrM 1039 0 0 0 0 0 0 0 16-3584 chrM 1040 0 0 0 0 0 0 0 16-3584 chrM 1041 0 0 0 0 0 0 0 16-3584 chrM 1042 0 0 0 0 0 0 0 16-3584 chrM 1043 0 0 0 0 0 0 0 16-3584 chrM 1044 0 0 0 0 0 0 0 16-3584 chrM 1045 0 0 0 0 0 0 0 16-3584 chrM 1046 0 0 0 0 0 0 0 16-3584 chrM 1047 0 0 0 0 0 0 0 16-3584 chrM 1048 0 0 0 0 0 0 0 16-3584 chrM 1049 0 0 0 0 0 0 0 16-3584 chrM 1050 0 0 0 0 0 0 0 16-3584 chrM 1051 0 0 0 0 0 0 0 16-3584 chrM 1052 0 0 0 0 0 0 0 16-3584 chrM 1053 0 0 0 0 0 0 0 16-3584 chrM 1054 0 0 0 0 0 0 0 16-3584 chrM 1055 0 0 0 0 0 0 0 16-3584 chrM 1056 0 0 0 0 0 0 0 16-3584 chrM 1057 0 0 0 0 0 0 0 16-3584 chrM 1058 0 0 0 0 0 0 0 16-3584 chrM 1059 0 0 0 0 0 0 0 16-3584 chrM 1060 0 0 0 0 0 0 0 16-3584 chrM 1061 0 0 0 0 0 0 0 16-3584 chrM 1062 0 0 0 0 0 0 0 16-3584 chrM 1063 0 0 0 0 0 0 0 16-3584 chrM 1064 0 0 0 0 0 0 0 16-3584 chrM 1065 0 0 0 0 0 0 0 16-3584 chrM 1066 0 0 0 0 0 0 0 16-3584 chrM 1067 0 0 0 0 0 0 0 16-3584 chrM 1068 0 0 0 0 0 0 0 16-3584 chrM 1069 0 0 0 0 0 0 0 16-3584 chrM 1070 0 0 0 0 0 0 0 16-3584 chrM 1071 0 0 0 0 0 0 0 16-3584 chrM 1072 0 0 0 0 0 0 0 16-3584 chrM 1073 0 0 0 0 0 0 0 16-3584 chrM 1074 0 0 0 0 0 0 0 16-3584 chrM 1075 0 0 0 0 0 0 0 16-3584 chrM 1076 0 0 0 0 0 0 0 16-3584 chrM 1077 0 0 0 0 0 0 0 16-3584 chrM 1078 0 0 0 0 0 0 0 16-3584 chrM 1079 0 0 0 0 0 0 0 16-3584 chrM 1080 0 0 0 0 0 0 0 16-3584 chrM 1081 0 0 0 0 0 0 0 16-3584 chrM 1082 0 0 0 0 0 0 0 16-3584 chrM 1083 0 0 0 0 0 0 0 16-3584 chrM 1084 0 0 0 0 0 0 0 16-3584 chrM 1085 0 0 0 0 0 0 0 16-3584 chrM 1086 0 0 0 0 0 0 0 16-3584 chrM 1087 0 0 0 0 0 0 0 16-3584 chrM 1088 0 0 0 0 0 0 0 16-3584 chrM 1089 0 0 0 0 0 0 0 16-3584 chrM 1090 0 0 0 0 0 0 0 16-3584 chrM 1091 0 0 0 0 0 0 0 16-3584 chrM 1092 0 0 0 0 0 0 0 16-3584 chrM 1093 0 0 0 0 0 0 0 16-3584 chrM 1094 0 0 0 0 0 0 0 16-3584 chrM 1095 0 0 0 0 0 0 0 16-3584 chrM 1096 0 0 0 0 0 0 0 16-3584 chrM 1097 0 0 0 0 0 0 0 16-3584 chrM 1098 0 0 0 0 0 0 0 16-3584 chrM 1099 0 0 0 0 0 0 0 16-3584 chrM 1100 0 0 0 0 0 0 0 16-3584 chrM 1101 0 0 0 0 0 0 0 16-3584 chrM 1102 0 0 0 0 0 0 0 16-3584 chrM 1103 0 0 0 0 0 0 0 16-3584 chrM 1104 0 0 0 0 0 0 0 16-3584 chrM 1105 0 0 0 0 0 0 0 16-3584 chrM 1106 0 0 0 0 0 0 0 16-3584 chrM 1107 0 0 0 0 0 0 0 16-3584 chrM 1108 0 0 0 0 0 0 0 16-3584 chrM 1109 0 0 0 0 0 0 0 16-3584 chrM 1110 0 0 0 0 0 0 0 16-3584 chrM 1111 0 0 0 0 0 0 0 16-3584 chrM 1112 0 0 0 0 0 0 0 16-3584 chrM 1113 0 0 0 0 0 0 0 16-3584 chrM 1114 0 0 0 0 0 0 0 16-3584 chrM 1115 0 0 0 0 0 0 0 16-3584 chrM 1116 0 0 0 0 0 0 0 16-3584 chrM 1117 0 0 0 0 0 0 0 16-3584 chrM 1118 0 0 0 0 0 0 0 16-3584 chrM 1119 0 0 0 0 0 0 0 16-3584 chrM 1120 0 0 0 0 0 0 0 16-3584 chrM 1121 0 0 0 0 0 0 0 16-3584 chrM 1122 0 0 0 0 0 0 0 16-3584 chrM 1123 0 0 0 0 0 0 0 16-3584 chrM 1124 0 0 0 0 0 0 0 16-3584 chrM 1125 0 0 0 0 0 0 0 16-3584 chrM 1126 0 0 0 0 0 0 0 16-3584 chrM 1127 0 0 0 0 0 0 0 16-3584 chrM 1128 0 0 0 0 0 0 0 16-3584 chrM 1129 0 0 0 0 0 0 0 16-3584 chrM 1130 0 0 0 0 0 0 0 16-3584 chrM 1131 0 0 0 0 0 0 0 16-3584 chrM 1132 0 0 0 0 0 0 0 16-3584 chrM 1133 0 0 0 0 0 0 0 16-3584 chrM 1134 0 0 0 0 0 0 0 16-3584 chrM 1135 0 0 0 0 0 0 0 16-3584 chrM 1136 0 0 0 0 0 0 0 16-3584 chrM 1137 0 0 0 0 0 0 0 16-3584 chrM 1138 0 0 0 0 0 0 0 16-3584 chrM 1139 0 0 0 0 0 0 0 16-3584 chrM 1140 0 0 0 0 0 0 0 16-3584 chrM 1141 0 0 0 0 0 0 0 16-3584 chrM 1142 0 0 0 0 0 0 0 16-3584 chrM 1143 0 0 0 0 0 0 0 16-3584 chrM 1144 0 0 0 0 0 0 0 16-3584 chrM 1145 0 0 0 0 0 0 0 16-3584 chrM 1146 0 0 0 0 0 0 0 16-3584 chrM 1147 0 0 0 0 0 0 0 16-3584 chrM 1148 0 0 0 0 0 0 0 16-3584 chrM 1149 0 0 0 0 0 0 0 16-3584 chrM 1150 0 0 0 0 0 0 0 16-3584 chrM 1151 0 0 0 0 0 0 0 16-3584 chrM 1152 0 0 0 0 0 0 0 16-3584 chrM 1153 0 0 0 0 0 0 0 16-3584 chrM 1154 0 0 0 0 0 0 0 16-3584 chrM 1155 0 0 0 0 0 0 0 16-3584 chrM 1156 0 0 0 0 0 0 0 16-3584 chrM 1157 0 0 0 0 0 0 0 16-3584 chrM 1158 0 0 0 0 0 0 0 16-3584 chrM 1159 0 0 0 0 0 0 0 16-3584 chrM 1160 0 0 0 0 0 0 0 16-3584 chrM 1161 0 0 0 0 0 0 0 16-3584 chrM 1162 0 0 0 0 0 0 0 16-3584 chrM 1163 0 0 0 0 0 0 0 16-3584 chrM 1164 0 0 0 0 0 0 0 16-3584 chrM 1165 0 0 0 0 0 0 0 16-3584 chrM 1166 0 0 0 0 0 0 0 16-3584 chrM 1167 0 0 0 0 0 0 0 16-3584 chrM 1168 0 0 0 0 0 0 0 16-3584 chrM 1169 0 0 0 0 0 0 0 16-3584 chrM 1170 0 0 0 0 0 0 0 16-3584 chrM 1171 0 0 0 0 0 0 0 16-3584 chrM 1172 0 0 0 0 0 0 0 16-3584 chrM 1173 0 0 0 0 0 0 0 16-3584 chrM 1174 0 0 0 0 0 0 0 16-3584 chrM 1175 0 0 0 0 0 0 0 16-3584 chrM 1176 0 0 0 0 0 0 0 16-3584 chrM 1177 0 0 0 0 0 0 0 16-3584 chrM 1178 0 0 0 0 0 0 0 16-3584 chrM 1179 0 0 0 0 0 0 0 16-3584 chrM 1180 0 0 0 0 0 0 0 16-3584 chrM 1181 0 0 0 0 0 0 0 16-3584 chrM 1182 0 0 0 0 0 0 0 16-3584 chrM 1183 0 0 0 0 0 0 0 16-3584 chrM 1184 0 0 0 0 0 0 0 16-3584 chrM 1185 0 0 0 0 0 0 0 16-3584 chrM 1186 0 0 0 0 0 0 0 16-3584 chrM 1187 0 0 0 0 0 0 0 16-3584 chrM 1188 0 0 0 0 0 0 0 16-3584 chrM 1189 0 0 0 0 0 0 0 16-3584 chrM 1190 0 0 0 0 0 0 0 16-3584 chrM 1191 0 0 0 0 0 0 0 16-3584 chrM 1192 0 0 0 0 0 0 0 16-3584 chrM 1193 0 0 0 0 0 0 0 16-3584 chrM 1194 0 0 0 0 0 0 0 16-3584 chrM 1195 0 0 0 0 0 0 0 16-3584 chrM 1196 0 0 0 0 0 0 0 16-3584 chrM 1197 0 0 0 0 0 0 0 16-3584 chrM 1198 0 0 0 0 0 0 0 16-3584 chrM 1199 0 0 0 0 0 0 0 16-3584 chrM 1200 0 0 0 0 0 0 0 16-3584 chrM 1201 0 0 0 0 0 0 0 16-3584 chrM 1202 0 0 0 0 0 0 0 16-3584 chrM 1203 0 0 0 0 0 0 0 16-3584 chrM 1204 0 0 0 0 0 0 0 16-3584 chrM 1205 0 0 0 0 0 0 0 16-3584 chrM 1206 0 0 0 0 0 0 0 16-3584 chrM 1207 0 0 0 0 0 0 0 16-3584 chrM 1208 0 0 0 0 0 0 0 16-3584 chrM 1209 0 0 0 0 0 0 0 16-3584 chrM 1210 0 0 0 0 0 0 0 16-3584 chrM 1211 0 0 0 0 0 0 0 16-3584 chrM 1212 0 0 0 0 0 0 0 16-3584 chrM 1213 0 0 0 0 0 0 0 16-3584 chrM 1214 0 0 0 0 0 0 0 16-3584 chrM 1215 0 0 0 0 0 0 0 16-3584 chrM 1216 0 0 0 0 0 0 0 16-3584 chrM 1217 0 0 0 0 0 0 0 16-3584 chrM 1218 0 0 0 0 0 0 0 16-3584 chrM 1219 0 0 0 0 0 0 0 16-3584 chrM 1220 0 0 0 0 0 0 0 16-3584 chrM 1221 0 0 0 0 0 0 0 16-3584 chrM 1222 0 0 0 0 0 0 0 16-3584 chrM 1223 0 0 0 0 0 0 0 16-3584 chrM 1224 0 0 0 0 0 0 0 16-3584 chrM 1225 0 0 0 0 0 0 0 16-3584 chrM 1226 0 0 0 0 0 0 0 16-3584 chrM 1227 0 0 0 0 0 0 0 16-3584 chrM 1228 0 0 0 0 0 0 0 16-3584 chrM 1229 0 0 0 0 0 0 0 16-3584 chrM 1230 0 0 0 0 0 0 0 16-3584 chrM 1231 0 0 0 0 0 0 0 16-3584 chrM 1232 0 0 0 0 0 0 0 16-3584 chrM 1233 0 0 0 0 0 0 0 16-3584 chrM 1234 0 0 0 0 0 0 0 16-3584 chrM 1235 0 0 0 0 0 0 0 16-3584 chrM 1236 0 0 0 0 0 0 0 16-3584 chrM 1237 0 0 0 0 0 0 0 16-3584 chrM 1238 0 0 0 0 0 0 0 16-3584 chrM 1239 0 0 0 0 0 0 0 16-3584 chrM 1240 0 0 0 0 0 0 0 16-3584 chrM 1241 0 0 0 0 0 0 0 16-3584 chrM 1242 0 0 0 0 0 0 0 16-3584 chrM 1243 0 0 0 0 0 0 0 16-3584 chrM 1244 0 0 0 0 0 0 0 16-3584 chrM 1245 0 0 0 0 0 0 0 16-3584 chrM 1246 0 0 0 0 0 0 0 16-3584 chrM 1247 0 0 0 0 0 0 0 16-3584 chrM 1248 0 0 0 0 0 0 0 16-3584 chrM 1249 0 0 0 0 0 0 0 16-3584 chrM 1250 0 0 0 0 0 0 0 16-3584 chrM 1251 0 0 0 0 0 0 0 16-3584 chrM 1252 0 0 0 0 0 0 0 16-3584 chrM 1253 0 0 0 0 0 0 0 16-3584 chrM 1254 0 0 0 0 0 0 0 16-3584 chrM 1255 0 0 0 0 0 0 0 16-3584 chrM 1256 0 0 0 0 0 0 0 16-3584 chrM 1257 0 0 0 0 0 0 0 16-3584 chrM 1258 0 0 0 0 0 0 0 16-3584 chrM 1259 0 0 0 0 0 0 0 16-3584 chrM 1260 0 0 0 0 0 0 0 16-3584 chrM 1261 0 0 0 0 0 0 0 16-3584 chrM 1262 0 0 0 0 0 0 0 16-3584 chrM 1263 0 0 0 0 0 0 0 16-3584 chrM 1264 0 0 0 0 0 0 0 16-3584 chrM 1265 0 0 0 0 0 0 0 16-3584 chrM 1266 0 0 0 0 0 0 0 16-3584 chrM 1267 0 0 0 0 0 0 0 16-3584 chrM 1268 0 0 0 0 0 0 0 16-3584 chrM 1269 0 0 0 0 0 0 0 16-3584 chrM 1270 0 0 0 0 0 0 0 16-3584 chrM 1271 0 0 0 0 0 0 0 16-3584 chrM 1272 0 0 0 0 0 0 0 16-3584 chrM 1273 0 0 0 0 0 0 0 16-3584 chrM 1274 0 0 0 0 0 0 0 16-3584 chrM 1275 0 0 0 0 0 0 0 16-3584 chrM 1276 0 0 0 0 0 0 0 16-3584 chrM 1277 0 0 0 0 0 0 0 16-3584 chrM 1278 0 0 0 0 0 0 0 16-3584 chrM 1279 0 0 0 0 0 0 0 16-3584 chrM 1280 0 0 0 0 0 0 0 16-3584 chrM 1281 0 0 0 0 0 0 0 16-3584 chrM 1282 0 0 0 0 0 0 0 16-3584 chrM 1283 0 0 0 0 0 0 0 16-3584 chrM 1284 0 0 0 0 0 0 0 16-3584 chrM 1285 0 0 0 0 0 0 0 16-3584 chrM 1286 0 0 0 0 0 0 0 16-3584 chrM 1287 0 0 0 0 0 0 0 16-3584 chrM 1288 0 0 0 0 0 0 0 16-3584 chrM 1289 0 0 0 0 0 0 0 16-3584 chrM 1290 0 0 0 0 0 0 0 16-3584 chrM 1291 0 0 0 0 0 0 0 16-3584 chrM 1292 0 0 0 0 0 0 0 16-3584 chrM 1293 0 0 0 0 0 0 0 16-3584 chrM 1294 0 0 0 0 0 0 0 16-3584 chrM 1295 0 0 0 0 0 0 0 16-3584 chrM 1296 0 0 0 0 0 0 0 16-3584 chrM 1297 0 0 0 0 0 0 0 16-3584 chrM 1298 0 0 0 0 0 0 0 16-3584 chrM 1299 0 0 0 0 0 0 0 16-3584 chrM 1300 0 0 0 0 0 0 0 16-3584 chrM 1301 0 0 0 0 0 0 0 16-3584 chrM 1302 0 0 0 0 0 0 0 16-3584 chrM 1303 0 0 0 0 0 0 0 16-3584 chrM 1304 0 0 0 0 0 0 0 16-3584 chrM 1305 0 0 0 0 0 0 0 16-3584 chrM 1306 0 0 0 0 0 0 0 16-3584 chrM 1307 0 0 0 0 0 0 0 16-3584 chrM 1308 0 0 0 0 0 0 0 16-3584 chrM 1309 0 0 0 0 0 0 0 16-3584 chrM 1310 0 0 0 0 0 0 0 16-3584 chrM 1311 0 0 0 0 0 0 0 16-3584 chrM 1312 0 0 0 0 0 0 0 16-3584 chrM 1313 0 0 0 0 0 0 0 16-3584 chrM 1314 0 0 0 0 0 0 0 16-3584 chrM 1315 0 0 0 0 0 0 0 16-3584 chrM 1316 0 0 0 0 0 0 0 16-3584 chrM 1317 0 0 0 0 0 0 0 16-3584 chrM 1318 0 0 0 0 0 0 0 16-3584 chrM 1319 0 0 0 0 0 0 0 16-3584 chrM 1320 0 0 0 0 0 0 0 16-3584 chrM 1321 0 0 0 0 0 0 0 16-3584 chrM 1322 0 0 0 0 0 0 0 16-3584 chrM 1323 0 0 0 0 0 0 0 16-3584 chrM 1324 0 0 0 0 0 0 0 16-3584 chrM 1325 0 0 0 0 0 0 0 16-3584 chrM 1326 0 0 0 0 0 0 0 16-3584 chrM 1327 0 0 0 0 0 0 0 16-3584 chrM 1328 0 0 0 0 0 0 0 16-3584 chrM 1329 0 0 0 0 0 0 0 16-3584 chrM 1330 0 0 0 0 0 0 0 16-3584 chrM 1331 0 0 0 0 0 0 0 16-3584 chrM 1332 0 0 0 0 0 0 0 16-3584 chrM 1333 0 0 0 0 0 0 0 16-3584 chrM 1334 0 0 0 0 0 0 0 16-3584 chrM 1335 0 0 0 0 0 0 0 16-3584 chrM 1336 0 0 0 0 0 0 0 16-3584 chrM 1337 0 0 0 0 0 0 0 16-3584 chrM 1338 0 0 0 0 0 0 0 16-3584 chrM 1339 0 0 0 0 0 0 0 16-3584 chrM 1340 0 0 0 0 0 0 0 16-3584 chrM 1341 0 0 0 0 0 0 0 16-3584 chrM 1342 0 0 0 0 0 0 0 16-3584 chrM 1343 0 0 0 0 0 0 0 16-3584 chrM 1344 0 0 0 0 0 0 0 16-3584 chrM 1345 0 0 0 0 0 0 0 16-3584 chrM 1346 0 0 0 0 0 0 0 16-3584 chrM 1347 0 0 0 0 0 0 0 16-3584 chrM 1348 0 0 0 0 0 0 0 16-3584 chrM 1349 0 0 0 0 0 0 0 16-3584 chrM 1350 0 0 0 0 0 0 0 16-3584 chrM 1351 0 0 0 0 0 0 0 16-3584 chrM 1352 0 0 0 0 0 0 0 16-3584 chrM 1353 0 0 0 0 0 0 0 16-3584 chrM 1354 0 0 0 0 0 0 0 16-3584 chrM 1355 0 0 0 0 0 0 0 16-3584 chrM 1356 0 0 0 0 0 0 0 16-3584 chrM 1357 0 0 0 0 0 0 0 16-3584 chrM 1358 0 0 0 0 0 0 0 16-3584 chrM 1359 0 0 0 0 0 0 0 16-3584 chrM 1360 0 0 0 0 0 0 0 16-3584 chrM 1361 0 0 0 0 0 0 0 16-3584 chrM 1362 0 0 0 0 0 0 0 16-3584 chrM 1363 0 0 0 0 0 0 0 16-3584 chrM 1364 0 0 0 0 0 0 0 16-3584 chrM 1365 0 0 0 0 0 0 0 16-3584 chrM 1366 0 0 0 0 0 0 0 16-3584 chrM 1367 0 0 0 0 0 0 0 16-3584 chrM 1368 0 0 0 0 0 0 0 16-3584 chrM 1369 0 0 0 0 0 0 0 16-3584 chrM 1370 0 0 0 0 0 0 0 16-3584 chrM 1371 0 0 0 0 0 0 0 16-3584 chrM 1372 0 0 0 0 0 0 0 16-3584 chrM 1373 0 0 0 0 0 0 0 16-3584 chrM 1374 0 0 0 0 0 0 0 16-3584 chrM 1375 0 0 0 0 0 0 0 16-3584 chrM 1376 0 0 0 0 0 0 0 16-3584 chrM 1377 0 0 0 0 0 0 0 16-3584 chrM 1378 0 0 0 0 0 0 0 16-3584 chrM 1379 0 0 0 0 0 0 0 16-3584 chrM 1380 0 0 0 0 0 0 0 16-3584 chrM 1381 0 0 0 0 0 0 0 16-3584 chrM 1382 0 0 0 0 0 0 0 16-3584 chrM 1383 0 0 0 0 0 0 0 16-3584 chrM 1384 0 0 0 0 0 0 0 16-3584 chrM 1385 0 0 0 0 0 0 0 16-3584 chrM 1386 0 0 0 0 0 0 0 16-3584 chrM 1387 0 0 0 0 0 0 0 16-3584 chrM 1388 0 0 0 0 0 0 0 16-3584 chrM 1389 0 0 0 0 0 0 0 16-3584 chrM 1390 0 0 0 0 0 0 0 16-3584 chrM 1391 0 0 0 0 0 0 0 16-3584 chrM 1392 0 0 0 0 0 0 0 16-3584 chrM 1393 0 0 0 0 0 0 0 16-3584 chrM 1394 0 0 0 0 0 0 0 16-3584 chrM 1395 0 0 0 0 0 0 0 16-3584 chrM 1396 0 0 0 0 0 0 0 16-3584 chrM 1397 0 0 0 0 0 0 0 16-3584 chrM 1398 0 0 0 0 0 0 0 16-3584 chrM 1399 0 0 0 0 0 0 0 16-3584 chrM 1400 0 0 0 0 0 0 0 16-3584 chrM 1401 0 0 0 0 0 0 0 16-3584 chrM 1402 0 0 0 0 0 0 0 16-3584 chrM 1403 0 0 0 0 0 0 0 16-3584 chrM 1404 0 0 0 0 0 0 0 16-3584 chrM 1405 0 0 0 0 0 0 0 16-3584 chrM 1406 0 0 0 0 0 0 0 16-3584 chrM 1407 0 0 0 0 0 0 0 16-3584 chrM 1408 0 0 0 0 0 0 0 16-3584 chrM 1409 0 0 0 0 0 0 0 16-3584 chrM 1410 0 0 0 0 0 0 0 16-3584 chrM 1411 0 0 0 0 0 0 0 16-3584 chrM 1412 0 0 0 0 0 0 0 16-3584 chrM 1413 0 0 0 0 0 0 0 16-3584 chrM 1414 0 0 0 0 0 0 0 16-3584 chrM 1415 0 0 0 0 0 0 0 16-3584 chrM 1416 0 0 0 0 0 0 0 16-3584 chrM 1417 0 0 0 0 0 0 0 16-3584 chrM 1418 0 0 0 0 0 0 0 16-3584 chrM 1419 0 0 0 0 0 0 0 16-3584 chrM 1420 0 0 0 0 0 0 0 16-3584 chrM 1421 0 0 0 0 0 0 0 16-3584 chrM 1422 0 0 0 0 0 0 0 16-3584 chrM 1423 0 0 0 0 0 0 0 16-3584 chrM 1424 0 0 0 0 0 0 0 16-3584 chrM 1425 0 0 0 0 0 0 0 16-3584 chrM 1426 0 0 0 0 0 0 0 16-3584 chrM 1427 0 0 0 0 0 0 0 16-3584 chrM 1428 0 0 0 0 0 0 0 16-3584 chrM 1429 0 0 0 0 0 0 0 16-3584 chrM 1430 0 0 0 0 0 0 0 16-3584 chrM 1431 0 0 0 0 0 0 0 16-3584 chrM 1432 0 0 0 0 0 0 0 16-3584 chrM 1433 0 0 0 0 0 0 0 16-3584 chrM 1434 0 0 0 0 0 0 0 16-3584 chrM 1435 0 0 0 0 0 0 0 16-3584 chrM 1436 0 0 0 0 0 0 0 16-3584 chrM 1437 0 0 0 0 0 0 0 16-3584 chrM 1438 0 0 0 0 0 0 0 16-3584 chrM 1439 0 0 0 0 0 0 0 16-3584 chrM 1440 0 0 0 0 0 0 0 16-3584 chrM 1441 0 0 0 0 0 0 0 16-3584 chrM 1442 0 0 0 0 0 0 0 16-3584 chrM 1443 0 0 0 0 0 0 0 16-3584 chrM 1444 0 0 0 0 0 0 0 16-3584 chrM 1445 0 0 0 0 0 0 0 16-3584 chrM 1446 0 0 0 0 0 0 0 16-3584 chrM 1447 0 0 0 0 0 0 0 16-3584 chrM 1448 0 0 0 0 0 0 0 16-3584 chrM 1449 0 0 0 0 0 0 0 16-3584 chrM 1450 0 0 0 0 0 0 0 16-3584 chrM 1451 0 0 0 0 0 0 0 16-3584 chrM 1452 0 0 0 0 0 0 0 16-3584 chrM 1453 0 0 0 0 0 0 0 16-3584 chrM 1454 0 0 0 0 0 0 0 16-3584 chrM 1455 0 0 0 0 0 0 0 16-3584 chrM 1456 0 0 0 0 0 0 0 16-3584 chrM 1457 0 0 0 0 0 0 0 16-3584 chrM 1458 0 0 0 0 0 0 0 16-3584 chrM 1459 0 0 0 0 0 0 0 16-3584 chrM 1460 0 0 0 0 0 0 0 16-3584 chrM 1461 0 0 0 0 0 0 0 16-3584 chrM 1462 0 0 0 0 0 0 0 16-3584 chrM 1463 0 0 0 0 0 0 0 16-3584 chrM 1464 0 0 0 0 0 0 0 16-3584 chrM 1465 0 0 0 0 0 0 0 16-3584 chrM 1466 0 0 0 0 0 0 0 16-3584 chrM 1467 0 0 0 0 0 0 0 16-3584 chrM 1468 0 0 0 0 0 0 0 16-3584 chrM 1469 0 0 0 0 0 0 0 16-3584 chrM 1470 0 0 0 0 0 0 0 16-3584 chrM 1471 0 0 0 0 0 0 0 16-3584 chrM 1472 0 0 0 0 0 0 0 16-3584 chrM 1473 0 0 0 0 0 0 0 16-3584 chrM 1474 0 0 0 0 0 0 0 16-3584 chrM 1475 0 0 0 0 0 0 0 16-3584 chrM 1476 0 0 0 0 0 0 0 16-3584 chrM 1477 0 0 0 0 0 0 0 16-3584 chrM 1478 0 0 0 0 0 0 0 16-3584 chrM 1479 0 0 0 0 0 0 0 16-3584 chrM 1480 0 0 0 0 0 0 0 16-3584 chrM 1481 0 0 0 0 0 0 0 16-3584 chrM 1482 0 0 0 0 0 0 0 16-3584 chrM 1483 0 0 0 0 0 0 0 16-3584 chrM 1484 0 0 0 0 0 0 0 16-3584 chrM 1485 0 0 0 0 0 0 0 16-3584 chrM 1486 0 0 0 0 0 0 0 16-3584 chrM 1487 0 0 0 0 0 0 0 16-3584 chrM 1488 0 0 0 0 0 0 0 16-3584 chrM 1489 0 0 0 0 0 0 0 16-3584 chrM 1490 0 0 0 0 0 0 0 16-3584 chrM 1491 0 0 0 0 0 0 0 16-3584 chrM 1492 0 0 0 0 0 0 0 16-3584 chrM 1493 0 0 0 0 0 0 0 16-3584 chrM 1494 0 0 0 0 0 0 0 16-3584 chrM 1495 0 0 0 0 0 0 0 16-3584 chrM 1496 0 0 0 0 0 0 0 16-3584 chrM 1497 0 0 0 0 0 0 0 16-3584 chrM 1498 0 0 0 0 0 0 0 16-3584 chrM 1499 0 0 0 0 0 0 0 16-3584 chrM 1500 0 0 0 0 0 0 0 16-3584 chrM 1501 0 0 0 0 0 0 0 16-3584 chrM 1502 0 0 0 0 0 0 0 16-3584 chrM 1503 0 0 0 0 0 0 0 16-3584 chrM 1504 0 0 0 0 0 0 0 16-3584 chrM 1505 0 0 0 0 0 0 0 16-3584 chrM 1506 0 0 0 0 0 0 0 16-3584 chrM 1507 0 0 0 0 0 0 0 16-3584 chrM 1508 0 0 0 0 0 0 0 16-3584 chrM 1509 0 0 0 0 0 0 0 16-3584 chrM 1510 0 0 0 0 0 0 0 16-3584 chrM 1511 0 0 0 0 0 0 0 16-3584 chrM 1512 0 0 0 0 0 0 0 16-3584 chrM 1513 0 0 0 0 0 0 0 16-3584 chrM 1514 0 0 0 0 0 0 0 16-3584 chrM 1515 0 0 0 0 0 0 0 16-3584 chrM 1516 0 0 0 0 0 0 0 16-3584 chrM 1517 0 0 0 0 0 0 0 16-3584 chrM 1518 0 0 0 0 0 0 0 16-3584 chrM 1519 0 0 0 0 0 0 0 16-3584 chrM 1520 0 0 0 0 0 0 0 16-3584 chrM 1521 0 0 0 0 0 0 0 16-3584 chrM 1522 0 0 0 0 0 0 0 16-3584 chrM 1523 0 0 0 0 0 0 0 16-3584 chrM 1524 0 0 0 0 0 0 0 16-3584 chrM 1525 0 0 0 0 0 0 0 16-3584 chrM 1526 0 0 0 0 0 0 0 16-3584 chrM 1527 0 0 0 0 0 0 0 16-3584 chrM 1528 0 0 0 0 0 0 0 16-3584 chrM 1529 0 0 0 0 0 0 0 16-3584 chrM 1530 0 0 0 0 0 0 0 16-3584 chrM 1531 0 0 0 0 0 0 0 16-3584 chrM 1532 0 0 0 0 0 0 0 16-3584 chrM 1533 0 0 0 0 0 0 0 16-3584 chrM 1534 0 0 0 0 0 0 0 16-3584 chrM 1535 0 0 0 0 0 0 0 16-3584 chrM 1536 0 0 0 0 0 0 0 16-3584 chrM 1537 0 0 0 0 0 0 0 16-3584 chrM 1538 0 0 0 0 0 0 0 16-3584 chrM 1539 0 0 0 0 0 0 0 16-3584 chrM 1540 0 0 0 0 0 0 0 16-3584 chrM 1541 0 0 0 0 0 0 0 16-3584 chrM 1542 0 0 0 0 0 0 0 16-3584 chrM 1543 0 0 0 0 0 0 0 16-3584 chrM 1544 0 0 0 0 0 0 0 16-3584 chrM 1545 0 0 0 0 0 0 0 16-3584 chrM 1546 0 0 0 0 0 0 0 16-3584 chrM 1547 0 0 0 0 0 0 0 16-3584 chrM 1548 0 0 0 0 0 0 0 16-3584 chrM 1549 0 0 0 0 0 0 0 16-3584 chrM 1550 0 0 0 0 0 0 0 16-3584 chrM 1551 0 0 0 0 0 0 0 16-3584 chrM 1552 0 0 0 0 0 0 0 16-3584 chrM 1553 0 0 0 0 0 0 0 16-3584 chrM 1554 0 0 0 0 0 0 0 16-3584 chrM 1555 0 0 0 0 0 0 0 16-3584 chrM 1556 0 0 0 0 0 0 0 16-3584 chrM 1557 0 0 0 0 0 0 0 16-3584 chrM 1558 0 0 0 0 0 0 0 16-3584 chrM 1559 0 0 0 0 0 0 0 16-3584 chrM 1560 0 0 0 0 0 0 0 16-3584 chrM 1561 0 0 0 0 0 0 0 16-3584 chrM 1562 0 0 0 0 0 0 0 16-3584 chrM 1563 0 0 0 0 0 0 0 16-3584 chrM 1564 0 0 0 0 0 0 0 16-3584 chrM 1565 0 0 0 0 0 0 0 16-3584 chrM 1566 0 0 0 0 0 0 0 16-3584 chrM 1567 0 0 0 0 0 0 0 16-3584 chrM 1568 0 0 0 0 0 0 0 16-3584 chrM 1569 0 0 0 0 0 0 0 16-3584 chrM 1570 0 0 0 0 0 0 0 16-3584 chrM 1571 0 0 0 0 0 0 0 16-3584 chrM 1572 0 0 0 0 0 0 0 16-3584 chrM 1573 0 0 0 0 0 0 0 16-3584 chrM 1574 0 0 0 0 0 0 0 16-3584 chrM 1575 0 0 0 0 0 0 0 16-3584 chrM 1576 0 0 0 0 0 0 0 16-3584 chrM 1577 0 0 0 0 0 0 0 16-3584 chrM 1578 0 0 0 0 0 0 0 16-3584 chrM 1579 0 0 0 0 0 0 0 16-3584 chrM 1580 0 0 0 0 0 0 0 16-3584 chrM 1581 0 0 0 0 0 0 0 16-3584 chrM 1582 0 0 0 0 0 0 0 16-3584 chrM 1583 0 0 0 0 0 0 0 16-3584 chrM 1584 0 0 0 0 0 0 0 16-3584 chrM 1585 0 0 0 0 0 0 0 16-3584 chrM 1586 0 0 0 0 0 0 0 16-3584 chrM 1587 0 0 0 0 0 0 0 16-3584 chrM 1588 0 0 0 0 0 0 0 16-3584 chrM 1589 0 0 0 0 0 0 0 16-3584 chrM 1590 0 0 0 0 0 0 0 16-3584 chrM 1591 0 0 0 0 0 0 0 16-3584 chrM 1592 0 0 0 0 0 0 0 16-3584 chrM 1593 0 0 0 0 0 0 0 16-3584 chrM 1594 0 0 0 0 0 0 0 16-3584 chrM 1595 0 0 0 0 0 0 0 16-3584 chrM 1596 0 0 0 0 0 0 0 16-3584 chrM 1597 0 0 0 0 0 0 0 16-3584 chrM 1598 0 0 0 0 0 0 0 16-3584 chrM 1599 0 0 0 0 0 0 0 16-3584 chrM 1600 0 0 0 0 0 0 0 16-3584 chrM 1601 0 0 0 0 0 0 0 16-3584 chrM 1602 0 0 0 0 0 0 0 16-3584 chrM 1603 0 0 0 0 0 0 0 16-3584 chrM 1604 0 0 0 0 0 0 0 16-3584 chrM 1605 0 0 0 0 0 0 0 16-3584 chrM 1606 0 0 0 0 0 0 0 16-3584 chrM 1607 0 0 0 0 0 0 0 16-3584 chrM 1608 0 0 0 0 0 0 0 16-3584 chrM 1609 0 0 0 0 0 0 0 16-3584 chrM 1610 0 0 0 0 0 0 0 16-3584 chrM 1611 0 0 0 0 0 0 0 16-3584 chrM 1612 0 0 0 0 0 0 0 16-3584 chrM 1613 0 0 0 0 0 0 0 16-3584 chrM 1614 0 0 0 0 0 0 0 16-3584 chrM 1615 0 0 0 0 0 0 0 16-3584 chrM 1616 0 0 0 0 0 0 0 16-3584 chrM 1617 0 0 0 0 0 0 0 16-3584 chrM 1618 0 0 0 0 0 0 0 16-3584 chrM 1619 0 0 0 0 0 0 0 16-3584 chrM 1620 0 0 0 0 0 0 0 16-3584 chrM 1621 0 0 0 0 0 0 0 16-3584 chrM 1622 0 0 0 0 0 0 0 16-3584 chrM 1623 0 0 0 0 0 0 0 16-3584 chrM 1624 0 0 0 0 0 0 0 16-3584 chrM 1625 0 0 0 0 0 0 0 16-3584 chrM 1626 0 0 0 0 0 0 0 16-3584 chrM 1627 0 0 0 0 0 0 0 16-3584 chrM 1628 0 0 0 0 0 0 0 16-3584 chrM 1629 0 0 0 0 0 0 0 16-3584 chrM 1630 0 0 0 0 0 0 0 16-3584 chrM 1631 0 0 0 0 0 0 0 16-3584 chrM 1632 0 0 0 0 0 0 0 16-3584 chrM 1633 0 0 0 0 0 0 0 16-3584 chrM 1634 0 0 0 0 0 0 0 16-3584 chrM 1635 0 0 0 0 0 0 0 16-3584 chrM 1636 0 0 0 0 0 0 0 16-3584 chrM 1637 0 0 0 0 0 0 0 16-3584 chrM 1638 0 0 0 0 0 0 0 16-3584 chrM 1639 0 0 0 0 0 0 0 16-3584 chrM 1640 0 0 0 0 0 0 0 16-3584 chrM 1641 0 0 0 0 0 0 0 16-3584 chrM 1642 0 0 0 0 0 0 0 16-3584 chrM 1643 0 0 0 0 0 0 0 16-3584 chrM 1644 0 0 0 0 0 0 0 16-3584 chrM 1645 0 0 0 0 0 0 0 16-3584 chrM 1646 0 0 0 0 0 0 0 16-3584 chrM 1647 0 0 0 0 0 0 0 16-3584 chrM 1648 0 0 0 0 0 0 0 16-3584 chrM 1649 0 0 0 0 0 0 0 16-3584 chrM 1650 0 0 0 0 0 0 0 16-3584 chrM 1651 0 0 0 0 0 0 0 16-3584 chrM 1652 0 0 0 0 0 0 0 16-3584 chrM 1653 0 0 0 0 0 0 0 16-3584 chrM 1654 0 0 0 0 0 0 0 16-3584 chrM 1655 0 0 0 0 0 0 0 16-3584 chrM 1656 0 0 0 0 0 0 0 16-3584 chrM 1657 0 0 0 0 0 0 0 16-3584 chrM 1658 0 0 0 0 0 0 0 16-3584 chrM 1659 0 0 0 0 0 0 0 16-3584 chrM 1660 0 0 0 0 0 0 0 16-3584 chrM 1661 0 0 0 0 0 0 0 16-3584 chrM 1662 0 0 0 0 0 0 0 16-3584 chrM 1663 0 0 0 0 0 0 0 16-3584 chrM 1664 0 0 0 0 0 0 0 16-3584 chrM 1665 0 0 0 0 0 0 0 16-3584 chrM 1666 0 0 0 0 0 0 0 16-3584 chrM 1667 0 0 0 0 0 0 0 16-3584 chrM 1668 0 0 0 0 0 0 0 16-3584 chrM 1669 0 0 0 0 0 0 0 16-3584 chrM 1670 0 0 0 0 0 0 0 16-3584 chrM 1671 0 0 0 0 0 0 0 16-3584 chrM 1672 0 0 0 0 0 0 0 16-3584 chrM 1673 0 0 0 0 0 0 0 16-3584 chrM 1674 0 0 0 0 0 0 0 16-3584 chrM 1675 0 0 0 0 0 0 0 16-3584 chrM 1676 0 0 0 0 0 0 0 16-3584 chrM 1677 0 0 0 0 0 0 0 16-3584 chrM 1678 0 0 0 0 0 0 0 16-3584 chrM 1679 0 0 0 0 0 0 0 16-3584 chrM 1680 0 0 0 0 0 0 0 16-3584 chrM 1681 0 0 0 0 0 0 0 16-3584 chrM 1682 0 0 0 0 0 0 0 16-3584 chrM 1683 0 0 0 0 0 0 0 16-3584 chrM 1684 0 0 0 0 0 0 0 16-3584 chrM 1685 0 0 0 0 0 0 0 16-3584 chrM 1686 0 0 0 0 0 0 0 16-3584 chrM 1687 0 0 0 0 0 0 0 16-3584 chrM 1688 0 0 0 0 0 0 0 16-3584 chrM 1689 0 0 0 0 0 0 0 16-3584 chrM 1690 0 0 0 0 0 0 0 16-3584 chrM 1691 0 0 0 0 0 0 0 16-3584 chrM 1692 0 0 0 0 0 0 0 16-3584 chrM 1693 0 0 0 0 0 0 0 16-3584 chrM 1694 0 0 0 0 0 0 0 16-3584 chrM 1695 0 0 0 0 0 0 0 16-3584 chrM 1696 0 0 0 0 0 0 0 16-3584 chrM 1697 0 0 0 0 0 0 0 16-3584 chrM 1698 0 0 0 0 0 0 0 16-3584 chrM 1699 0 0 0 0 0 0 0 16-3584 chrM 1700 0 0 0 0 0 0 0 16-3584 chrM 1701 0 0 0 0 0 0 0 16-3584 chrM 1702 0 0 0 0 0 0 0 16-3584 chrM 1703 0 0 0 0 0 0 0 16-3584 chrM 1704 0 0 0 0 0 0 0 16-3584 chrM 1705 0 0 0 0 0 0 0 16-3584 chrM 1706 0 0 0 0 0 0 0 16-3584 chrM 1707 0 0 0 0 0 0 0 16-3584 chrM 1708 0 0 0 0 0 0 0 16-3584 chrM 1709 0 0 0 0 0 0 0 16-3584 chrM 1710 0 0 0 0 0 0 0 16-3584 chrM 1711 0 0 0 0 0 0 0 16-3584 chrM 1712 0 0 0 0 0 0 0 16-3584 chrM 1713 0 0 0 0 0 0 0 16-3584 chrM 1714 0 0 0 0 0 0 0 16-3584 chrM 1715 0 0 0 0 0 0 0 16-3584 chrM 1716 0 0 0 0 0 0 0 16-3584 chrM 1717 0 0 0 0 0 0 0 16-3584 chrM 1718 0 0 0 0 0 0 0 16-3584 chrM 1719 0 0 0 0 0 0 0 16-3584 chrM 1720 0 0 0 0 0 0 0 16-3584 chrM 1721 0 0 0 0 0 0 0 16-3584 chrM 1722 0 0 0 0 0 0 0 16-3584 chrM 1723 0 0 0 0 0 0 0 16-3584 chrM 1724 0 0 0 0 0 0 0 16-3584 chrM 1725 0 0 0 0 0 0 0 16-3584 chrM 1726 0 0 0 0 0 0 0 16-3584 chrM 1727 0 0 0 0 0 0 0 16-3584 chrM 1728 0 0 0 0 0 0 0 16-3584 chrM 1729 0 0 0 0 0 0 0 16-3584 chrM 1730 0 0 0 0 0 0 0 16-3584 chrM 1731 0 0 0 0 0 0 0 16-3584 chrM 1732 0 0 0 0 0 0 0 16-3584 chrM 1733 0 0 0 0 0 0 0 16-3584 chrM 1734 0 0 0 0 0 0 0 16-3584 chrM 1735 0 0 0 0 0 0 0 16-3584 chrM 1736 0 0 0 0 0 0 0 16-3584 chrM 1737 0 0 0 0 0 0 0 16-3584 chrM 1738 0 0 0 0 0 0 0 16-3584 chrM 1739 0 0 0 0 0 0 0 16-3584 chrM 1740 0 0 0 0 0 0 0 16-3584 chrM 1741 0 0 0 0 0 0 0 16-3584 chrM 1742 0 0 0 0 0 0 0 16-3584 chrM 1743 0 0 0 0 0 0 0 16-3584 chrM 1744 0 0 0 0 0 0 0 16-3584 chrM 1745 0 0 0 0 0 0 0 16-3584 chrM 1746 0 0 0 0 0 0 0 16-3584 chrM 1747 0 0 0 0 0 0 0 16-3584 chrM 1748 0 0 0 0 0 0 0 16-3584 chrM 1749 0 0 0 0 0 0 0 16-3584 chrM 1750 0 0 0 0 0 0 0 16-3584 chrM 1751 0 0 0 0 0 0 0 16-3584 chrM 1752 0 0 0 0 0 0 0 16-3584 chrM 1753 0 0 0 0 0 0 0 16-3584 chrM 1754 0 0 0 0 0 0 0 16-3584 chrM 1755 0 0 0 0 0 0 0 16-3584 chrM 1756 0 0 0 0 0 0 0 16-3584 chrM 1757 0 0 0 0 0 0 0 16-3584 chrM 1758 0 0 0 0 0 0 0 16-3584 chrM 1759 0 0 0 0 0 0 0 16-3584 chrM 1760 0 0 0 0 0 0 0 16-3584 chrM 1761 0 0 0 0 0 0 0 16-3584 chrM 1762 0 0 0 0 0 0 0 16-3584 chrM 1763 0 0 0 0 0 0 0 16-3584 chrM 1764 0 0 0 0 0 0 0 16-3584 chrM 1765 0 0 0 0 0 0 0 16-3584 chrM 1766 0 0 0 0 0 0 0 16-3584 chrM 1767 0 0 0 0 0 0 0 16-3584 chrM 1768 0 0 0 0 0 0 0 16-3584 chrM 1769 0 0 0 0 0 0 0 16-3584 chrM 1770 0 0 0 0 0 0 0 16-3584 chrM 1771 0 0 0 0 0 0 0 16-3584 chrM 1772 0 0 0 0 0 0 0 16-3584 chrM 1773 0 0 0 0 0 0 0 16-3584 chrM 1774 0 0 0 0 0 0 0 16-3584 chrM 1775 0 0 0 0 0 0 0 16-3584 chrM 1776 0 0 0 0 0 0 0 16-3584 chrM 1777 0 0 0 0 0 0 0 16-3584 chrM 1778 0 0 0 0 0 0 0 16-3584 chrM 1779 0 0 0 0 0 0 0 16-3584 chrM 1780 0 0 0 0 0 0 0 16-3584 chrM 1781 0 0 0 0 0 0 0 16-3584 chrM 1782 0 0 0 0 0 0 0 16-3584 chrM 1783 0 0 0 0 0 0 0 16-3584 chrM 1784 0 0 0 0 0 0 0 16-3584 chrM 1785 0 0 0 0 0 0 0 16-3584 chrM 1786 0 0 0 0 0 0 0 16-3584 chrM 1787 0 0 0 0 0 0 0 16-3584 chrM 1788 0 0 0 0 0 0 0 16-3584 chrM 1789 0 0 0 0 0 0 0 16-3584 chrM 1790 0 0 0 0 0 0 0 16-3584 chrM 1791 0 0 0 0 0 0 0 16-3584 chrM 1792 0 0 0 0 0 0 0 16-3584 chrM 1793 0 0 0 0 0 0 0 16-3584 chrM 1794 0 0 0 0 0 0 0 16-3584 chrM 1795 0 0 0 0 0 0 0 16-3584 chrM 1796 0 0 0 0 0 0 0 16-3584 chrM 1797 0 0 0 0 0 0 0 16-3584 chrM 1798 0 0 0 0 0 0 0 16-3584 chrM 1799 0 0 0 0 0 0 0 16-3584 chrM 1800 0 0 0 0 0 0 0 16-3584 chrM 1801 0 0 0 0 0 0 0 16-3584 chrM 1802 0 0 0 0 0 0 0 16-3584 chrM 1803 0 0 0 0 0 0 0 16-3584 chrM 1804 0 0 0 0 0 0 0 16-3584 chrM 1805 0 0 0 0 0 0 0 16-3584 chrM 1806 0 0 0 0 0 0 0 16-3584 chrM 1807 0 0 0 0 0 0 0 16-3584 chrM 1808 0 0 0 0 0 0 0 16-3584 chrM 1809 0 0 0 0 0 0 0 16-3584 chrM 1810 0 0 0 0 0 0 0 16-3584 chrM 1811 0 0 0 0 0 0 0 16-3584 chrM 1812 0 0 0 0 0 0 0 16-3584 chrM 1813 0 0 0 0 0 0 0 16-3584 chrM 1814 0 0 0 0 0 0 0 16-3584 chrM 1815 0 0 0 0 0 0 0 16-3584 chrM 1816 0 0 0 0 0 0 0 16-3584 chrM 1817 0 0 0 0 0 0 0 16-3584 chrM 1818 0 0 0 0 0 0 0 16-3584 chrM 1819 0 0 0 0 0 0 0 16-3584 chrM 1820 0 0 0 0 0 0 0 16-3584 chrM 1821 0 0 0 0 0 0 0 16-3584 chrM 1822 0 0 0 0 0 0 0 16-3584 chrM 1823 0 0 0 0 0 0 0 16-3584 chrM 1824 0 0 0 0 0 0 0 16-3584 chrM 1825 0 0 0 0 0 0 0 16-3584 chrM 1826 0 0 0 0 0 0 0 16-3584 chrM 1827 0 0 0 0 0 0 0 16-3584 chrM 1828 0 0 0 0 0 0 0 16-3584 chrM 1829 0 0 0 0 0 0 0 16-3584 chrM 1830 0 0 0 0 0 0 0 16-3584 chrM 1831 0 0 0 0 0 0 0 16-3584 chrM 1832 0 0 0 0 0 0 0 16-3584 chrM 1833 0 0 0 0 0 0 0 16-3584 chrM 1834 0 0 0 0 0 0 0 16-3584 chrM 1835 0 0 0 0 0 0 0 16-3584 chrM 1836 0 0 0 0 0 0 0 16-3584 chrM 1837 0 0 0 0 0 0 0 16-3584 chrM 1838 0 0 0 0 0 0 0 16-3584 chrM 1839 0 0 0 0 0 0 0 16-3584 chrM 1840 0 0 0 0 0 0 0 16-3584 chrM 1841 0 0 0 0 0 0 0 16-3584 chrM 1842 0 0 0 0 0 0 0 16-3584 chrM 1843 0 0 0 0 0 0 0 16-3584 chrM 1844 0 0 0 0 0 0 0 16-3584 chrM 1845 0 0 0 0 0 0 0 16-3584 chrM 1846 0 0 0 0 0 0 0 16-3584 chrM 1847 0 0 0 0 0 0 0 16-3584 chrM 1848 0 0 0 0 0 0 0 16-3584 chrM 1849 0 0 0 0 0 0 0 16-3584 chrM 1850 0 0 0 0 0 0 0 16-3584 chrM 1851 0 0 0 0 0 0 0 16-3584 chrM 1852 0 0 0 0 0 0 0 16-3584 chrM 1853 0 0 0 0 0 0 0 16-3584 chrM 1854 0 0 0 0 0 0 0 16-3584 chrM 1855 0 0 0 0 0 0 0 16-3584 chrM 1856 0 0 0 0 0 0 0 16-3584 chrM 1857 0 0 0 0 0 0 0 16-3584 chrM 1858 0 0 0 0 0 0 0 16-3584 chrM 1859 0 0 0 0 0 0 0 16-3584 chrM 1860 15 2 4 6 3 0 0 16-3584 chrM 1861 15 4 1 3 7 0 0 16-3584 chrM 1862 15 3 7 2 3 0 0 16-3584 chrM 1863 15 4 5 4 2 0 0 16-3584 chrM 1864 15 3 4 3 5 0 0 16-3584 chrM 1865 30 8 8 11 3 0 0 16-3584 chrM 1866 30 7 4 10 9 0 0 16-3584 chrM 1867 30 9 6 6 9 0 0 16-3584 chrM 1868 30 6 4 9 11 0 0 16-3584 chrM 1869 30 8 9 6 7 0 0 16-3584 chrM 1870 30 7 6 10 7 0 0 16-3584 chrM 1871 30 10 6 7 7 0 0 16-3584 chrM 1872 30 7 5 9 9 0 0 16-3584 chrM 1873 30 6 11 8 5 0 0 16-3584 chrM 1874 30 7 6 10 7 0 0 16-3584 chrM 1875 30 5 6 5 14 0 0 16-3584 chrM 1876 30 8 9 8 5 0 0 16-3584 chrM 1877 30 7 6 12 5 0 0 16-3584 chrM 1878 30 7 12 6 5 0 0 16-3584 chrM 1879 30 8 6 7 9 0 0 16-3584 chrM 1880 30 10 6 7 7 0 0 16-3584 chrM 1881 30 6 12 7 5 0 0 16-3584 chrM 1882 30 6 8 7 9 0 0 16-3584 chrM 1883 30 7 8 8 7 0 0 16-3584 chrM 1884 30 8 6 4 12 0 0 16-3584 chrM 1885 30 11 6 8 5 0 0 16-3584 chrM 1886 30 7 6 8 9 0 0 16-3584 chrM 1887 30 7 12 7 4 0 0 16-3584 chrM 1888 30 9 7 8 6 0 0 16-3584 chrM 1889 30 9 4 8 9 0 0 16-3584 chrM 1890 30 7 6 8 9 0 0 16-3584 chrM 1891 30 8 8 6 8 0 0 16-3584 chrM 1892 30 10 7 8 5 0 0 16-3584 chrM 1893 30 3 8 8 11 0 0 16-3584 chrM 1894 30 6 8 8 8 0 0 16-3584 chrM 1895 30 7 9 7 7 0 0 16-3584 chrM 1896 30 9 4 8 9 0 0 16-3584 chrM 1897 30 5 9 5 11 0 0 16-3584 chrM 1898 30 10 6 4 10 0 0 16-3584 chrM 1899 30 6 8 10 6 0 0 16-3584 chrM 1900 30 8 6 8 8 0 0 16-3584 chrM 1901 30 7 11 4 8 0 0 16-3584 chrM 1902 30 9 7 6 8 0 0 16-3584 chrM 1903 30 7 7 7 9 0 0 16-3584 chrM 1904 30 6 5 8 11 0 0 16-3584 chrM 1905 30 6 6 8 10 0 0 16-3584 chrM 1906 30 12 6 10 2 0 0 16-3584 chrM 1907 30 7 6 4 13 0 0 16-3584 chrM 1908 30 8 8 7 7 0 0 16-3584 chrM 1909 30 6 8 11 5 0 0 16-3584 chrM 1910 30 10 13 6 1 0 0 16-3584 chrM 1911 30 8 6 13 3 0 0 16-3584 chrM 1912 30 5 9 10 6 0 0 16-3584 chrM 1913 30 5 7 7 11 0 0 16-3584 chrM 1914 30 8 9 9 4 0 0 16-3584 chrM 1915 30 7 5 12 6 0 0 16-3584 chrM 1916 30 10 8 5 7 0 0 16-3584 chrM 1917 30 5 5 10 10 0 0 16-3584 chrM 1918 30 4 9 11 6 0 0 16-3584 chrM 1919 30 11 7 7 5 0 0 16-3584 chrM 1920 30 7 10 8 5 0 0 16-3584 chrM 1921 30 7 6 10 7 0 0 16-3584 chrM 1922 30 11 6 8 5 0 0 16-3584 chrM 1923 30 6 9 8 7 0 0 16-3584 chrM 1924 30 9 7 8 6 0 0 16-3584 chrM 1925 30 6 7 7 10 0 0 16-3584 chrM 1926 30 8 4 5 13 0 0 16-3584 chrM 1927 30 6 9 6 9 0 0 16-3584 chrM 1928 30 6 5 10 9 0 0 16-3584 chrM 1929 30 4 10 8 8 0 0 16-3584 chrM 1930 30 5 8 9 8 0 0 16-3584 chrM 1931 30 6 5 9 10 0 0 16-3584 chrM 1932 30 10 6 8 6 0 0 16-3584 chrM 1933 30 8 4 6 12 0 0 16-3584 chrM 1934 30 6 9 7 8 0 0 16-3584 chrM 1935 30 8 7 9 6 0 0 16-3584 chrM 1936 30 7 4 7 12 0 0 16-3584 chrM 1937 30 12 9 7 2 0 0 16-3584 chrM 1938 30 8 9 7 6 0 0 16-3584 chrM 1939 30 5 5 9 11 0 0 16-3584 chrM 1940 15 6 5 3 1 0 0 16-3584 chrM 1941 15 6 2 2 5 0 0 16-3584 chrM 1942 15 1 2 5 7 0 0 16-3584 chrM 1943 15 6 3 3 3 0 0 16-3584 chrM 1944 15 3 2 4 6 0 0 16-3584 chrM 1945 0 0 0 0 0 0 0 16-3584 chrM 1946 0 0 0 0 0 0 0 16-3584 chrM 1947 0 0 0 0 0 0 0 16-3584 chrM 1948 0 0 0 0 0 0 0 16-3584 chrM 1949 0 0 0 0 0 0 0 16-3584 chrM 1950 0 0 0 0 0 0 0 16-3584 chrM 1951 0 0 0 0 0 0 0 16-3584 chrM 1952 0 0 0 0 0 0 0 16-3584 chrM 1953 0 0 0 0 0 0 0 16-3584 chrM 1954 0 0 0 0 0 0 0 16-3584 chrM 1955 0 0 0 0 0 0 0 16-3584 chrM 1956 0 0 0 0 0 0 0 16-3584 chrM 1957 0 0 0 0 0 0 0 16-3584 chrM 1958 0 0 0 0 0 0 0 16-3584 chrM 1959 0 0 0 0 0 0 0 16-3584 chrM 1960 0 0 0 0 0 0 0 16-3584 chrM 1961 0 0 0 0 0 0 0 16-3584 chrM 1962 0 0 0 0 0 0 0 16-3584 chrM 1963 0 0 0 0 0 0 0 16-3584 chrM 1964 0 0 0 0 0 0 0 16-3584 chrM 1965 0 0 0 0 0 0 0 16-3584 chrM 1966 0 0 0 0 0 0 0 16-3584 chrM 1967 0 0 0 0 0 0 0 16-3584 chrM 1968 0 0 0 0 0 0 0 16-3584 chrM 1969 0 0 0 0 0 0 0 16-3584 chrM 1970 0 0 0 0 0 0 0 16-3584 chrM 1971 0 0 0 0 0 0 0 16-3584 chrM 1972 0 0 0 0 0 0 0 16-3584 chrM 1973 0 0 0 0 0 0 0 16-3584 chrM 1974 0 0 0 0 0 0 0 16-3584 chrM 1975 0 0 0 0 0 0 0 16-3584 chrM 1976 0 0 0 0 0 0 0 16-3584 chrM 1977 0 0 0 0 0 0 0 16-3584 chrM 1978 0 0 0 0 0 0 0 16-3584 chrM 1979 0 0 0 0 0 0 0 16-3584 chrM 1980 0 0 0 0 0 0 0 16-3584 chrM 1981 0 0 0 0 0 0 0 16-3584 chrM 1982 0 0 0 0 0 0 0 16-3584 chrM 1983 0 0 0 0 0 0 0 16-3584 chrM 1984 0 0 0 0 0 0 0 16-3584 chrM 1985 0 0 0 0 0 0 0 16-3584 chrM 1986 0 0 0 0 0 0 0 16-3584 chrM 1987 0 0 0 0 0 0 0 16-3584 chrM 1988 0 0 0 0 0 0 0 16-3584 chrM 1989 0 0 0 0 0 0 0 16-3584 chrM 1990 0 0 0 0 0 0 0 16-3584 chrM 1991 0 0 0 0 0 0 0 16-3584 chrM 1992 0 0 0 0 0 0 0 16-3584 chrM 1993 0 0 0 0 0 0 0 16-3584 chrM 1994 0 0 0 0 0 0 0 16-3584 chrM 1995 0 0 0 0 0 0 0 16-3584 chrM 1996 0 0 0 0 0 0 0 16-3584 chrM 1997 0 0 0 0 0 0 0 16-3584 chrM 1998 0 0 0 0 0 0 0 16-3584 chrM 1999 0 0 0 0 0 0 0 16-3584 chrM 2000 0 0 0 0 0 0 0 16-3584 chrM 2001 0 0 0 0 0 0 0 16-3584 chrM 2002 0 0 0 0 0 0 0 16-3584 chrM 2003 0 0 0 0 0 0 0 16-3584 chrM 2004 0 0 0 0 0 0 0 16-3584 chrM 2005 0 0 0 0 0 0 0 16-3584 chrM 2006 0 0 0 0 0 0 0 16-3584 chrM 2007 0 0 0 0 0 0 0 16-3584 chrM 2008 0 0 0 0 0 0 0 16-3584 chrM 2009 0 0 0 0 0 0 0 16-3584 chrM 2010 0 0 0 0 0 0 0 16-3584 chrM 2011 0 0 0 0 0 0 0 16-3584 chrM 2012 0 0 0 0 0 0 0 16-3584 chrM 2013 0 0 0 0 0 0 0 16-3584 chrM 2014 0 0 0 0 0 0 0 16-3584 chrM 2015 0 0 0 0 0 0 0 16-3584 chrM 2016 0 0 0 0 0 0 0 16-3584 chrM 2017 0 0 0 0 0 0 0 16-3584 chrM 2018 0 0 0 0 0 0 0 16-3584 chrM 2019 0 0 0 0 0 0 0 16-3584 chrM 2020 0 0 0 0 0 0 0 16-3584 chrM 2021 0 0 0 0 0 0 0 16-3584 chrM 2022 0 0 0 0 0 0 0 16-3584 chrM 2023 0 0 0 0 0 0 0 16-3584 chrM 2024 0 0 0 0 0 0 0 16-3584 chrM 2025 0 0 0 0 0 0 0 16-3584 chrM 2026 0 0 0 0 0 0 0 16-3584 chrM 2027 0 0 0 0 0 0 0 16-3584 chrM 2028 0 0 0 0 0 0 0 16-3584 chrM 2029 0 0 0 0 0 0 0 16-3584 chrM 2030 0 0 0 0 0 0 0 16-3584 chrM 2031 0 0 0 0 0 0 0 16-3584 chrM 2032 0 0 0 0 0 0 0 16-3584 chrM 2033 0 0 0 0 0 0 0 16-3584 chrM 2034 0 0 0 0 0 0 0 16-3584 chrM 2035 0 0 0 0 0 0 0 16-3584 chrM 2036 0 0 0 0 0 0 0 16-3584 chrM 2037 0 0 0 0 0 0 0 16-3584 chrM 2038 0 0 0 0 0 0 0 16-3584 chrM 2039 0 0 0 0 0 0 0 16-3584 chrM 2040 0 0 0 0 0 0 0 16-3584 chrM 2041 0 0 0 0 0 0 0 16-3584 chrM 2042 0 0 0 0 0 0 0 16-3584 chrM 2043 0 0 0 0 0 0 0 16-3584 chrM 2044 0 0 0 0 0 0 0 16-3584 chrM 2045 0 0 0 0 0 0 0 16-3584 chrM 2046 0 0 0 0 0 0 0 16-3584 chrM 2047 0 0 0 0 0 0 0 16-3584 chrM 2048 0 0 0 0 0 0 0 16-3584 chrM 2049 0 0 0 0 0 0 0 16-3584 chrM 2050 0 0 0 0 0 0 0 16-3584 chrM 2051 0 0 0 0 0 0 0 16-3584 chrM 2052 0 0 0 0 0 0 0 16-3584 chrM 2053 0 0 0 0 0 0 0 16-3584 chrM 2054 0 0 0 0 0 0 0 16-3584 chrM 2055 0 0 0 0 0 0 0 16-3584 chrM 2056 0 0 0 0 0 0 0 16-3584 chrM 2057 0 0 0 0 0 0 0 16-3584 chrM 2058 0 0 0 0 0 0 0 16-3584 chrM 2059 0 0 0 0 0 0 0 16-3584 chrM 2060 0 0 0 0 0 0 0 16-3584 chrM 2061 0 0 0 0 0 0 0 16-3584 chrM 2062 0 0 0 0 0 0 0 16-3584 chrM 2063 0 0 0 0 0 0 0 16-3584 chrM 2064 0 0 0 0 0 0 0 16-3584 chrM 2065 0 0 0 0 0 0 0 16-3584 chrM 2066 0 0 0 0 0 0 0 16-3584 chrM 2067 0 0 0 0 0 0 0 16-3584 chrM 2068 0 0 0 0 0 0 0 16-3584 chrM 2069 0 0 0 0 0 0 0 16-3584 chrM 2070 0 0 0 0 0 0 0 16-3584 chrM 2071 0 0 0 0 0 0 0 16-3584 chrM 2072 0 0 0 0 0 0 0 16-3584 chrM 2073 0 0 0 0 0 0 0 16-3584 chrM 2074 0 0 0 0 0 0 0 16-3584 chrM 2075 0 0 0 0 0 0 0 16-3584 chrM 2076 0 0 0 0 0 0 0 16-3584 chrM 2077 0 0 0 0 0 0 0 16-3584 chrM 2078 0 0 0 0 0 0 0 16-3584 chrM 2079 0 0 0 0 0 0 0 16-3584 chrM 2080 0 0 0 0 0 0 0 16-3584 chrM 2081 0 0 0 0 0 0 0 16-3584 chrM 2082 0 0 0 0 0 0 0 16-3584 chrM 2083 0 0 0 0 0 0 0 16-3584 chrM 2084 0 0 0 0 0 0 0 16-3584 chrM 2085 0 0 0 0 0 0 0 16-3584 chrM 2086 0 0 0 0 0 0 0 16-3584 chrM 2087 0 0 0 0 0 0 0 16-3584 chrM 2088 0 0 0 0 0 0 0 16-3584 chrM 2089 0 0 0 0 0 0 0 16-3584 chrM 2090 0 0 0 0 0 0 0 16-3584 chrM 2091 0 0 0 0 0 0 0 16-3584 chrM 2092 0 0 0 0 0 0 0 16-3584 chrM 2093 0 0 0 0 0 0 0 16-3584 chrM 2094 0 0 0 0 0 0 0 16-3584 chrM 2095 0 0 0 0 0 0 0 16-3584 chrM 2096 0 0 0 0 0 0 0 16-3584 chrM 2097 0 0 0 0 0 0 0 16-3584 chrM 2098 0 0 0 0 0 0 0 16-3584 chrM 2099 0 0 0 0 0 0 0 16-3584 chrM 2100 0 0 0 0 0 0 0 16-3584 chrM 2101 0 0 0 0 0 0 0 16-3584 chrM 2102 0 0 0 0 0 0 0 16-3584 chrM 2103 0 0 0 0 0 0 0 16-3584 chrM 2104 0 0 0 0 0 0 0 16-3584 chrM 2105 0 0 0 0 0 0 0 16-3584 chrM 2106 0 0 0 0 0 0 0 16-3584 chrM 2107 0 0 0 0 0 0 0 16-3584 chrM 2108 0 0 0 0 0 0 0 16-3584 chrM 2109 0 0 0 0 0 0 0 16-3584 chrM 2110 0 0 0 0 0 0 0 16-3584 chrM 2111 0 0 0 0 0 0 0 16-3584 chrM 2112 0 0 0 0 0 0 0 16-3584 chrM 2113 0 0 0 0 0 0 0 16-3584 chrM 2114 0 0 0 0 0 0 0 16-3584 chrM 2115 0 0 0 0 0 0 0 16-3584 chrM 2116 0 0 0 0 0 0 0 16-3584 chrM 2117 0 0 0 0 0 0 0 16-3584 chrM 2118 0 0 0 0 0 0 0 16-3584 chrM 2119 0 0 0 0 0 0 0 16-3584 chrM 2120 0 0 0 0 0 0 0 16-3584 chrM 2121 0 0 0 0 0 0 0 16-3584 chrM 2122 0 0 0 0 0 0 0 16-3584 chrM 2123 0 0 0 0 0 0 0 16-3584 chrM 2124 0 0 0 0 0 0 0 16-3584 chrM 2125 0 0 0 0 0 0 0 16-3584 chrM 2126 0 0 0 0 0 0 0 16-3584 chrM 2127 0 0 0 0 0 0 0 16-3584 chrM 2128 0 0 0 0 0 0 0 16-3584 chrM 2129 0 0 0 0 0 0 0 16-3584 chrM 2130 0 0 0 0 0 0 0 16-3584 chrM 2131 0 0 0 0 0 0 0 16-3584 chrM 2132 0 0 0 0 0 0 0 16-3584 chrM 2133 0 0 0 0 0 0 0 16-3584 chrM 2134 0 0 0 0 0 0 0 16-3584 chrM 2135 0 0 0 0 0 0 0 16-3584 chrM 2136 0 0 0 0 0 0 0 16-3584 chrM 2137 0 0 0 0 0 0 0 16-3584 chrM 2138 0 0 0 0 0 0 0 16-3584 chrM 2139 0 0 0 0 0 0 0 16-3584 chrM 2140 0 0 0 0 0 0 0 16-3584 chrM 2141 0 0 0 0 0 0 0 16-3584 chrM 2142 0 0 0 0 0 0 0 16-3584 chrM 2143 0 0 0 0 0 0 0 16-3584 chrM 2144 0 0 0 0 0 0 0 16-3584 chrM 2145 0 0 0 0 0 0 0 16-3584 chrM 2146 0 0 0 0 0 0 0 16-3584 chrM 2147 0 0 0 0 0 0 0 16-3584 chrM 2148 0 0 0 0 0 0 0 16-3584 chrM 2149 0 0 0 0 0 0 0 16-3584 chrM 2150 0 0 0 0 0 0 0 16-3584 chrM 2151 0 0 0 0 0 0 0 16-3584 chrM 2152 0 0 0 0 0 0 0 16-3584 chrM 2153 0 0 0 0 0 0 0 16-3584 chrM 2154 0 0 0 0 0 0 0 16-3584 chrM 2155 0 0 0 0 0 0 0 16-3584 chrM 2156 0 0 0 0 0 0 0 16-3584 chrM 2157 0 0 0 0 0 0 0 16-3584 chrM 2158 0 0 0 0 0 0 0 16-3584 chrM 2159 0 0 0 0 0 0 0 16-3584 chrM 2160 0 0 0 0 0 0 0 16-3584 chrM 2161 0 0 0 0 0 0 0 16-3584 chrM 2162 0 0 0 0 0 0 0 16-3584 chrM 2163 0 0 0 0 0 0 0 16-3584 chrM 2164 0 0 0 0 0 0 0 16-3584 chrM 2165 0 0 0 0 0 0 0 16-3584 chrM 2166 0 0 0 0 0 0 0 16-3584 chrM 2167 0 0 0 0 0 0 0 16-3584 chrM 2168 0 0 0 0 0 0 0 16-3584 chrM 2169 0 0 0 0 0 0 0 16-3584 chrM 2170 0 0 0 0 0 0 0 16-3584 chrM 2171 0 0 0 0 0 0 0 16-3584 chrM 2172 0 0 0 0 0 0 0 16-3584 chrM 2173 0 0 0 0 0 0 0 16-3584 chrM 2174 0 0 0 0 0 0 0 16-3584 chrM 2175 0 0 0 0 0 0 0 16-3584 chrM 2176 0 0 0 0 0 0 0 16-3584 chrM 2177 0 0 0 0 0 0 0 16-3584 chrM 2178 0 0 0 0 0 0 0 16-3584 chrM 2179 0 0 0 0 0 0 0 16-3584 chrM 2180 0 0 0 0 0 0 0 16-3584 chrM 2181 0 0 0 0 0 0 0 16-3584 chrM 2182 0 0 0 0 0 0 0 16-3584 chrM 2183 0 0 0 0 0 0 0 16-3584 chrM 2184 0 0 0 0 0 0 0 16-3584 chrM 2185 0 0 0 0 0 0 0 16-3584 chrM 2186 0 0 0 0 0 0 0 16-3584 chrM 2187 0 0 0 0 0 0 0 16-3584 chrM 2188 0 0 0 0 0 0 0 16-3584 chrM 2189 0 0 0 0 0 0 0 16-3584 chrM 2190 0 0 0 0 0 0 0 16-3584 chrM 2191 0 0 0 0 0 0 0 16-3584 chrM 2192 0 0 0 0 0 0 0 16-3584 chrM 2193 0 0 0 0 0 0 0 16-3584 chrM 2194 0 0 0 0 0 0 0 16-3584 chrM 2195 0 0 0 0 0 0 0 16-3584 chrM 2196 0 0 0 0 0 0 0 16-3584 chrM 2197 0 0 0 0 0 0 0 16-3584 chrM 2198 0 0 0 0 0 0 0 16-3584 chrM 2199 0 0 0 0 0 0 0 16-3584 chrM 2200 0 0 0 0 0 0 0 16-3584 chrM 2201 0 0 0 0 0 0 0 16-3584 chrM 2202 0 0 0 0 0 0 0 16-3584 chrM 2203 0 0 0 0 0 0 0 16-3584 chrM 2204 0 0 0 0 0 0 0 16-3584 chrM 2205 0 0 0 0 0 0 0 16-3584 chrM 2206 0 0 0 0 0 0 0 16-3584 chrM 2207 0 0 0 0 0 0 0 16-3584 chrM 2208 0 0 0 0 0 0 0 16-3584 chrM 2209 0 0 0 0 0 0 0 16-3584 chrM 2210 0 0 0 0 0 0 0 16-3584 chrM 2211 0 0 0 0 0 0 0 16-3584 chrM 2212 0 0 0 0 0 0 0 16-3584 chrM 2213 0 0 0 0 0 0 0 16-3584 chrM 2214 0 0 0 0 0 0 0 16-3584 chrM 2215 0 0 0 0 0 0 0 16-3584 chrM 2216 0 0 0 0 0 0 0 16-3584 chrM 2217 0 0 0 0 0 0 0 16-3584 chrM 2218 0 0 0 0 0 0 0 16-3584 chrM 2219 0 0 0 0 0 0 0 16-3584 chrM 2220 0 0 0 0 0 0 0 16-3584 chrM 2221 0 0 0 0 0 0 0 16-3584 chrM 2222 0 0 0 0 0 0 0 16-3584 chrM 2223 0 0 0 0 0 0 0 16-3584 chrM 2224 0 0 0 0 0 0 0 16-3584 chrM 2225 0 0 0 0 0 0 0 16-3584 chrM 2226 0 0 0 0 0 0 0 16-3584 chrM 2227 0 0 0 0 0 0 0 16-3584 chrM 2228 0 0 0 0 0 0 0 16-3584 chrM 2229 0 0 0 0 0 0 0 16-3584 chrM 2230 0 0 0 0 0 0 0 16-3584 chrM 2231 0 0 0 0 0 0 0 16-3584 chrM 2232 0 0 0 0 0 0 0 16-3584 chrM 2233 0 0 0 0 0 0 0 16-3584 chrM 2234 0 0 0 0 0 0 0 16-3584 chrM 2235 0 0 0 0 0 0 0 16-3584 chrM 2236 0 0 0 0 0 0 0 16-3584 chrM 2237 0 0 0 0 0 0 0 16-3584 chrM 2238 0 0 0 0 0 0 0 16-3584 chrM 2239 0 0 0 0 0 0 0 16-3584 chrM 2240 0 0 0 0 0 0 0 16-3584 chrM 2241 0 0 0 0 0 0 0 16-3584 chrM 2242 0 0 0 0 0 0 0 16-3584 chrM 2243 0 0 0 0 0 0 0 16-3584 chrM 2244 0 0 0 0 0 0 0 16-3584 chrM 2245 0 0 0 0 0 0 0 16-3584 chrM 2246 0 0 0 0 0 0 0 16-3584 chrM 2247 0 0 0 0 0 0 0 16-3584 chrM 2248 0 0 0 0 0 0 0 16-3584 chrM 2249 0 0 0 0 0 0 0 16-3584 chrM 2250 0 0 0 0 0 0 0 16-3584 chrM 2251 0 0 0 0 0 0 0 16-3584 chrM 2252 0 0 0 0 0 0 0 16-3584 chrM 2253 0 0 0 0 0 0 0 16-3584 chrM 2254 0 0 0 0 0 0 0 16-3584 chrM 2255 0 0 0 0 0 0 0 16-3584 chrM 2256 0 0 0 0 0 0 0 16-3584 chrM 2257 0 0 0 0 0 0 0 16-3584 chrM 2258 0 0 0 0 0 0 0 16-3584 chrM 2259 0 0 0 0 0 0 0 16-3584 chrM 2260 0 0 0 0 0 0 0 16-3584 chrM 2261 0 0 0 0 0 0 0 16-3584 chrM 2262 0 0 0 0 0 0 0 16-3584 chrM 2263 0 0 0 0 0 0 0 16-3584 chrM 2264 0 0 0 0 0 0 0 16-3584 chrM 2265 0 0 0 0 0 0 0 16-3584 chrM 2266 0 0 0 0 0 0 0 16-3584 chrM 2267 0 0 0 0 0 0 0 16-3584 chrM 2268 0 0 0 0 0 0 0 16-3584 chrM 2269 0 0 0 0 0 0 0 16-3584 chrM 2270 0 0 0 0 0 0 0 16-3584 chrM 2271 0 0 0 0 0 0 0 16-3584 chrM 2272 0 0 0 0 0 0 0 16-3584 chrM 2273 0 0 0 0 0 0 0 16-3584 chrM 2274 0 0 0 0 0 0 0 16-3584 chrM 2275 0 0 0 0 0 0 0 16-3584 chrM 2276 0 0 0 0 0 0 0 16-3584 chrM 2277 0 0 0 0 0 0 0 16-3584 chrM 2278 0 0 0 0 0 0 0 16-3584 chrM 2279 0 0 0 0 0 0 0 16-3584 chrM 2280 0 0 0 0 0 0 0 16-3584 chrM 2281 0 0 0 0 0 0 0 16-3584 chrM 2282 0 0 0 0 0 0 0 16-3584 chrM 2283 0 0 0 0 0 0 0 16-3584 chrM 2284 0 0 0 0 0 0 0 16-3584 chrM 2285 0 0 0 0 0 0 0 16-3584 chrM 2286 0 0 0 0 0 0 0 16-3584 chrM 2287 0 0 0 0 0 0 0 16-3584 chrM 2288 0 0 0 0 0 0 0 16-3584 chrM 2289 0 0 0 0 0 0 0 16-3584 chrM 2290 0 0 0 0 0 0 0 16-3584 chrM 2291 0 0 0 0 0 0 0 16-3584 chrM 2292 0 0 0 0 0 0 0 16-3584 chrM 2293 0 0 0 0 0 0 0 16-3584 chrM 2294 0 0 0 0 0 0 0 16-3584 chrM 2295 0 0 0 0 0 0 0 16-3584 chrM 2296 0 0 0 0 0 0 0 16-3584 chrM 2297 0 0 0 0 0 0 0 16-3584 chrM 2298 0 0 0 0 0 0 0 16-3584 chrM 2299 0 0 0 0 0 0 0 16-3584 chrM 2300 0 0 0 0 0 0 0 16-3584 chrM 2301 0 0 0 0 0 0 0 16-3584 chrM 2302 0 0 0 0 0 0 0 16-3584 chrM 2303 0 0 0 0 0 0 0 16-3584 chrM 2304 0 0 0 0 0 0 0 16-3584 chrM 2305 0 0 0 0 0 0 0 16-3584 chrM 2306 0 0 0 0 0 0 0 16-3584 chrM 2307 0 0 0 0 0 0 0 16-3584 chrM 2308 0 0 0 0 0 0 0 16-3584 chrM 2309 0 0 0 0 0 0 0 16-3584 chrM 2310 0 0 0 0 0 0 0 16-3584 chrM 2311 0 0 0 0 0 0 0 16-3584 chrM 2312 0 0 0 0 0 0 0 16-3584 chrM 2313 0 0 0 0 0 0 0 16-3584 chrM 2314 0 0 0 0 0 0 0 16-3584 chrM 2315 0 0 0 0 0 0 0 16-3584 chrM 2316 0 0 0 0 0 0 0 16-3584 chrM 2317 0 0 0 0 0 0 0 16-3584 chrM 2318 0 0 0 0 0 0 0 16-3584 chrM 2319 0 0 0 0 0 0 0 16-3584 chrM 2320 0 0 0 0 0 0 0 16-3584 chrM 2321 0 0 0 0 0 0 0 16-3584 chrM 2322 0 0 0 0 0 0 0 16-3584 chrM 2323 0 0 0 0 0 0 0 16-3584 chrM 2324 0 0 0 0 0 0 0 16-3584 chrM 2325 0 0 0 0 0 0 0 16-3584 chrM 2326 0 0 0 0 0 0 0 16-3584 chrM 2327 0 0 0 0 0 0 0 16-3584 chrM 2328 0 0 0 0 0 0 0 16-3584 chrM 2329 0 0 0 0 0 0 0 16-3584 chrM 2330 0 0 0 0 0 0 0 16-3584 chrM 2331 0 0 0 0 0 0 0 16-3584 chrM 2332 0 0 0 0 0 0 0 16-3584 chrM 2333 0 0 0 0 0 0 0 16-3584 chrM 2334 0 0 0 0 0 0 0 16-3584 chrM 2335 0 0 0 0 0 0 0 16-3584 chrM 2336 0 0 0 0 0 0 0 16-3584 chrM 2337 0 0 0 0 0 0 0 16-3584 chrM 2338 0 0 0 0 0 0 0 16-3584 chrM 2339 0 0 0 0 0 0 0 16-3584 chrM 2340 0 0 0 0 0 0 0 16-3584 chrM 2341 0 0 0 0 0 0 0 16-3584 chrM 2342 0 0 0 0 0 0 0 16-3584 chrM 2343 0 0 0 0 0 0 0 16-3584 chrM 2344 0 0 0 0 0 0 0 16-3584 chrM 2345 0 0 0 0 0 0 0 16-3584 chrM 2346 0 0 0 0 0 0 0 16-3584 chrM 2347 0 0 0 0 0 0 0 16-3584 chrM 2348 0 0 0 0 0 0 0 16-3584 chrM 2349 0 0 0 0 0 0 0 16-3584 chrM 2350 0 0 0 0 0 0 0 16-3584 chrM 2351 0 0 0 0 0 0 0 16-3584 chrM 2352 0 0 0 0 0 0 0 16-3584 chrM 2353 0 0 0 0 0 0 0 16-3584 chrM 2354 0 0 0 0 0 0 0 16-3584 chrM 2355 0 0 0 0 0 0 0 16-3584 chrM 2356 0 0 0 0 0 0 0 16-3584 chrM 2357 0 0 0 0 0 0 0 16-3584 chrM 2358 0 0 0 0 0 0 0 16-3584 chrM 2359 0 0 0 0 0 0 0 16-3584 chrM 2360 0 0 0 0 0 0 0 16-3584 chrM 2361 0 0 0 0 0 0 0 16-3584 chrM 2362 0 0 0 0 0 0 0 16-3584 chrM 2363 0 0 0 0 0 0 0 16-3584 chrM 2364 0 0 0 0 0 0 0 16-3584 chrM 2365 0 0 0 0 0 0 0 16-3584 chrM 2366 0 0 0 0 0 0 0 16-3584 chrM 2367 0 0 0 0 0 0 0 16-3584 chrM 2368 0 0 0 0 0 0 0 16-3584 chrM 2369 0 0 0 0 0 0 0 16-3584 chrM 2370 0 0 0 0 0 0 0 16-3584 chrM 2371 0 0 0 0 0 0 0 16-3584 chrM 2372 0 0 0 0 0 0 0 16-3584 chrM 2373 0 0 0 0 0 0 0 16-3584 chrM 2374 0 0 0 0 0 0 0 16-3584 chrM 2375 0 0 0 0 0 0 0 16-3584 chrM 2376 0 0 0 0 0 0 0 16-3584 chrM 2377 0 0 0 0 0 0 0 16-3584 chrM 2378 0 0 0 0 0 0 0 16-3584 chrM 2379 0 0 0 0 0 0 0 16-3584 chrM 2380 0 0 0 0 0 0 0 16-3584 chrM 2381 0 0 0 0 0 0 0 16-3584 chrM 2382 0 0 0 0 0 0 0 16-3584 chrM 2383 0 0 0 0 0 0 0 16-3584 chrM 2384 0 0 0 0 0 0 0 16-3584 chrM 2385 0 0 0 0 0 0 0 16-3584 chrM 2386 0 0 0 0 0 0 0 16-3584 chrM 2387 0 0 0 0 0 0 0 16-3584 chrM 2388 0 0 0 0 0 0 0 16-3584 chrM 2389 0 0 0 0 0 0 0 16-3584 chrM 2390 0 0 0 0 0 0 0 16-3584 chrM 2391 0 0 0 0 0 0 0 16-3584 chrM 2392 0 0 0 0 0 0 0 16-3584 chrM 2393 0 0 0 0 0 0 0 16-3584 chrM 2394 0 0 0 0 0 0 0 16-3584 chrM 2395 0 0 0 0 0 0 0 16-3584 chrM 2396 0 0 0 0 0 0 0 16-3584 chrM 2397 0 0 0 0 0 0 0 16-3584 chrM 2398 0 0 0 0 0 0 0 16-3584 chrM 2399 0 0 0 0 0 0 0 16-3584 chrM 2400 0 0 0 0 0 0 0 16-3584 chrM 2401 0 0 0 0 0 0 0 16-3584 chrM 2402 0 0 0 0 0 0 0 16-3584 chrM 2403 0 0 0 0 0 0 0 16-3584 chrM 2404 0 0 0 0 0 0 0 16-3584 chrM 2405 0 0 0 0 0 0 0 16-3584 chrM 2406 0 0 0 0 0 0 0 16-3584 chrM 2407 0 0 0 0 0 0 0 16-3584 chrM 2408 0 0 0 0 0 0 0 16-3584 chrM 2409 0 0 0 0 0 0 0 16-3584 chrM 2410 0 0 0 0 0 0 0 16-3584 chrM 2411 0 0 0 0 0 0 0 16-3584 chrM 2412 0 0 0 0 0 0 0 16-3584 chrM 2413 0 0 0 0 0 0 0 16-3584 chrM 2414 0 0 0 0 0 0 0 16-3584 chrM 2415 0 0 0 0 0 0 0 16-3584 chrM 2416 0 0 0 0 0 0 0 16-3584 chrM 2417 0 0 0 0 0 0 0 16-3584 chrM 2418 0 0 0 0 0 0 0 16-3584 chrM 2419 0 0 0 0 0 0 0 16-3584 chrM 2420 0 0 0 0 0 0 0 16-3584 chrM 2421 0 0 0 0 0 0 0 16-3584 chrM 2422 0 0 0 0 0 0 0 16-3584 chrM 2423 0 0 0 0 0 0 0 16-3584 chrM 2424 0 0 0 0 0 0 0 16-3584 chrM 2425 0 0 0 0 0 0 0 16-3584 chrM 2426 0 0 0 0 0 0 0 16-3584 chrM 2427 0 0 0 0 0 0 0 16-3584 chrM 2428 0 0 0 0 0 0 0 16-3584 chrM 2429 0 0 0 0 0 0 0 16-3584 chrM 2430 0 0 0 0 0 0 0 16-3584 chrM 2431 0 0 0 0 0 0 0 16-3584 chrM 2432 0 0 0 0 0 0 0 16-3584 chrM 2433 0 0 0 0 0 0 0 16-3584 chrM 2434 0 0 0 0 0 0 0 16-3584 chrM 2435 0 0 0 0 0 0 0 16-3584 chrM 2436 0 0 0 0 0 0 0 16-3584 chrM 2437 0 0 0 0 0 0 0 16-3584 chrM 2438 0 0 0 0 0 0 0 16-3584 chrM 2439 0 0 0 0 0 0 0 16-3584 chrM 2440 0 0 0 0 0 0 0 16-3584 chrM 2441 0 0 0 0 0 0 0 16-3584 chrM 2442 0 0 0 0 0 0 0 16-3584 chrM 2443 0 0 0 0 0 0 0 16-3584 chrM 2444 0 0 0 0 0 0 0 16-3584 chrM 2445 0 0 0 0 0 0 0 16-3584 chrM 2446 0 0 0 0 0 0 0 16-3584 chrM 2447 0 0 0 0 0 0 0 16-3584 chrM 2448 0 0 0 0 0 0 0 16-3584 chrM 2449 0 0 0 0 0 0 0 16-3584 chrM 2450 0 0 0 0 0 0 0 16-3584 chrM 2451 0 0 0 0 0 0 0 16-3584 chrM 2452 0 0 0 0 0 0 0 16-3584 chrM 2453 0 0 0 0 0 0 0 16-3584 chrM 2454 0 0 0 0 0 0 0 16-3584 chrM 2455 0 0 0 0 0 0 0 16-3584 chrM 2456 0 0 0 0 0 0 0 16-3584 chrM 2457 0 0 0 0 0 0 0 16-3584 chrM 2458 0 0 0 0 0 0 0 16-3584 chrM 2459 0 0 0 0 0 0 0 16-3584 chrM 2460 0 0 0 0 0 0 0 16-3584 chrM 2461 0 0 0 0 0 0 0 16-3584 chrM 2462 0 0 0 0 0 0 0 16-3584 chrM 2463 0 0 0 0 0 0 0 16-3584 chrM 2464 0 0 0 0 0 0 0 16-3584 chrM 2465 0 0 0 0 0 0 0 16-3584 chrM 2466 0 0 0 0 0 0 0 16-3584 chrM 2467 0 0 0 0 0 0 0 16-3584 chrM 2468 0 0 0 0 0 0 0 16-3584 chrM 2469 0 0 0 0 0 0 0 16-3584 chrM 2470 0 0 0 0 0 0 0 16-3584 chrM 2471 0 0 0 0 0 0 0 16-3584 chrM 2472 0 0 0 0 0 0 0 16-3584 chrM 2473 0 0 0 0 0 0 0 16-3584 chrM 2474 0 0 0 0 0 0 0 16-3584 chrM 2475 0 0 0 0 0 0 0 16-3584 chrM 2476 0 0 0 0 0 0 0 16-3584 chrM 2477 0 0 0 0 0 0 0 16-3584 chrM 2478 0 0 0 0 0 0 0 16-3584 chrM 2479 0 0 0 0 0 0 0 16-3584 chrM 2480 0 0 0 0 0 0 0 16-3584 chrM 2481 0 0 0 0 0 0 0 16-3584 chrM 2482 0 0 0 0 0 0 0 16-3584 chrM 2483 0 0 0 0 0 0 0 16-3584 chrM 2484 0 0 0 0 0 0 0 16-3584 chrM 2485 0 0 0 0 0 0 0 16-3584 chrM 2486 0 0 0 0 0 0 0 16-3584 chrM 2487 0 0 0 0 0 0 0 16-3584 chrM 2488 0 0 0 0 0 0 0 16-3584 chrM 2489 0 0 0 0 0 0 0 16-3584 chrM 2490 0 0 0 0 0 0 0 16-3584 chrM 2491 0 0 0 0 0 0 0 16-3584 chrM 2492 0 0 0 0 0 0 0 16-3584 chrM 2493 0 0 0 0 0 0 0 16-3584 chrM 2494 0 0 0 0 0 0 0 16-3584 chrM 2495 0 0 0 0 0 0 0 16-3584 chrM 2496 0 0 0 0 0 0 0 16-3584 chrM 2497 0 0 0 0 0 0 0 16-3584 chrM 2498 0 0 0 0 0 0 0 16-3584 chrM 2499 0 0 0 0 0 0 0 16-3584 chrM 2500 0 0 0 0 0 0 0 16-3584 chrM 2501 0 0 0 0 0 0 0 16-3584 chrM 2502 0 0 0 0 0 0 0 16-3584 chrM 2503 0 0 0 0 0 0 0 16-3584 chrM 2504 0 0 0 0 0 0 0 16-3584 chrM 2505 0 0 0 0 0 0 0 16-3584 chrM 2506 0 0 0 0 0 0 0 16-3584 chrM 2507 0 0 0 0 0 0 0 16-3584 chrM 2508 0 0 0 0 0 0 0 16-3584 chrM 2509 0 0 0 0 0 0 0 16-3584 chrM 2510 0 0 0 0 0 0 0 16-3584 chrM 2511 0 0 0 0 0 0 0 16-3584 chrM 2512 0 0 0 0 0 0 0 16-3584 chrM 2513 0 0 0 0 0 0 0 16-3584 chrM 2514 0 0 0 0 0 0 0 16-3584 chrM 2515 0 0 0 0 0 0 0 16-3584 chrM 2516 0 0 0 0 0 0 0 16-3584 chrM 2517 0 0 0 0 0 0 0 16-3584 chrM 2518 0 0 0 0 0 0 0 16-3584 chrM 2519 0 0 0 0 0 0 0 16-3584 chrM 2520 0 0 0 0 0 0 0 16-3584 chrM 2521 0 0 0 0 0 0 0 16-3584 chrM 2522 0 0 0 0 0 0 0 16-3584 chrM 2523 0 0 0 0 0 0 0 16-3584 chrM 2524 0 0 0 0 0 0 0 16-3584 chrM 2525 0 0 0 0 0 0 0 16-3584 chrM 2526 0 0 0 0 0 0 0 16-3584 chrM 2527 0 0 0 0 0 0 0 16-3584 chrM 2528 0 0 0 0 0 0 0 16-3584 chrM 2529 0 0 0 0 0 0 0 16-3584 chrM 2530 0 0 0 0 0 0 0 16-3584 chrM 2531 0 0 0 0 0 0 0 16-3584 chrM 2532 0 0 0 0 0 0 0 16-3584 chrM 2533 0 0 0 0 0 0 0 16-3584 chrM 2534 0 0 0 0 0 0 0 16-3584 chrM 2535 0 0 0 0 0 0 0 16-3584 chrM 2536 0 0 0 0 0 0 0 16-3584 chrM 2537 0 0 0 0 0 0 0 16-3584 chrM 2538 0 0 0 0 0 0 0 16-3584 chrM 2539 0 0 0 0 0 0 0 16-3584 chrM 2540 0 0 0 0 0 0 0 16-3584 chrM 2541 0 0 0 0 0 0 0 16-3584 chrM 2542 0 0 0 0 0 0 0 16-3584 chrM 2543 0 0 0 0 0 0 0 16-3584 chrM 2544 0 0 0 0 0 0 0 16-3584 chrM 2545 0 0 0 0 0 0 0 16-3584 chrM 2546 0 0 0 0 0 0 0 16-3584 chrM 2547 0 0 0 0 0 0 0 16-3584 chrM 2548 0 0 0 0 0 0 0 16-3584 chrM 2549 0 0 0 0 0 0 0 16-3584 chrM 2550 0 0 0 0 0 0 0 16-3584 chrM 2551 0 0 0 0 0 0 0 16-3584 chrM 2552 0 0 0 0 0 0 0 16-3584 chrM 2553 0 0 0 0 0 0 0 16-3584 chrM 2554 0 0 0 0 0 0 0 16-3584 chrM 2555 0 0 0 0 0 0 0 16-3584 chrM 2556 0 0 0 0 0 0 0 16-3584 chrM 2557 0 0 0 0 0 0 0 16-3584 chrM 2558 0 0 0 0 0 0 0 16-3584 chrM 2559 0 0 0 0 0 0 0 16-3584 chrM 2560 0 0 0 0 0 0 0 16-3584 chrM 2561 0 0 0 0 0 0 0 16-3584 chrM 2562 0 0 0 0 0 0 0 16-3584 chrM 2563 0 0 0 0 0 0 0 16-3584 chrM 2564 0 0 0 0 0 0 0 16-3584 chrM 2565 0 0 0 0 0 0 0 16-3584 chrM 2566 0 0 0 0 0 0 0 16-3584 chrM 2567 0 0 0 0 0 0 0 16-3584 chrM 2568 0 0 0 0 0 0 0 16-3584 chrM 2569 0 0 0 0 0 0 0 16-3584 chrM 2570 0 0 0 0 0 0 0 16-3584 chrM 2571 0 0 0 0 0 0 0 16-3584 chrM 2572 0 0 0 0 0 0 0 16-3584 chrM 2573 0 0 0 0 0 0 0 16-3584 chrM 2574 0 0 0 0 0 0 0 16-3584 chrM 2575 0 0 0 0 0 0 0 16-3584 chrM 2576 0 0 0 0 0 0 0 16-3584 chrM 2577 0 0 0 0 0 0 0 16-3584 chrM 2578 0 0 0 0 0 0 0 16-3584 chrM 2579 0 0 0 0 0 0 0 16-3584 chrM 2580 0 0 0 0 0 0 0 16-3584 chrM 2581 0 0 0 0 0 0 0 16-3584 chrM 2582 0 0 0 0 0 0 0 16-3584 chrM 2583 0 0 0 0 0 0 0 16-3584 chrM 2584 0 0 0 0 0 0 0 16-3584 chrM 2585 0 0 0 0 0 0 0 16-3584 chrM 2586 0 0 0 0 0 0 0 16-3584 chrM 2587 0 0 0 0 0 0 0 16-3584 chrM 2588 0 0 0 0 0 0 0 16-3584 chrM 2589 0 0 0 0 0 0 0 16-3584 chrM 2590 0 0 0 0 0 0 0 16-3584 chrM 2591 0 0 0 0 0 0 0 16-3584 chrM 2592 0 0 0 0 0 0 0 16-3584 chrM 2593 0 0 0 0 0 0 0 16-3584 chrM 2594 0 0 0 0 0 0 0 16-3584 chrM 2595 0 0 0 0 0 0 0 16-3584 chrM 2596 0 0 0 0 0 0 0 16-3584 chrM 2597 0 0 0 0 0 0 0 16-3584 chrM 2598 0 0 0 0 0 0 0 16-3584 chrM 2599 0 0 0 0 0 0 0 16-3584 chrM 2600 0 0 0 0 0 0 0 16-3584 chrM 2601 0 0 0 0 0 0 0 16-3584 chrM 2602 0 0 0 0 0 0 0 16-3584 chrM 2603 0 0 0 0 0 0 0 16-3584 chrM 2604 0 0 0 0 0 0 0 16-3584 chrM 2605 0 0 0 0 0 0 0 16-3584 chrM 2606 0 0 0 0 0 0 0 16-3584 chrM 2607 0 0 0 0 0 0 0 16-3584 chrM 2608 0 0 0 0 0 0 0 16-3584 chrM 2609 0 0 0 0 0 0 0 16-3584 chrM 2610 0 0 0 0 0 0 0 16-3584 chrM 2611 0 0 0 0 0 0 0 16-3584 chrM 2612 0 0 0 0 0 0 0 16-3584 chrM 2613 0 0 0 0 0 0 0 16-3584 chrM 2614 0 0 0 0 0 0 0 16-3584 chrM 2615 0 0 0 0 0 0 0 16-3584 chrM 2616 0 0 0 0 0 0 0 16-3584 chrM 2617 0 0 0 0 0 0 0 16-3584 chrM 2618 0 0 0 0 0 0 0 16-3584 chrM 2619 0 0 0 0 0 0 0 16-3584 chrM 2620 0 0 0 0 0 0 0 16-3584 chrM 2621 0 0 0 0 0 0 0 16-3584 chrM 2622 0 0 0 0 0 0 0 16-3584 chrM 2623 0 0 0 0 0 0 0 16-3584 chrM 2624 0 0 0 0 0 0 0 16-3584 chrM 2625 0 0 0 0 0 0 0 16-3584 chrM 2626 0 0 0 0 0 0 0 16-3584 chrM 2627 0 0 0 0 0 0 0 16-3584 chrM 2628 0 0 0 0 0 0 0 16-3584 chrM 2629 0 0 0 0 0 0 0 16-3584 chrM 2630 0 0 0 0 0 0 0 16-3584 chrM 2631 0 0 0 0 0 0 0 16-3584 chrM 2632 0 0 0 0 0 0 0 16-3584 chrM 2633 0 0 0 0 0 0 0 16-3584 chrM 2634 0 0 0 0 0 0 0 16-3584 chrM 2635 0 0 0 0 0 0 0 16-3584 chrM 2636 0 0 0 0 0 0 0 16-3584 chrM 2637 0 0 0 0 0 0 0 16-3584 chrM 2638 0 0 0 0 0 0 0 16-3584 chrM 2639 0 0 0 0 0 0 0 16-3584 chrM 2640 0 0 0 0 0 0 0 16-3584 chrM 2641 0 0 0 0 0 0 0 16-3584 chrM 2642 0 0 0 0 0 0 0 16-3584 chrM 2643 0 0 0 0 0 0 0 16-3584 chrM 2644 0 0 0 0 0 0 0 16-3584 chrM 2645 0 0 0 0 0 0 0 16-3584 chrM 2646 0 0 0 0 0 0 0 16-3584 chrM 2647 0 0 0 0 0 0 0 16-3584 chrM 2648 0 0 0 0 0 0 0 16-3584 chrM 2649 0 0 0 0 0 0 0 16-3584 chrM 2650 0 0 0 0 0 0 0 16-3584 chrM 2651 0 0 0 0 0 0 0 16-3584 chrM 2652 0 0 0 0 0 0 0 16-3584 chrM 2653 0 0 0 0 0 0 0 16-3584 chrM 2654 0 0 0 0 0 0 0 16-3584 chrM 2655 0 0 0 0 0 0 0 16-3584 chrM 2656 0 0 0 0 0 0 0 16-3584 chrM 2657 0 0 0 0 0 0 0 16-3584 chrM 2658 0 0 0 0 0 0 0 16-3584 chrM 2659 0 0 0 0 0 0 0 16-3584 chrM 2660 0 0 0 0 0 0 0 16-3584 chrM 2661 0 0 0 0 0 0 0 16-3584 chrM 2662 0 0 0 0 0 0 0 16-3584 chrM 2663 0 0 0 0 0 0 0 16-3584 chrM 2664 0 0 0 0 0 0 0 16-3584 chrM 2665 0 0 0 0 0 0 0 16-3584 chrM 2666 0 0 0 0 0 0 0 16-3584 chrM 2667 0 0 0 0 0 0 0 16-3584 chrM 2668 0 0 0 0 0 0 0 16-3584 chrM 2669 0 0 0 0 0 0 0 16-3584 chrM 2670 0 0 0 0 0 0 0 16-3584 chrM 2671 0 0 0 0 0 0 0 16-3584 chrM 2672 0 0 0 0 0 0 0 16-3584 chrM 2673 0 0 0 0 0 0 0 16-3584 chrM 2674 0 0 0 0 0 0 0 16-3584 chrM 2675 0 0 0 0 0 0 0 16-3584 chrM 2676 0 0 0 0 0 0 0 16-3584 chrM 2677 0 0 0 0 0 0 0 16-3584 chrM 2678 0 0 0 0 0 0 0 16-3584 chrM 2679 0 0 0 0 0 0 0 16-3584 chrM 2680 0 0 0 0 0 0 0 16-3584 chrM 2681 0 0 0 0 0 0 0 16-3584 chrM 2682 0 0 0 0 0 0 0 16-3584 chrM 2683 0 0 0 0 0 0 0 16-3584 chrM 2684 0 0 0 0 0 0 0 16-3584 chrM 2685 0 0 0 0 0 0 0 16-3584 chrM 2686 0 0 0 0 0 0 0 16-3584 chrM 2687 0 0 0 0 0 0 0 16-3584 chrM 2688 0 0 0 0 0 0 0 16-3584 chrM 2689 0 0 0 0 0 0 0 16-3584 chrM 2690 0 0 0 0 0 0 0 16-3584 chrM 2691 0 0 0 0 0 0 0 16-3584 chrM 2692 0 0 0 0 0 0 0 16-3584 chrM 2693 0 0 0 0 0 0 0 16-3584 chrM 2694 0 0 0 0 0 0 0 16-3584 chrM 2695 0 0 0 0 0 0 0 16-3584 chrM 2696 0 0 0 0 0 0 0 16-3584 chrM 2697 0 0 0 0 0 0 0 16-3584 chrM 2698 0 0 0 0 0 0 0 16-3584 chrM 2699 0 0 0 0 0 0 0 16-3584 chrM 2700 0 0 0 0 0 0 0 16-3584 chrM 2701 0 0 0 0 0 0 0 16-3584 chrM 2702 0 0 0 0 0 0 0 16-3584 chrM 2703 0 0 0 0 0 0 0 16-3584 chrM 2704 0 0 0 0 0 0 0 16-3584 chrM 2705 0 0 0 0 0 0 0 16-3584 chrM 2706 0 0 0 0 0 0 0 16-3584 chrM 2707 0 0 0 0 0 0 0 16-3584 chrM 2708 0 0 0 0 0 0 0 16-3584 chrM 2709 0 0 0 0 0 0 0 16-3584 chrM 2710 0 0 0 0 0 0 0 16-3584 chrM 2711 0 0 0 0 0 0 0 16-3584 chrM 2712 0 0 0 0 0 0 0 16-3584 chrM 2713 0 0 0 0 0 0 0 16-3584 chrM 2714 0 0 0 0 0 0 0 16-3584 chrM 2715 0 0 0 0 0 0 0 16-3584 chrM 2716 0 0 0 0 0 0 0 16-3584 chrM 2717 0 0 0 0 0 0 0 16-3584 chrM 2718 0 0 0 0 0 0 0 16-3584 chrM 2719 0 0 0 0 0 0 0 16-3584 chrM 2720 0 0 0 0 0 0 0 16-3584 chrM 2721 0 0 0 0 0 0 0 16-3584 chrM 2722 0 0 0 0 0 0 0 16-3584 chrM 2723 0 0 0 0 0 0 0 16-3584 chrM 2724 0 0 0 0 0 0 0 16-3584 chrM 2725 0 0 0 0 0 0 0 16-3584 chrM 2726 0 0 0 0 0 0 0 16-3584 chrM 2727 0 0 0 0 0 0 0 16-3584 chrM 2728 0 0 0 0 0 0 0 16-3584 chrM 2729 0 0 0 0 0 0 0 16-3584 chrM 2730 0 0 0 0 0 0 0 16-3584 chrM 2731 0 0 0 0 0 0 0 16-3584 chrM 2732 0 0 0 0 0 0 0 16-3584 chrM 2733 0 0 0 0 0 0 0 16-3584 chrM 2734 0 0 0 0 0 0 0 16-3584 chrM 2735 0 0 0 0 0 0 0 16-3584 chrM 2736 0 0 0 0 0 0 0 16-3584 chrM 2737 0 0 0 0 0 0 0 16-3584 chrM 2738 0 0 0 0 0 0 0 16-3584 chrM 2739 0 0 0 0 0 0 0 16-3584 chrM 2740 0 0 0 0 0 0 0 16-3584 chrM 2741 0 0 0 0 0 0 0 16-3584 chrM 2742 0 0 0 0 0 0 0 16-3584 chrM 2743 0 0 0 0 0 0 0 16-3584 chrM 2744 0 0 0 0 0 0 0 16-3584 chrM 2745 0 0 0 0 0 0 0 16-3584 chrM 2746 0 0 0 0 0 0 0 16-3584 chrM 2747 0 0 0 0 0 0 0 16-3584 chrM 2748 0 0 0 0 0 0 0 16-3584 chrM 2749 0 0 0 0 0 0 0 16-3584 chrM 2750 0 0 0 0 0 0 0 16-3584 chrM 2751 0 0 0 0 0 0 0 16-3584 chrM 2752 0 0 0 0 0 0 0 16-3584 chrM 2753 0 0 0 0 0 0 0 16-3584 chrM 2754 0 0 0 0 0 0 0 16-3584 chrM 2755 0 0 0 0 0 0 0 16-3584 chrM 2756 0 0 0 0 0 0 0 16-3584 chrM 2757 0 0 0 0 0 0 0 16-3584 chrM 2758 0 0 0 0 0 0 0 16-3584 chrM 2759 0 0 0 0 0 0 0 16-3584 chrM 2760 0 0 0 0 0 0 0 16-3584 chrM 2761 0 0 0 0 0 0 0 16-3584 chrM 2762 0 0 0 0 0 0 0 16-3584 chrM 2763 0 0 0 0 0 0 0 16-3584 chrM 2764 0 0 0 0 0 0 0 16-3584 chrM 2765 0 0 0 0 0 0 0 16-3584 chrM 2766 0 0 0 0 0 0 0 16-3584 chrM 2767 0 0 0 0 0 0 0 16-3584 chrM 2768 0 0 0 0 0 0 0 16-3584 chrM 2769 0 0 0 0 0 0 0 16-3584 chrM 2770 0 0 0 0 0 0 0 16-3584 chrM 2771 0 0 0 0 0 0 0 16-3584 chrM 2772 0 0 0 0 0 0 0 16-3584 chrM 2773 0 0 0 0 0 0 0 16-3584 chrM 2774 0 0 0 0 0 0 0 16-3584 chrM 2775 0 0 0 0 0 0 0 16-3584 chrM 2776 0 0 0 0 0 0 0 16-3584 chrM 2777 0 0 0 0 0 0 0 16-3584 chrM 2778 0 0 0 0 0 0 0 16-3584 chrM 2779 0 0 0 0 0 0 0 16-3584 chrM 2780 0 0 0 0 0 0 0 16-3584 chrM 2781 0 0 0 0 0 0 0 16-3584 chrM 2782 0 0 0 0 0 0 0 16-3584 chrM 2783 0 0 0 0 0 0 0 16-3584 chrM 2784 0 0 0 0 0 0 0 16-3584 chrM 2785 0 0 0 0 0 0 0 16-3584 chrM 2786 0 0 0 0 0 0 0 16-3584 chrM 2787 0 0 0 0 0 0 0 16-3584 chrM 2788 0 0 0 0 0 0 0 16-3584 chrM 2789 0 0 0 0 0 0 0 16-3584 chrM 2790 0 0 0 0 0 0 0 16-3584 chrM 2791 0 0 0 0 0 0 0 16-3584 chrM 2792 0 0 0 0 0 0 0 16-3584 chrM 2793 0 0 0 0 0 0 0 16-3584 chrM 2794 0 0 0 0 0 0 0 16-3584 chrM 2795 0 0 0 0 0 0 0 16-3584 chrM 2796 0 0 0 0 0 0 0 16-3584 chrM 2797 0 0 0 0 0 0 0 16-3584 chrM 2798 0 0 0 0 0 0 0 16-3584 chrM 2799 0 0 0 0 0 0 0 16-3584 chrM 2800 0 0 0 0 0 0 0 16-3584 chrM 2801 0 0 0 0 0 0 0 16-3584 chrM 2802 0 0 0 0 0 0 0 16-3584 chrM 2803 0 0 0 0 0 0 0 16-3584 chrM 2804 0 0 0 0 0 0 0 16-3584 chrM 2805 0 0 0 0 0 0 0 16-3584 chrM 2806 0 0 0 0 0 0 0 16-3584 chrM 2807 0 0 0 0 0 0 0 16-3584 chrM 2808 0 0 0 0 0 0 0 16-3584 chrM 2809 0 0 0 0 0 0 0 16-3584 chrM 2810 0 0 0 0 0 0 0 16-3584 chrM 2811 0 0 0 0 0 0 0 16-3584 chrM 2812 0 0 0 0 0 0 0 16-3584 chrM 2813 0 0 0 0 0 0 0 16-3584 chrM 2814 0 0 0 0 0 0 0 16-3584 chrM 2815 0 0 0 0 0 0 0 16-3584 chrM 2816 0 0 0 0 0 0 0 16-3584 chrM 2817 0 0 0 0 0 0 0 16-3584 chrM 2818 0 0 0 0 0 0 0 16-3584 chrM 2819 0 0 0 0 0 0 0 16-3584 chrM 2820 0 0 0 0 0 0 0 16-3584 chrM 2821 0 0 0 0 0 0 0 16-3584 chrM 2822 0 0 0 0 0 0 0 16-3584 chrM 2823 0 0 0 0 0 0 0 16-3584 chrM 2824 0 0 0 0 0 0 0 16-3584 chrM 2825 0 0 0 0 0 0 0 16-3584 chrM 2826 0 0 0 0 0 0 0 16-3584 chrM 2827 0 0 0 0 0 0 0 16-3584 chrM 2828 0 0 0 0 0 0 0 16-3584 chrM 2829 0 0 0 0 0 0 0 16-3584 chrM 2830 0 0 0 0 0 0 0 16-3584 chrM 2831 0 0 0 0 0 0 0 16-3584 chrM 2832 0 0 0 0 0 0 0 16-3584 chrM 2833 0 0 0 0 0 0 0 16-3584 chrM 2834 0 0 0 0 0 0 0 16-3584 chrM 2835 0 0 0 0 0 0 0 16-3584 chrM 2836 0 0 0 0 0 0 0 16-3584 chrM 2837 0 0 0 0 0 0 0 16-3584 chrM 2838 0 0 0 0 0 0 0 16-3584 chrM 2839 0 0 0 0 0 0 0 16-3584 chrM 2840 0 0 0 0 0 0 0 16-3584 chrM 2841 0 0 0 0 0 0 0 16-3584 chrM 2842 0 0 0 0 0 0 0 16-3584 chrM 2843 0 0 0 0 0 0 0 16-3584 chrM 2844 0 0 0 0 0 0 0 16-3584 chrM 2845 0 0 0 0 0 0 0 16-3584 chrM 2846 0 0 0 0 0 0 0 16-3584 chrM 2847 0 0 0 0 0 0 0 16-3584 chrM 2848 0 0 0 0 0 0 0 16-3584 chrM 2849 0 0 0 0 0 0 0 16-3584 chrM 2850 0 0 0 0 0 0 0 16-3584 chrM 2851 0 0 0 0 0 0 0 16-3584 chrM 2852 0 0 0 0 0 0 0 16-3584 chrM 2853 0 0 0 0 0 0 0 16-3584 chrM 2854 0 0 0 0 0 0 0 16-3584 chrM 2855 0 0 0 0 0 0 0 16-3584 chrM 2856 0 0 0 0 0 0 0 16-3584 chrM 2857 0 0 0 0 0 0 0 16-3584 chrM 2858 0 0 0 0 0 0 0 16-3584 chrM 2859 0 0 0 0 0 0 0 16-3584 chrM 2860 0 0 0 0 0 0 0 16-3584 chrM 2861 0 0 0 0 0 0 0 16-3584 chrM 2862 0 0 0 0 0 0 0 16-3584 chrM 2863 0 0 0 0 0 0 0 16-3584 chrM 2864 0 0 0 0 0 0 0 16-3584 chrM 2865 0 0 0 0 0 0 0 16-3584 chrM 2866 0 0 0 0 0 0 0 16-3584 chrM 2867 0 0 0 0 0 0 0 16-3584 chrM 2868 0 0 0 0 0 0 0 16-3584 chrM 2869 0 0 0 0 0 0 0 16-3584 chrM 2870 0 0 0 0 0 0 0 16-3584 chrM 2871 0 0 0 0 0 0 0 16-3584 chrM 2872 0 0 0 0 0 0 0 16-3584 chrM 2873 0 0 0 0 0 0 0 16-3584 chrM 2874 0 0 0 0 0 0 0 16-3584 chrM 2875 0 0 0 0 0 0 0 16-3584 chrM 2876 0 0 0 0 0 0 0 16-3584 chrM 2877 0 0 0 0 0 0 0 16-3584 chrM 2878 0 0 0 0 0 0 0 16-3584 chrM 2879 0 0 0 0 0 0 0 16-3584 chrM 2880 0 0 0 0 0 0 0 16-3584 chrM 2881 0 0 0 0 0 0 0 16-3584 chrM 2882 0 0 0 0 0 0 0 16-3584 chrM 2883 0 0 0 0 0 0 0 16-3584 chrM 2884 0 0 0 0 0 0 0 16-3584 chrM 2885 0 0 0 0 0 0 0 16-3584 chrM 2886 0 0 0 0 0 0 0 16-3584 chrM 2887 0 0 0 0 0 0 0 16-3584 chrM 2888 0 0 0 0 0 0 0 16-3584 chrM 2889 0 0 0 0 0 0 0 16-3584 chrM 2890 0 0 0 0 0 0 0 16-3584 chrM 2891 0 0 0 0 0 0 0 16-3584 chrM 2892 0 0 0 0 0 0 0 16-3584 chrM 2893 0 0 0 0 0 0 0 16-3584 chrM 2894 0 0 0 0 0 0 0 16-3584 chrM 2895 0 0 0 0 0 0 0 16-3584 chrM 2896 0 0 0 0 0 0 0 16-3584 chrM 2897 0 0 0 0 0 0 0 16-3584 chrM 2898 0 0 0 0 0 0 0 16-3584 chrM 2899 0 0 0 0 0 0 0 16-3584 chrM 2900 0 0 0 0 0 0 0 16-3584 chrM 2901 0 0 0 0 0 0 0 16-3584 chrM 2902 0 0 0 0 0 0 0 16-3584 chrM 2903 0 0 0 0 0 0 0 16-3584 chrM 2904 0 0 0 0 0 0 0 16-3584 chrM 2905 0 0 0 0 0 0 0 16-3584 chrM 2906 0 0 0 0 0 0 0 16-3584 chrM 2907 0 0 0 0 0 0 0 16-3584 chrM 2908 0 0 0 0 0 0 0 16-3584 chrM 2909 0 0 0 0 0 0 0 16-3584 chrM 2910 0 0 0 0 0 0 0 16-3584 chrM 2911 0 0 0 0 0 0 0 16-3584 chrM 2912 0 0 0 0 0 0 0 16-3584 chrM 2913 0 0 0 0 0 0 0 16-3584 chrM 2914 0 0 0 0 0 0 0 16-3584 chrM 2915 0 0 0 0 0 0 0 16-3584 chrM 2916 0 0 0 0 0 0 0 16-3584 chrM 2917 0 0 0 0 0 0 0 16-3584 chrM 2918 0 0 0 0 0 0 0 16-3584 chrM 2919 0 0 0 0 0 0 0 16-3584 chrM 2920 0 0 0 0 0 0 0 16-3584 chrM 2921 0 0 0 0 0 0 0 16-3584 chrM 2922 0 0 0 0 0 0 0 16-3584 chrM 2923 0 0 0 0 0 0 0 16-3584 chrM 2924 0 0 0 0 0 0 0 16-3584 chrM 2925 0 0 0 0 0 0 0 16-3584 chrM 2926 0 0 0 0 0 0 0 16-3584 chrM 2927 0 0 0 0 0 0 0 16-3584 chrM 2928 0 0 0 0 0 0 0 16-3584 chrM 2929 0 0 0 0 0 0 0 16-3584 chrM 2930 0 0 0 0 0 0 0 16-3584 chrM 2931 0 0 0 0 0 0 0 16-3584 chrM 2932 0 0 0 0 0 0 0 16-3584 chrM 2933 0 0 0 0 0 0 0 16-3584 chrM 2934 0 0 0 0 0 0 0 16-3584 chrM 2935 0 0 0 0 0 0 0 16-3584 chrM 2936 0 0 0 0 0 0 0 16-3584 chrM 2937 0 0 0 0 0 0 0 16-3584 chrM 2938 0 0 0 0 0 0 0 16-3584 chrM 2939 0 0 0 0 0 0 0 16-3584 chrM 2940 0 0 0 0 0 0 0 16-3584 chrM 2941 0 0 0 0 0 0 0 16-3584 chrM 2942 0 0 0 0 0 0 0 16-3584 chrM 2943 0 0 0 0 0 0 0 16-3584 chrM 2944 0 0 0 0 0 0 0 16-3584 chrM 2945 0 0 0 0 0 0 0 16-3584 chrM 2946 0 0 0 0 0 0 0 16-3584 chrM 2947 0 0 0 0 0 0 0 16-3584 chrM 2948 0 0 0 0 0 0 0 16-3584 chrM 2949 0 0 0 0 0 0 0 16-3584 chrM 2950 0 0 0 0 0 0 0 16-3584 chrM 2951 0 0 0 0 0 0 0 16-3584 chrM 2952 0 0 0 0 0 0 0 16-3584 chrM 2953 0 0 0 0 0 0 0 16-3584 chrM 2954 0 0 0 0 0 0 0 16-3584 chrM 2955 0 0 0 0 0 0 0 16-3584 chrM 2956 0 0 0 0 0 0 0 16-3584 chrM 2957 0 0 0 0 0 0 0 16-3584 chrM 2958 0 0 0 0 0 0 0 16-3584 chrM 2959 0 0 0 0 0 0 0 16-3584 chrM 2960 0 0 0 0 0 0 0 16-3584 chrM 2961 0 0 0 0 0 0 0 16-3584 chrM 2962 0 0 0 0 0 0 0 16-3584 chrM 2963 0 0 0 0 0 0 0 16-3584 chrM 2964 0 0 0 0 0 0 0 16-3584 chrM 2965 0 0 0 0 0 0 0 16-3584 chrM 2966 0 0 0 0 0 0 0 16-3584 chrM 2967 0 0 0 0 0 0 0 16-3584 chrM 2968 0 0 0 0 0 0 0 16-3584 chrM 2969 0 0 0 0 0 0 0 16-3584 chrM 2970 0 0 0 0 0 0 0 16-3584 chrM 2971 0 0 0 0 0 0 0 16-3584 chrM 2972 0 0 0 0 0 0 0 16-3584 chrM 2973 0 0 0 0 0 0 0 16-3584 chrM 2974 0 0 0 0 0 0 0 16-3584 chrM 2975 0 0 0 0 0 0 0 16-3584 chrM 2976 0 0 0 0 0 0 0 16-3584 chrM 2977 0 0 0 0 0 0 0 16-3584 chrM 2978 0 0 0 0 0 0 0 16-3584 chrM 2979 0 0 0 0 0 0 0 16-3584 chrM 2980 0 0 0 0 0 0 0 16-3584 chrM 2981 0 0 0 0 0 0 0 16-3584 chrM 2982 0 0 0 0 0 0 0 16-3584 chrM 2983 0 0 0 0 0 0 0 16-3584 chrM 2984 0 0 0 0 0 0 0 16-3584 chrM 2985 0 0 0 0 0 0 0 16-3584 chrM 2986 0 0 0 0 0 0 0 16-3584 chrM 2987 0 0 0 0 0 0 0 16-3584 chrM 2988 0 0 0 0 0 0 0 16-3584 chrM 2989 0 0 0 0 0 0 0 16-3584 chrM 2990 0 0 0 0 0 0 0 16-3584 chrM 2991 0 0 0 0 0 0 0 16-3584 chrM 2992 0 0 0 0 0 0 0 16-3584 chrM 2993 0 0 0 0 0 0 0 16-3584 chrM 2994 0 0 0 0 0 0 0 16-3584 chrM 2995 0 0 0 0 0 0 0 16-3584 chrM 2996 0 0 0 0 0 0 0 16-3584 chrM 2997 0 0 0 0 0 0 0 16-3584 chrM 2998 0 0 0 0 0 0 0 16-3584 chrM 2999 0 0 0 0 0 0 0 16-3584 chrM 3000 0 0 0 0 0 0 0 16-3584 chrM 3001 0 0 0 0 0 0 0 16-3584 chrM 3002 0 0 0 0 0 0 0 16-3584 chrM 3003 0 0 0 0 0 0 0 16-3584 chrM 3004 0 0 0 0 0 0 0 16-3584 chrM 3005 0 0 0 0 0 0 0 16-3584 chrM 3006 0 0 0 0 0 0 0 16-3584 chrM 3007 0 0 0 0 0 0 0 16-3584 chrM 3008 0 0 0 0 0 0 0 16-3584 chrM 3009 0 0 0 0 0 0 0 16-3584 chrM 3010 0 0 0 0 0 0 0 16-3584 chrM 3011 0 0 0 0 0 0 0 16-3584 chrM 3012 0 0 0 0 0 0 0 16-3584 chrM 3013 0 0 0 0 0 0 0 16-3584 chrM 3014 0 0 0 0 0 0 0 16-3584 chrM 3015 0 0 0 0 0 0 0 16-3584 chrM 3016 0 0 0 0 0 0 0 16-3584 chrM 3017 0 0 0 0 0 0 0 16-3584 chrM 3018 0 0 0 0 0 0 0 16-3584 chrM 3019 0 0 0 0 0 0 0 16-3584 chrM 3020 0 0 0 0 0 0 0 16-3584 chrM 3021 0 0 0 0 0 0 0 16-3584 chrM 3022 0 0 0 0 0 0 0 16-3584 chrM 3023 0 0 0 0 0 0 0 16-3584 chrM 3024 0 0 0 0 0 0 0 16-3584 chrM 3025 0 0 0 0 0 0 0 16-3584 chrM 3026 0 0 0 0 0 0 0 16-3584 chrM 3027 0 0 0 0 0 0 0 16-3584 chrM 3028 0 0 0 0 0 0 0 16-3584 chrM 3029 0 0 0 0 0 0 0 16-3584 chrM 3030 0 0 0 0 0 0 0 16-3584 chrM 3031 0 0 0 0 0 0 0 16-3584 chrM 3032 0 0 0 0 0 0 0 16-3584 chrM 3033 0 0 0 0 0 0 0 16-3584 chrM 3034 0 0 0 0 0 0 0 16-3584 chrM 3035 0 0 0 0 0 0 0 16-3584 chrM 3036 0 0 0 0 0 0 0 16-3584 chrM 3037 0 0 0 0 0 0 0 16-3584 chrM 3038 0 0 0 0 0 0 0 16-3584 chrM 3039 0 0 0 0 0 0 0 16-3584 chrM 3040 0 0 0 0 0 0 0 16-3584 chrM 3041 0 0 0 0 0 0 0 16-3584 chrM 3042 0 0 0 0 0 0 0 16-3584 chrM 3043 0 0 0 0 0 0 0 16-3584 chrM 3044 0 0 0 0 0 0 0 16-3584 chrM 3045 0 0 0 0 0 0 0 16-3584 chrM 3046 0 0 0 0 0 0 0 16-3584 chrM 3047 0 0 0 0 0 0 0 16-3584 chrM 3048 0 0 0 0 0 0 0 16-3584 chrM 3049 0 0 0 0 0 0 0 16-3584 chrM 3050 0 0 0 0 0 0 0 16-3584 chrM 3051 0 0 0 0 0 0 0 16-3584 chrM 3052 0 0 0 0 0 0 0 16-3584 chrM 3053 0 0 0 0 0 0 0 16-3584 chrM 3054 0 0 0 0 0 0 0 16-3584 chrM 3055 0 0 0 0 0 0 0 16-3584 chrM 3056 0 0 0 0 0 0 0 16-3584 chrM 3057 0 0 0 0 0 0 0 16-3584 chrM 3058 0 0 0 0 0 0 0 16-3584 chrM 3059 0 0 0 0 0 0 0 16-3584 chrM 3060 0 0 0 0 0 0 0 16-3584 chrM 3061 0 0 0 0 0 0 0 16-3584 chrM 3062 0 0 0 0 0 0 0 16-3584 chrM 3063 0 0 0 0 0 0 0 16-3584 chrM 3064 0 0 0 0 0 0 0 16-3584 chrM 3065 0 0 0 0 0 0 0 16-3584 chrM 3066 0 0 0 0 0 0 0 16-3584 chrM 3067 0 0 0 0 0 0 0 16-3584 chrM 3068 0 0 0 0 0 0 0 16-3584 chrM 3069 0 0 0 0 0 0 0 16-3584 chrM 3070 0 0 0 0 0 0 0 16-3584 chrM 3071 0 0 0 0 0 0 0 16-3584 chrM 3072 0 0 0 0 0 0 0 16-3584 chrM 3073 0 0 0 0 0 0 0 16-3584 chrM 3074 0 0 0 0 0 0 0 16-3584 chrM 3075 0 0 0 0 0 0 0 16-3584 chrM 3076 0 0 0 0 0 0 0 16-3584 chrM 3077 0 0 0 0 0 0 0 16-3584 chrM 3078 0 0 0 0 0 0 0 16-3584 chrM 3079 0 0 0 0 0 0 0 16-3584 chrM 3080 0 0 0 0 0 0 0 16-3584 chrM 3081 0 0 0 0 0 0 0 16-3584 chrM 3082 0 0 0 0 0 0 0 16-3584 chrM 3083 0 0 0 0 0 0 0 16-3584 chrM 3084 0 0 0 0 0 0 0 16-3584 chrM 3085 0 0 0 0 0 0 0 16-3584 chrM 3086 0 0 0 0 0 0 0 16-3584 chrM 3087 0 0 0 0 0 0 0 16-3584 chrM 3088 0 0 0 0 0 0 0 16-3584 chrM 3089 0 0 0 0 0 0 0 16-3584 chrM 3090 0 0 0 0 0 0 0 16-3584 chrM 3091 0 0 0 0 0 0 0 16-3584 chrM 3092 0 0 0 0 0 0 0 16-3584 chrM 3093 0 0 0 0 0 0 0 16-3584 chrM 3094 0 0 0 0 0 0 0 16-3584 chrM 3095 0 0 0 0 0 0 0 16-3584 chrM 3096 0 0 0 0 0 0 0 16-3584 chrM 3097 0 0 0 0 0 0 0 16-3584 chrM 3098 0 0 0 0 0 0 0 16-3584 chrM 3099 0 0 0 0 0 0 0 16-3584 chrM 3100 0 0 0 0 0 0 0 16-3584 chrM 3101 0 0 0 0 0 0 0 16-3584 chrM 3102 0 0 0 0 0 0 0 16-3584 chrM 3103 0 0 0 0 0 0 0 16-3584 chrM 3104 0 0 0 0 0 0 0 16-3584 chrM 3105 0 0 0 0 0 0 0 16-3584 chrM 3106 0 0 0 0 0 0 0 16-3584 chrM 3107 0 0 0 0 0 0 0 16-3584 chrM 3108 0 0 0 0 0 0 0 16-3584 chrM 3109 0 0 0 0 0 0 0 16-3584 chrM 3110 0 0 0 0 0 0 0 16-3584 chrM 3111 0 0 0 0 0 0 0 16-3584 chrM 3112 0 0 0 0 0 0 0 16-3584 chrM 3113 0 0 0 0 0 0 0 16-3584 chrM 3114 0 0 0 0 0 0 0 16-3584 chrM 3115 0 0 0 0 0 0 0 16-3584 chrM 3116 0 0 0 0 0 0 0 16-3584 chrM 3117 0 0 0 0 0 0 0 16-3584 chrM 3118 0 0 0 0 0 0 0 16-3584 chrM 3119 0 0 0 0 0 0 0 16-3584 chrM 3120 0 0 0 0 0 0 0 16-3584 chrM 3121 0 0 0 0 0 0 0 16-3584 chrM 3122 0 0 0 0 0 0 0 16-3584 chrM 3123 0 0 0 0 0 0 0 16-3584 chrM 3124 0 0 0 0 0 0 0 16-3584 chrM 3125 0 0 0 0 0 0 0 16-3584 chrM 3126 0 0 0 0 0 0 0 16-3584 chrM 3127 0 0 0 0 0 0 0 16-3584 chrM 3128 0 0 0 0 0 0 0 16-3584 chrM 3129 0 0 0 0 0 0 0 16-3584 chrM 3130 0 0 0 0 0 0 0 16-3584 chrM 3131 0 0 0 0 0 0 0 16-3584 chrM 3132 0 0 0 0 0 0 0 16-3584 chrM 3133 0 0 0 0 0 0 0 16-3584 chrM 3134 0 0 0 0 0 0 0 16-3584 chrM 3135 0 0 0 0 0 0 0 16-3584 chrM 3136 0 0 0 0 0 0 0 16-3584 chrM 3137 0 0 0 0 0 0 0 16-3584 chrM 3138 0 0 0 0 0 0 0 16-3584 chrM 3139 0 0 0 0 0 0 0 16-3584 chrM 3140 0 0 0 0 0 0 0 16-3584 chrM 3141 0 0 0 0 0 0 0 16-3584 chrM 3142 0 0 0 0 0 0 0 16-3584 chrM 3143 0 0 0 0 0 0 0 16-3584 chrM 3144 0 0 0 0 0 0 0 16-3584 chrM 3145 0 0 0 0 0 0 0 16-3584 chrM 3146 0 0 0 0 0 0 0 16-3584 chrM 3147 0 0 0 0 0 0 0 16-3584 chrM 3148 0 0 0 0 0 0 0 16-3584 chrM 3149 0 0 0 0 0 0 0 16-3584 chrM 3150 0 0 0 0 0 0 0 16-3584 chrM 3151 0 0 0 0 0 0 0 16-3584 chrM 3152 0 0 0 0 0 0 0 16-3584 chrM 3153 0 0 0 0 0 0 0 16-3584 chrM 3154 0 0 0 0 0 0 0 16-3584 chrM 3155 0 0 0 0 0 0 0 16-3584 chrM 3156 0 0 0 0 0 0 0 16-3584 chrM 3157 0 0 0 0 0 0 0 16-3584 chrM 3158 0 0 0 0 0 0 0 16-3584 chrM 3159 0 0 0 0 0 0 0 16-3584 chrM 3160 0 0 0 0 0 0 0 16-3584 chrM 3161 0 0 0 0 0 0 0 16-3584 chrM 3162 0 0 0 0 0 0 0 16-3584 chrM 3163 0 0 0 0 0 0 0 16-3584 chrM 3164 0 0 0 0 0 0 0 16-3584 chrM 3165 0 0 0 0 0 0 0 16-3584 chrM 3166 0 0 0 0 0 0 0 16-3584 chrM 3167 0 0 0 0 0 0 0 16-3584 chrM 3168 0 0 0 0 0 0 0 16-3584 chrM 3169 0 0 0 0 0 0 0 16-3584 chrM 3170 0 0 0 0 0 0 0 16-3584 chrM 3171 0 0 0 0 0 0 0 16-3584 chrM 3172 0 0 0 0 0 0 0 16-3584 chrM 3173 0 0 0 0 0 0 0 16-3584 chrM 3174 0 0 0 0 0 0 0 16-3584 chrM 3175 0 0 0 0 0 0 0 16-3584 chrM 3176 0 0 0 0 0 0 0 16-3584 chrM 3177 0 0 0 0 0 0 0 16-3584 chrM 3178 0 0 0 0 0 0 0 16-3584 chrM 3179 0 0 0 0 0 0 0 16-3584 chrM 3180 0 0 0 0 0 0 0 16-3584 chrM 3181 0 0 0 0 0 0 0 16-3584 chrM 3182 0 0 0 0 0 0 0 16-3584 chrM 3183 0 0 0 0 0 0 0 16-3584 chrM 3184 0 0 0 0 0 0 0 16-3584 chrM 3185 0 0 0 0 0 0 0 16-3584 chrM 3186 0 0 0 0 0 0 0 16-3584 chrM 3187 0 0 0 0 0 0 0 16-3584 chrM 3188 0 0 0 0 0 0 0 16-3584 chrM 3189 0 0 0 0 0 0 0 16-3584 chrM 3190 0 0 0 0 0 0 0 16-3584 chrM 3191 0 0 0 0 0 0 0 16-3584 chrM 3192 0 0 0 0 0 0 0 16-3584 chrM 3193 0 0 0 0 0 0 0 16-3584 chrM 3194 0 0 0 0 0 0 0 16-3584 chrM 3195 0 0 0 0 0 0 0 16-3584 chrM 3196 0 0 0 0 0 0 0 16-3584 chrM 3197 0 0 0 0 0 0 0 16-3584 chrM 3198 0 0 0 0 0 0 0 16-3584 chrM 3199 0 0 0 0 0 0 0 16-3584 chrM 3200 0 0 0 0 0 0 0 16-3584 chrM 3201 0 0 0 0 0 0 0 16-3584 chrM 3202 0 0 0 0 0 0 0 16-3584 chrM 3203 0 0 0 0 0 0 0 16-3584 chrM 3204 0 0 0 0 0 0 0 16-3584 chrM 3205 0 0 0 0 0 0 0 16-3584 chrM 3206 0 0 0 0 0 0 0 16-3584 chrM 3207 0 0 0 0 0 0 0 16-3584 chrM 3208 0 0 0 0 0 0 0 16-3584 chrM 3209 0 0 0 0 0 0 0 16-3584 chrM 3210 0 0 0 0 0 0 0 16-3584 chrM 3211 0 0 0 0 0 0 0 16-3584 chrM 3212 0 0 0 0 0 0 0 16-3584 chrM 3213 0 0 0 0 0 0 0 16-3584 chrM 3214 0 0 0 0 0 0 0 16-3584 chrM 3215 0 0 0 0 0 0 0 16-3584 chrM 3216 0 0 0 0 0 0 0 16-3584 chrM 3217 0 0 0 0 0 0 0 16-3584 chrM 3218 0 0 0 0 0 0 0 16-3584 chrM 3219 0 0 0 0 0 0 0 16-3584 chrM 3220 0 0 0 0 0 0 0 16-3584 chrM 3221 0 0 0 0 0 0 0 16-3584 chrM 3222 0 0 0 0 0 0 0 16-3584 chrM 3223 0 0 0 0 0 0 0 16-3584 chrM 3224 0 0 0 0 0 0 0 16-3584 chrM 3225 0 0 0 0 0 0 0 16-3584 chrM 3226 0 0 0 0 0 0 0 16-3584 chrM 3227 0 0 0 0 0 0 0 16-3584 chrM 3228 0 0 0 0 0 0 0 16-3584 chrM 3229 0 0 0 0 0 0 0 16-3584 chrM 3230 0 0 0 0 0 0 0 16-3584 chrM 3231 0 0 0 0 0 0 0 16-3584 chrM 3232 0 0 0 0 0 0 0 16-3584 chrM 3233 0 0 0 0 0 0 0 16-3584 chrM 3234 0 0 0 0 0 0 0 16-3584 chrM 3235 0 0 0 0 0 0 0 16-3584 chrM 3236 0 0 0 0 0 0 0 16-3584 chrM 3237 0 0 0 0 0 0 0 16-3584 chrM 3238 0 0 0 0 0 0 0 16-3584 chrM 3239 0 0 0 0 0 0 0 16-3584 chrM 3240 0 0 0 0 0 0 0 16-3584 chrM 3241 0 0 0 0 0 0 0 16-3584 chrM 3242 0 0 0 0 0 0 0 16-3584 chrM 3243 0 0 0 0 0 0 0 16-3584 chrM 3244 0 0 0 0 0 0 0 16-3584 chrM 3245 0 0 0 0 0 0 0 16-3584 chrM 3246 0 0 0 0 0 0 0 16-3584 chrM 3247 0 0 0 0 0 0 0 16-3584 chrM 3248 0 0 0 0 0 0 0 16-3584 chrM 3249 0 0 0 0 0 0 0 16-3584 chrM 3250 0 0 0 0 0 0 0 16-3584 chrM 3251 0 0 0 0 0 0 0 16-3584 chrM 3252 0 0 0 0 0 0 0 16-3584 chrM 3253 0 0 0 0 0 0 0 16-3584 chrM 3254 0 0 0 0 0 0 0 16-3584 chrM 3255 0 0 0 0 0 0 0 16-3584 chrM 3256 0 0 0 0 0 0 0 16-3584 chrM 3257 0 0 0 0 0 0 0 16-3584 chrM 3258 0 0 0 0 0 0 0 16-3584 chrM 3259 0 0 0 0 0 0 0 16-3584 chrM 3260 0 0 0 0 0 0 0 16-3584 chrM 3261 0 0 0 0 0 0 0 16-3584 chrM 3262 0 0 0 0 0 0 0 16-3584 chrM 3263 0 0 0 0 0 0 0 16-3584 chrM 3264 0 0 0 0 0 0 0 16-3584 chrM 3265 0 0 0 0 0 0 0 16-3584 chrM 3266 0 0 0 0 0 0 0 16-3584 chrM 3267 0 0 0 0 0 0 0 16-3584 chrM 3268 0 0 0 0 0 0 0 16-3584 chrM 3269 0 0 0 0 0 0 0 16-3584 chrM 3270 0 0 0 0 0 0 0 16-3584 chrM 3271 0 0 0 0 0 0 0 16-3584 chrM 3272 0 0 0 0 0 0 0 16-3584 chrM 3273 0 0 0 0 0 0 0 16-3584 chrM 3274 0 0 0 0 0 0 0 16-3584 chrM 3275 0 0 0 0 0 0 0 16-3584 chrM 3276 0 0 0 0 0 0 0 16-3584 chrM 3277 0 0 0 0 0 0 0 16-3584 chrM 3278 0 0 0 0 0 0 0 16-3584 chrM 3279 0 0 0 0 0 0 0 16-3584 chrM 3280 0 0 0 0 0 0 0 16-3584 chrM 3281 0 0 0 0 0 0 0 16-3584 chrM 3282 0 0 0 0 0 0 0 16-3584 chrM 3283 0 0 0 0 0 0 0 16-3584 chrM 3284 0 0 0 0 0 0 0 16-3584 chrM 3285 0 0 0 0 0 0 0 16-3584 chrM 3286 0 0 0 0 0 0 0 16-3584 chrM 3287 0 0 0 0 0 0 0 16-3584 chrM 3288 0 0 0 0 0 0 0 16-3584 chrM 3289 0 0 0 0 0 0 0 16-3584 chrM 3290 0 0 0 0 0 0 0 16-3584 chrM 3291 0 0 0 0 0 0 0 16-3584 chrM 3292 0 0 0 0 0 0 0 16-3584 chrM 3293 0 0 0 0 0 0 0 16-3584 chrM 3294 0 0 0 0 0 0 0 16-3584 chrM 3295 0 0 0 0 0 0 0 16-3584 chrM 3296 0 0 0 0 0 0 0 16-3584 chrM 3297 0 0 0 0 0 0 0 16-3584 chrM 3298 0 0 0 0 0 0 0 16-3584 chrM 3299 0 0 0 0 0 0 0 16-3584 chrM 3300 0 0 0 0 0 0 0 16-3584 chrM 3301 0 0 0 0 0 0 0 16-3584 chrM 3302 0 0 0 0 0 0 0 16-3584 chrM 3303 0 0 0 0 0 0 0 16-3584 chrM 3304 0 0 0 0 0 0 0 16-3584 chrM 3305 0 0 0 0 0 0 0 16-3584 chrM 3306 0 0 0 0 0 0 0 16-3584 chrM 3307 0 0 0 0 0 0 0 16-3584 chrM 3308 0 0 0 0 0 0 0 16-3584 chrM 3309 0 0 0 0 0 0 0 16-3584 chrM 3310 0 0 0 0 0 0 0 16-3584 chrM 3311 0 0 0 0 0 0 0 16-3584 chrM 3312 0 0 0 0 0 0 0 16-3584 chrM 3313 0 0 0 0 0 0 0 16-3584 chrM 3314 0 0 0 0 0 0 0 16-3584 chrM 3315 0 0 0 0 0 0 0 16-3584 chrM 3316 0 0 0 0 0 0 0 16-3584 chrM 3317 0 0 0 0 0 0 0 16-3584 chrM 3318 0 0 0 0 0 0 0 16-3584 chrM 3319 0 0 0 0 0 0 0 16-3584 chrM 3320 0 0 0 0 0 0 0 16-3584 chrM 3321 0 0 0 0 0 0 0 16-3584 chrM 3322 0 0 0 0 0 0 0 16-3584 chrM 3323 0 0 0 0 0 0 0 16-3584 chrM 3324 0 0 0 0 0 0 0 16-3584 chrM 3325 0 0 0 0 0 0 0 16-3584 chrM 3326 0 0 0 0 0 0 0 16-3584 chrM 3327 0 0 0 0 0 0 0 16-3584 chrM 3328 0 0 0 0 0 0 0 16-3584 chrM 3329 0 0 0 0 0 0 0 16-3584 chrM 3330 0 0 0 0 0 0 0 16-3584 chrM 3331 0 0 0 0 0 0 0 16-3584 chrM 3332 0 0 0 0 0 0 0 16-3584 chrM 3333 0 0 0 0 0 0 0 16-3584 chrM 3334 0 0 0 0 0 0 0 16-3584 chrM 3335 0 0 0 0 0 0 0 16-3584 chrM 3336 0 0 0 0 0 0 0 16-3584 chrM 3337 0 0 0 0 0 0 0 16-3584 chrM 3338 0 0 0 0 0 0 0 16-3584 chrM 3339 0 0 0 0 0 0 0 16-3584 chrM 3340 0 0 0 0 0 0 0 16-3584 chrM 3341 0 0 0 0 0 0 0 16-3584 chrM 3342 0 0 0 0 0 0 0 16-3584 chrM 3343 0 0 0 0 0 0 0 16-3584 chrM 3344 0 0 0 0 0 0 0 16-3584 chrM 3345 0 0 0 0 0 0 0 16-3584 chrM 3346 0 0 0 0 0 0 0 16-3584 chrM 3347 0 0 0 0 0 0 0 16-3584 chrM 3348 0 0 0 0 0 0 0 16-3584 chrM 3349 0 0 0 0 0 0 0 16-3584 chrM 3350 0 0 0 0 0 0 0 16-3584 chrM 3351 0 0 0 0 0 0 0 16-3584 chrM 3352 0 0 0 0 0 0 0 16-3584 chrM 3353 0 0 0 0 0 0 0 16-3584 chrM 3354 0 0 0 0 0 0 0 16-3584 chrM 3355 0 0 0 0 0 0 0 16-3584 chrM 3356 0 0 0 0 0 0 0 16-3584 chrM 3357 0 0 0 0 0 0 0 16-3584 chrM 3358 0 0 0 0 0 0 0 16-3584 chrM 3359 0 0 0 0 0 0 0 16-3584 chrM 3360 0 0 0 0 0 0 0 16-3584 chrM 3361 0 0 0 0 0 0 0 16-3584 chrM 3362 0 0 0 0 0 0 0 16-3584 chrM 3363 0 0 0 0 0 0 0 16-3584 chrM 3364 0 0 0 0 0 0 0 16-3584 chrM 3365 0 0 0 0 0 0 0 16-3584 chrM 3366 0 0 0 0 0 0 0 16-3584 chrM 3367 0 0 0 0 0 0 0 16-3584 chrM 3368 0 0 0 0 0 0 0 16-3584 chrM 3369 0 0 0 0 0 0 0 16-3584 chrM 3370 0 0 0 0 0 0 0 16-3584 chrM 3371 0 0 0 0 0 0 0 16-3584 chrM 3372 0 0 0 0 0 0 0 16-3584 chrM 3373 0 0 0 0 0 0 0 16-3584 chrM 3374 0 0 0 0 0 0 0 16-3584 chrM 3375 0 0 0 0 0 0 0 16-3584 chrM 3376 0 0 0 0 0 0 0 16-3584 chrM 3377 0 0 0 0 0 0 0 16-3584 chrM 3378 0 0 0 0 0 0 0 16-3584 chrM 3379 0 0 0 0 0 0 0 16-3584 chrM 3380 0 0 0 0 0 0 0 16-3584 chrM 3381 0 0 0 0 0 0 0 16-3584 chrM 3382 0 0 0 0 0 0 0 16-3584 chrM 3383 0 0 0 0 0 0 0 16-3584 chrM 3384 0 0 0 0 0 0 0 16-3584 chrM 3385 0 0 0 0 0 0 0 16-3584 chrM 3386 0 0 0 0 0 0 0 16-3584 chrM 3387 0 0 0 0 0 0 0 16-3584 chrM 3388 0 0 0 0 0 0 0 16-3584 chrM 3389 0 0 0 0 0 0 0 16-3584 chrM 3390 0 0 0 0 0 0 0 16-3584 chrM 3391 0 0 0 0 0 0 0 16-3584 chrM 3392 0 0 0 0 0 0 0 16-3584 chrM 3393 0 0 0 0 0 0 0 16-3584 chrM 3394 0 0 0 0 0 0 0 16-3584 chrM 3395 0 0 0 0 0 0 0 16-3584 chrM 3396 0 0 0 0 0 0 0 16-3584 chrM 3397 0 0 0 0 0 0 0 16-3584 chrM 3398 0 0 0 0 0 0 0 16-3584 chrM 3399 0 0 0 0 0 0 0 16-3584 chrM 3400 0 0 0 0 0 0 0 16-3584 chrM 3401 0 0 0 0 0 0 0 16-3584 chrM 3402 0 0 0 0 0 0 0 16-3584 chrM 3403 0 0 0 0 0 0 0 16-3584 chrM 3404 0 0 0 0 0 0 0 16-3584 chrM 3405 0 0 0 0 0 0 0 16-3584 chrM 3406 0 0 0 0 0 0 0 16-3584 chrM 3407 0 0 0 0 0 0 0 16-3584 chrM 3408 0 0 0 0 0 0 0 16-3584 chrM 3409 0 0 0 0 0 0 0 16-3584 chrM 3410 0 0 0 0 0 0 0 16-3584 chrM 3411 0 0 0 0 0 0 0 16-3584 chrM 3412 0 0 0 0 0 0 0 16-3584 chrM 3413 0 0 0 0 0 0 0 16-3584 chrM 3414 0 0 0 0 0 0 0 16-3584 chrM 3415 0 0 0 0 0 0 0 16-3584 chrM 3416 0 0 0 0 0 0 0 16-3584 chrM 3417 0 0 0 0 0 0 0 16-3584 chrM 3418 0 0 0 0 0 0 0 16-3584 chrM 3419 0 0 0 0 0 0 0 16-3584 chrM 3420 0 0 0 0 0 0 0 16-3584 chrM 3421 0 0 0 0 0 0 0 16-3584 chrM 3422 0 0 0 0 0 0 0 16-3584 chrM 3423 0 0 0 0 0 0 0 16-3584 chrM 3424 0 0 0 0 0 0 0 16-3584 chrM 3425 0 0 0 0 0 0 0 16-3584 chrM 3426 0 0 0 0 0 0 0 16-3584 chrM 3427 0 0 0 0 0 0 0 16-3584 chrM 3428 0 0 0 0 0 0 0 16-3584 chrM 3429 0 0 0 0 0 0 0 16-3584 chrM 3430 0 0 0 0 0 0 0 16-3584 chrM 3431 0 0 0 0 0 0 0 16-3584 chrM 3432 0 0 0 0 0 0 0 16-3584 chrM 3433 0 0 0 0 0 0 0 16-3584 chrM 3434 0 0 0 0 0 0 0 16-3584 chrM 3435 0 0 0 0 0 0 0 16-3584 chrM 3436 0 0 0 0 0 0 0 16-3584 chrM 3437 0 0 0 0 0 0 0 16-3584 chrM 3438 0 0 0 0 0 0 0 16-3584 chrM 3439 0 0 0 0 0 0 0 16-3584 chrM 3440 0 0 0 0 0 0 0 16-3584 chrM 3441 0 0 0 0 0 0 0 16-3584 chrM 3442 0 0 0 0 0 0 0 16-3584 chrM 3443 0 0 0 0 0 0 0 16-3584 chrM 3444 0 0 0 0 0 0 0 16-3584 chrM 3445 0 0 0 0 0 0 0 16-3584 chrM 3446 0 0 0 0 0 0 0 16-3584 chrM 3447 0 0 0 0 0 0 0 16-3584 chrM 3448 0 0 0 0 0 0 0 16-3584 chrM 3449 0 0 0 0 0 0 0 16-3584 chrM 3450 0 0 0 0 0 0 0 16-3584 chrM 3451 0 0 0 0 0 0 0 16-3584 chrM 3452 0 0 0 0 0 0 0 16-3584 chrM 3453 0 0 0 0 0 0 0 16-3584 chrM 3454 0 0 0 0 0 0 0 16-3584 chrM 3455 0 0 0 0 0 0 0 16-3584 chrM 3456 0 0 0 0 0 0 0 16-3584 chrM 3457 0 0 0 0 0 0 0 16-3584 chrM 3458 0 0 0 0 0 0 0 16-3584 chrM 3459 0 0 0 0 0 0 0 16-3584 chrM 3460 0 0 0 0 0 0 0 16-3584 chrM 3461 0 0 0 0 0 0 0 16-3584 chrM 3462 0 0 0 0 0 0 0 16-3584 chrM 3463 0 0 0 0 0 0 0 16-3584 chrM 3464 0 0 0 0 0 0 0 16-3584 chrM 3465 0 0 0 0 0 0 0 16-3584 chrM 3466 0 0 0 0 0 0 0 16-3584 chrM 3467 0 0 0 0 0 0 0 16-3584 chrM 3468 0 0 0 0 0 0 0 16-3584 chrM 3469 0 0 0 0 0 0 0 16-3584 chrM 3470 0 0 0 0 0 0 0 16-3584 chrM 3471 0 0 0 0 0 0 0 16-3584 chrM 3472 0 0 0 0 0 0 0 16-3584 chrM 3473 0 0 0 0 0 0 0 16-3584 chrM 3474 0 0 0 0 0 0 0 16-3584 chrM 3475 0 0 0 0 0 0 0 16-3584 chrM 3476 0 0 0 0 0 0 0 16-3584 chrM 3477 0 0 0 0 0 0 0 16-3584 chrM 3478 0 0 0 0 0 0 0 16-3584 chrM 3479 0 0 0 0 0 0 0 16-3584 chrM 3480 0 0 0 0 0 0 0 16-3584 chrM 3481 0 0 0 0 0 0 0 16-3584 chrM 3482 0 0 0 0 0 0 0 16-3584 chrM 3483 0 0 0 0 0 0 0 16-3584 chrM 3484 0 0 0 0 0 0 0 16-3584 chrM 3485 0 0 0 0 0 0 0 16-3584 chrM 3486 0 0 0 0 0 0 0 16-3584 chrM 3487 0 0 0 0 0 0 0 16-3584 chrM 3488 0 0 0 0 0 0 0 16-3584 chrM 3489 0 0 0 0 0 0 0 16-3584 chrM 3490 0 0 0 0 0 0 0 16-3584 chrM 3491 0 0 0 0 0 0 0 16-3584 chrM 3492 0 0 0 0 0 0 0 16-3584 chrM 3493 0 0 0 0 0 0 0 16-3584 chrM 3494 0 0 0 0 0 0 0 16-3584 chrM 3495 0 0 0 0 0 0 0 16-3584 chrM 3496 0 0 0 0 0 0 0 16-3584 chrM 3497 0 0 0 0 0 0 0 16-3584 chrM 3498 0 0 0 0 0 0 0 16-3584 chrM 3499 0 0 0 0 0 0 0 16-3584 chrM 3500 0 0 0 0 0 0 0 16-3584 chrM 3501 0 0 0 0 0 0 0 16-3584 chrM 3502 0 0 0 0 0 0 0 16-3584 chrM 3503 0 0 0 0 0 0 0 16-3584 chrM 3504 0 0 0 0 0 0 0 16-3584 chrM 3505 0 0 0 0 0 0 0 16-3584 chrM 3506 0 0 0 0 0 0 0 16-3584 chrM 3507 0 0 0 0 0 0 0 16-3584 chrM 3508 0 0 0 0 0 0 0 16-3584 chrM 3509 0 0 0 0 0 0 0 16-3584 chrM 3510 0 0 0 0 0 0 0 16-3584 chrM 3511 0 0 0 0 0 0 0 16-3584 chrM 3512 0 0 0 0 0 0 0 16-3584 chrM 3513 0 0 0 0 0 0 0 16-3584 chrM 3514 0 0 0 0 0 0 0 16-3584 chrM 3515 0 0 0 0 0 0 0 16-3584 chrM 3516 0 0 0 0 0 0 0 16-3584 chrM 3517 0 0 0 0 0 0 0 16-3584 chrM 3518 0 0 0 0 0 0 0 16-3584 chrM 3519 0 0 0 0 0 0 0 16-3584 chrM 3520 0 0 0 0 0 0 0 16-3584 chrM 3521 0 0 0 0 0 0 0 16-3584 chrM 3522 0 0 0 0 0 0 0 16-3584 chrM 3523 0 0 0 0 0 0 0 16-3584 chrM 3524 0 0 0 0 0 0 0 16-3584 chrM 3525 0 0 0 0 0 0 0 16-3584 chrM 3526 0 0 0 0 0 0 0 16-3584 chrM 3527 0 0 0 0 0 0 0 16-3584 chrM 3528 0 0 0 0 0 0 0 16-3584 chrM 3529 0 0 0 0 0 0 0 16-3584 chrM 3530 0 0 0 0 0 0 0 16-3584 chrM 3531 0 0 0 0 0 0 0 16-3584 chrM 3532 0 0 0 0 0 0 0 16-3584 chrM 3533 0 0 0 0 0 0 0 16-3584 chrM 3534 0 0 0 0 0 0 0 16-3584 chrM 3535 0 0 0 0 0 0 0 16-3584 chrM 3536 0 0 0 0 0 0 0 16-3584 chrM 3537 0 0 0 0 0 0 0 16-3584 chrM 3538 0 0 0 0 0 0 0 16-3584 chrM 3539 0 0 0 0 0 0 0 16-3584 chrM 3540 0 0 0 0 0 0 0 16-3584 chrM 3541 0 0 0 0 0 0 0 16-3584 chrM 3542 0 0 0 0 0 0 0 16-3584 chrM 3543 0 0 0 0 0 0 0 16-3584 chrM 3544 0 0 0 0 0 0 0 16-3584 chrM 3545 0 0 0 0 0 0 0 16-3584 chrM 3546 0 0 0 0 0 0 0 16-3584 chrM 3547 0 0 0 0 0 0 0 16-3584 chrM 3548 0 0 0 0 0 0 0 16-3584 chrM 3549 0 0 0 0 0 0 0 16-3584 chrM 3550 0 0 0 0 0 0 0 16-3584 chrM 3551 0 0 0 0 0 0 0 16-3584 chrM 3552 0 0 0 0 0 0 0 16-3584 chrM 3553 0 0 0 0 0 0 0 16-3584 chrM 3554 0 0 0 0 0 0 0 16-3584 chrM 3555 0 0 0 0 0 0 0 16-3584 chrM 3556 0 0 0 0 0 0 0 16-3584 chrM 3557 0 0 0 0 0 0 0 16-3584 chrM 3558 0 0 0 0 0 0 0 16-3584 chrM 3559 0 0 0 0 0 0 0 16-3584 chrM 3560 0 0 0 0 0 0 0 16-3584 chrM 3561 0 0 0 0 0 0 0 16-3584 chrM 3562 0 0 0 0 0 0 0 16-3584 chrM 3563 0 0 0 0 0 0 0 16-3584 chrM 3564 0 0 0 0 0 0 0 16-3584 chrM 3565 0 0 0 0 0 0 0 16-3584 chrM 3566 0 0 0 0 0 0 0 16-3584 chrM 3567 0 0 0 0 0 0 0 16-3584 chrM 3568 0 0 0 0 0 0 0 16-3584 chrM 3569 0 0 0 0 0 0 0 16-3584 chrM 3570 0 0 0 0 0 0 0 16-3584 chrM 3571 0 0 0 0 0 0 0 16-3584 chrM 3572 0 0 0 0 0 0 0 16-3584 chrM 3573 0 0 0 0 0 0 0 16-3584 chrM 3574 0 0 0 0 0 0 0 16-3584 chrM 3575 0 0 0 0 0 0 0 16-3584 chrM 3576 0 0 0 0 0 0 0 16-3584 chrM 3577 0 0 0 0 0 0 0 16-3584 chrM 3578 0 0 0 0 0 0 0 16-3584 chrM 3579 0 0 0 0 0 0 0 16-3584 chrM 3580 0 0 0 0 0 0 0 16-3584 chrM 3581 0 0 0 0 0 0 0 16-3584 chrM 3582 0 0 0 0 0 0 0 16-3584 chrM 3583 0 0 0 0 0 0 0 16-3584 chrM 3584 0 0 0 0 0 0 0 16-3584 chrM 3585 0 0 0 0 0 0 0 16-3584 chrM 3586 0 0 0 0 0 0 0 16-3584 chrM 3587 0 0 0 0 0 0 0 16-3584 chrM 3588 0 0 0 0 0 0 0 16-3584 chrM 3589 0 0 0 0 0 0 0 16-3584 chrM 3590 0 0 0 0 0 0 0 16-3584 chrM 3591 0 0 0 0 0 0 0 16-3584 chrM 3592 0 0 0 0 0 0 0 16-3584 chrM 3593 0 0 0 0 0 0 0 16-3584 chrM 3594 0 0 0 0 0 0 0 16-3584 chrM 3595 0 0 0 0 0 0 0 16-3584 chrM 3596 0 0 0 0 0 0 0 16-3584 chrM 3597 0 0 0 0 0 0 0 16-3584 chrM 3598 0 0 0 0 0 0 0 16-3584 chrM 3599 0 0 0 0 0 0 0 16-3584 chrM 3600 0 0 0 0 0 0 0 16-3584 chrM 3601 0 0 0 0 0 0 0 16-3584 chrM 3602 0 0 0 0 0 0 0 16-3584 chrM 3603 0 0 0 0 0 0 0 16-3584 chrM 3604 0 0 0 0 0 0 0 16-3584 chrM 3605 0 0 0 0 0 0 0 16-3584 chrM 3606 0 0 0 0 0 0 0 16-3584 chrM 3607 0 0 0 0 0 0 0 16-3584 chrM 3608 0 0 0 0 0 0 0 16-3584 chrM 3609 0 0 0 0 0 0 0 16-3584 chrM 3610 0 0 0 0 0 0 0 16-3584 chrM 3611 0 0 0 0 0 0 0 16-3584 chrM 3612 0 0 0 0 0 0 0 16-3584 chrM 3613 0 0 0 0 0 0 0 16-3584 chrM 3614 0 0 0 0 0 0 0 16-3584 chrM 3615 0 0 0 0 0 0 0 16-3584 chrM 3616 0 0 0 0 0 0 0 16-3584 chrM 3617 0 0 0 0 0 0 0 16-3584 chrM 3618 0 0 0 0 0 0 0 16-3584 chrM 3619 0 0 0 0 0 0 0 16-3584 chrM 3620 0 0 0 0 0 0 0 16-3584 chrM 3621 0 0 0 0 0 0 0 16-3584 chrM 3622 0 0 0 0 0 0 0 16-3584 chrM 3623 0 0 0 0 0 0 0 16-3584 chrM 3624 0 0 0 0 0 0 0 16-3584 chrM 3625 0 0 0 0 0 0 0 16-3584 chrM 3626 0 0 0 0 0 0 0 16-3584 chrM 3627 0 0 0 0 0 0 0 16-3584 chrM 3628 0 0 0 0 0 0 0 16-3584 chrM 3629 0 0 0 0 0 0 0 16-3584 chrM 3630 0 0 0 0 0 0 0 16-3584 chrM 3631 0 0 0 0 0 0 0 16-3584 chrM 3632 0 0 0 0 0 0 0 16-3584 chrM 3633 0 0 0 0 0 0 0 16-3584 chrM 3634 0 0 0 0 0 0 0 16-3584 chrM 3635 0 0 0 0 0 0 0 16-3584 chrM 3636 0 0 0 0 0 0 0 16-3584 chrM 3637 0 0 0 0 0 0 0 16-3584 chrM 3638 0 0 0 0 0 0 0 16-3584 chrM 3639 0 0 0 0 0 0 0 16-3584 chrM 3640 0 0 0 0 0 0 0 16-3584 chrM 3641 0 0 0 0 0 0 0 16-3584 chrM 3642 0 0 0 0 0 0 0 16-3584 chrM 3643 0 0 0 0 0 0 0 16-3584 chrM 3644 0 0 0 0 0 0 0 16-3584 chrM 3645 0 0 0 0 0 0 0 16-3584 chrM 3646 0 0 0 0 0 0 0 16-3584 chrM 3647 0 0 0 0 0 0 0 16-3584 chrM 3648 0 0 0 0 0 0 0 16-3584 chrM 3649 0 0 0 0 0 0 0 16-3584 chrM 3650 0 0 0 0 0 0 0 16-3584 chrM 3651 0 0 0 0 0 0 0 16-3584 chrM 3652 0 0 0 0 0 0 0 16-3584 chrM 3653 0 0 0 0 0 0 0 16-3584 chrM 3654 0 0 0 0 0 0 0 16-3584 chrM 3655 0 0 0 0 0 0 0 16-3584 chrM 3656 0 0 0 0 0 0 0 16-3584 chrM 3657 0 0 0 0 0 0 0 16-3584 chrM 3658 0 0 0 0 0 0 0 16-3584 chrM 3659 0 0 0 0 0 0 0 16-3584 chrM 3660 0 0 0 0 0 0 0 16-3584 chrM 3661 0 0 0 0 0 0 0 16-3584 chrM 3662 0 0 0 0 0 0 0 16-3584 chrM 3663 0 0 0 0 0 0 0 16-3584 chrM 3664 0 0 0 0 0 0 0 16-3584 chrM 3665 0 0 0 0 0 0 0 16-3584 chrM 3666 0 0 0 0 0 0 0 16-3584 chrM 3667 0 0 0 0 0 0 0 16-3584 chrM 3668 0 0 0 0 0 0 0 16-3584 chrM 3669 0 0 0 0 0 0 0 16-3584 chrM 3670 0 0 0 0 0 0 0 16-3584 chrM 3671 0 0 0 0 0 0 0 16-3584 chrM 3672 0 0 0 0 0 0 0 16-3584 chrM 3673 0 0 0 0 0 0 0 16-3584 chrM 3674 0 0 0 0 0 0 0 16-3584 chrM 3675 0 0 0 0 0 0 0 16-3584 chrM 3676 0 0 0 0 0 0 0 16-3584 chrM 3677 0 0 0 0 0 0 0 16-3584 chrM 3678 0 0 0 0 0 0 0 16-3584 chrM 3679 0 0 0 0 0 0 0 16-3584 chrM 3680 0 0 0 0 0 0 0 16-3584 chrM 3681 0 0 0 0 0 0 0 16-3584 chrM 3682 0 0 0 0 0 0 0 16-3584 chrM 3683 0 0 0 0 0 0 0 16-3584 chrM 3684 0 0 0 0 0 0 0 16-3584 chrM 3685 0 0 0 0 0 0 0 16-3584 chrM 3686 0 0 0 0 0 0 0 16-3584 chrM 3687 0 0 0 0 0 0 0 16-3584 chrM 3688 0 0 0 0 0 0 0 16-3584 chrM 3689 0 0 0 0 0 0 0 16-3584 chrM 3690 0 0 0 0 0 0 0 16-3584 chrM 3691 0 0 0 0 0 0 0 16-3584 chrM 3692 0 0 0 0 0 0 0 16-3584 chrM 3693 0 0 0 0 0 0 0 16-3584 chrM 3694 0 0 0 0 0 0 0 16-3584 chrM 3695 0 0 0 0 0 0 0 16-3584 chrM 3696 0 0 0 0 0 0 0 16-3584 chrM 3697 0 0 0 0 0 0 0 16-3584 chrM 3698 0 0 0 0 0 0 0 16-3584 chrM 3699 0 0 0 0 0 0 0 16-3584 chrM 3700 0 0 0 0 0 0 0 16-3584 chrM 3701 0 0 0 0 0 0 0 16-3584 chrM 3702 0 0 0 0 0 0 0 16-3584 chrM 3703 0 0 0 0 0 0 0 16-3584 chrM 3704 0 0 0 0 0 0 0 16-3584 chrM 3705 0 0 0 0 0 0 0 16-3584 chrM 3706 0 0 0 0 0 0 0 16-3584 chrM 3707 0 0 0 0 0 0 0 16-3584 chrM 3708 0 0 0 0 0 0 0 16-3584 chrM 3709 0 0 0 0 0 0 0 16-3584 chrM 3710 0 0 0 0 0 0 0 16-3584 chrM 3711 0 0 0 0 0 0 0 16-3584 chrM 3712 0 0 0 0 0 0 0 16-3584 chrM 3713 0 0 0 0 0 0 0 16-3584 chrM 3714 0 0 0 0 0 0 0 16-3584 chrM 3715 0 0 0 0 0 0 0 16-3584 chrM 3716 0 0 0 0 0 0 0 16-3584 chrM 3717 0 0 0 0 0 0 0 16-3584 chrM 3718 0 0 0 0 0 0 0 16-3584 chrM 3719 0 0 0 0 0 0 0 16-3584 chrM 3720 0 0 0 0 0 0 0 16-3584 chrM 3721 0 0 0 0 0 0 0 16-3584 chrM 3722 0 0 0 0 0 0 0 16-3584 chrM 3723 0 0 0 0 0 0 0 16-3584 chrM 3724 0 0 0 0 0 0 0 16-3584 chrM 3725 0 0 0 0 0 0 0 16-3584 chrM 3726 0 0 0 0 0 0 0 16-3584 chrM 3727 0 0 0 0 0 0 0 16-3584 chrM 3728 0 0 0 0 0 0 0 16-3584 chrM 3729 0 0 0 0 0 0 0 16-3584 chrM 3730 0 0 0 0 0 0 0 16-3584 chrM 3731 0 0 0 0 0 0 0 16-3584 chrM 3732 0 0 0 0 0 0 0 16-3584 chrM 3733 0 0 0 0 0 0 0 16-3584 chrM 3734 0 0 0 0 0 0 0 16-3584 chrM 3735 0 0 0 0 0 0 0 16-3584 chrM 3736 0 0 0 0 0 0 0 16-3584 chrM 3737 0 0 0 0 0 0 0 16-3584 chrM 3738 0 0 0 0 0 0 0 16-3584 chrM 3739 0 0 0 0 0 0 0 16-3584 chrM 3740 0 0 0 0 0 0 0 16-3584 chrM 3741 0 0 0 0 0 0 0 16-3584 chrM 3742 0 0 0 0 0 0 0 16-3584 chrM 3743 0 0 0 0 0 0 0 16-3584 chrM 3744 0 0 0 0 0 0 0 16-3584 chrM 3745 0 0 0 0 0 0 0 16-3584 chrM 3746 0 0 0 0 0 0 0 16-3584 chrM 3747 0 0 0 0 0 0 0 16-3584 chrM 3748 0 0 0 0 0 0 0 16-3584 chrM 3749 0 0 0 0 0 0 0 16-3584 chrM 3750 0 0 0 0 0 0 0 16-3584 chrM 3751 0 0 0 0 0 0 0 16-3584 chrM 3752 0 0 0 0 0 0 0 16-3584 chrM 3753 0 0 0 0 0 0 0 16-3584 chrM 3754 0 0 0 0 0 0 0 16-3584 chrM 3755 0 0 0 0 0 0 0 16-3584 chrM 3756 0 0 0 0 0 0 0 16-3584 chrM 3757 0 0 0 0 0 0 0 16-3584 chrM 3758 0 0 0 0 0 0 0 16-3584 chrM 3759 0 0 0 0 0 0 0 16-3584 chrM 3760 0 0 0 0 0 0 0 16-3584 chrM 3761 0 0 0 0 0 0 0 16-3584 chrM 3762 0 0 0 0 0 0 0 16-3584 chrM 3763 0 0 0 0 0 0 0 16-3584 chrM 3764 0 0 0 0 0 0 0 16-3584 chrM 3765 0 0 0 0 0 0 0 16-3584 chrM 3766 0 0 0 0 0 0 0 16-3584 chrM 3767 0 0 0 0 0 0 0 16-3584 chrM 3768 0 0 0 0 0 0 0 16-3584 chrM 3769 0 0 0 0 0 0 0 16-3584 chrM 3770 0 0 0 0 0 0 0 16-3584 chrM 3771 0 0 0 0 0 0 0 16-3584 chrM 3772 0 0 0 0 0 0 0 16-3584 chrM 3773 0 0 0 0 0 0 0 16-3584 chrM 3774 0 0 0 0 0 0 0 16-3584 chrM 3775 0 0 0 0 0 0 0 16-3584 chrM 3776 0 0 0 0 0 0 0 16-3584 chrM 3777 0 0 0 0 0 0 0 16-3584 chrM 3778 0 0 0 0 0 0 0 16-3584 chrM 3779 0 0 0 0 0 0 0 16-3584 chrM 3780 0 0 0 0 0 0 0 16-3584 chrM 3781 0 0 0 0 0 0 0 16-3584 chrM 3782 0 0 0 0 0 0 0 16-3584 chrM 3783 0 0 0 0 0 0 0 16-3584 chrM 3784 0 0 0 0 0 0 0 16-3584 chrM 3785 0 0 0 0 0 0 0 16-3584 chrM 3786 0 0 0 0 0 0 0 16-3584 chrM 3787 0 0 0 0 0 0 0 16-3584 chrM 3788 0 0 0 0 0 0 0 16-3584 chrM 3789 0 0 0 0 0 0 0 16-3584 chrM 3790 0 0 0 0 0 0 0 16-3584 chrM 3791 0 0 0 0 0 0 0 16-3584 chrM 3792 0 0 0 0 0 0 0 16-3584 chrM 3793 0 0 0 0 0 0 0 16-3584 chrM 3794 0 0 0 0 0 0 0 16-3584 chrM 3795 0 0 0 0 0 0 0 16-3584 chrM 3796 0 0 0 0 0 0 0 16-3584 chrM 3797 0 0 0 0 0 0 0 16-3584 chrM 3798 0 0 0 0 0 0 0 16-3584 chrM 3799 0 0 0 0 0 0 0 16-3584 chrM 3800 0 0 0 0 0 0 0 16-3584 chrM 3801 0 0 0 0 0 0 0 16-3584 chrM 3802 0 0 0 0 0 0 0 16-3584 chrM 3803 0 0 0 0 0 0 0 16-3584 chrM 3804 0 0 0 0 0 0 0 16-3584 chrM 3805 0 0 0 0 0 0 0 16-3584 chrM 3806 0 0 0 0 0 0 0 16-3584 chrM 3807 0 0 0 0 0 0 0 16-3584 chrM 3808 0 0 0 0 0 0 0 16-3584 chrM 3809 0 0 0 0 0 0 0 16-3584 chrM 3810 0 0 0 0 0 0 0 16-3584 chrM 3811 0 0 0 0 0 0 0 16-3584 chrM 3812 0 0 0 0 0 0 0 16-3584 chrM 3813 0 0 0 0 0 0 0 16-3584 chrM 3814 0 0 0 0 0 0 0 16-3584 chrM 3815 0 0 0 0 0 0 0 16-3584 chrM 3816 0 0 0 0 0 0 0 16-3584 chrM 3817 0 0 0 0 0 0 0 16-3584 chrM 3818 0 0 0 0 0 0 0 16-3584 chrM 3819 0 0 0 0 0 0 0 16-3584 chrM 3820 0 0 0 0 0 0 0 16-3584 chrM 3821 0 0 0 0 0 0 0 16-3584 chrM 3822 0 0 0 0 0 0 0 16-3584 chrM 3823 0 0 0 0 0 0 0 16-3584 chrM 3824 0 0 0 0 0 0 0 16-3584 chrM 3825 0 0 0 0 0 0 0 16-3584 chrM 3826 0 0 0 0 0 0 0 16-3584 chrM 3827 0 0 0 0 0 0 0 16-3584 chrM 3828 0 0 0 0 0 0 0 16-3584 chrM 3829 0 0 0 0 0 0 0 16-3584 chrM 3830 0 0 0 0 0 0 0 16-3584 chrM 3831 0 0 0 0 0 0 0 16-3584 chrM 3832 0 0 0 0 0 0 0 16-3584 chrM 3833 0 0 0 0 0 0 0 16-3584 chrM 3834 0 0 0 0 0 0 0 16-3584 chrM 3835 0 0 0 0 0 0 0 16-3584 chrM 3836 0 0 0 0 0 0 0 16-3584 chrM 3837 0 0 0 0 0 0 0 16-3584 chrM 3838 0 0 0 0 0 0 0 16-3584 chrM 3839 0 0 0 0 0 0 0 16-3584 chrM 3840 0 0 0 0 0 0 0 16-3584 chrM 3841 0 0 0 0 0 0 0 16-3584 chrM 3842 0 0 0 0 0 0 0 16-3584 chrM 3843 0 0 0 0 0 0 0 16-3584 chrM 3844 0 0 0 0 0 0 0 16-3584 chrM 3845 0 0 0 0 0 0 0 16-3584 chrM 3846 0 0 0 0 0 0 0 16-3584 chrM 3847 0 0 0 0 0 0 0 16-3584 chrM 3848 0 0 0 0 0 0 0 16-3584 chrM 3849 0 0 0 0 0 0 0 16-3584 chrM 3850 0 0 0 0 0 0 0 16-3584 chrM 3851 0 0 0 0 0 0 0 16-3584 chrM 3852 0 0 0 0 0 0 0 16-3584 chrM 3853 0 0 0 0 0 0 0 16-3584 chrM 3854 0 0 0 0 0 0 0 16-3584 chrM 3855 0 0 0 0 0 0 0 16-3584 chrM 3856 0 0 0 0 0 0 0 16-3584 chrM 3857 0 0 0 0 0 0 0 16-3584 chrM 3858 0 0 0 0 0 0 0 16-3584 chrM 3859 0 0 0 0 0 0 0 16-3584 chrM 3860 0 0 0 0 0 0 0 16-3584 chrM 3861 0 0 0 0 0 0 0 16-3584 chrM 3862 0 0 0 0 0 0 0 16-3584 chrM 3863 0 0 0 0 0 0 0 16-3584 chrM 3864 0 0 0 0 0 0 0 16-3584 chrM 3865 0 0 0 0 0 0 0 16-3584 chrM 3866 0 0 0 0 0 0 0 16-3584 chrM 3867 0 0 0 0 0 0 0 16-3584 chrM 3868 0 0 0 0 0 0 0 16-3584 chrM 3869 0 0 0 0 0 0 0 16-3584 chrM 3870 0 0 0 0 0 0 0 16-3584 chrM 3871 0 0 0 0 0 0 0 16-3584 chrM 3872 0 0 0 0 0 0 0 16-3584 chrM 3873 0 0 0 0 0 0 0 16-3584 chrM 3874 0 0 0 0 0 0 0 16-3584 chrM 3875 0 0 0 0 0 0 0 16-3584 chrM 3876 0 0 0 0 0 0 0 16-3584 chrM 3877 0 0 0 0 0 0 0 16-3584 chrM 3878 0 0 0 0 0 0 0 16-3584 chrM 3879 0 0 0 0 0 0 0 16-3584 chrM 3880 0 0 0 0 0 0 0 16-3584 chrM 3881 0 0 0 0 0 0 0 16-3584 chrM 3882 0 0 0 0 0 0 0 16-3584 chrM 3883 0 0 0 0 0 0 0 16-3584 chrM 3884 0 0 0 0 0 0 0 16-3584 chrM 3885 0 0 0 0 0 0 0 16-3584 chrM 3886 0 0 0 0 0 0 0 16-3584 chrM 3887 0 0 0 0 0 0 0 16-3584 chrM 3888 0 0 0 0 0 0 0 16-3584 chrM 3889 0 0 0 0 0 0 0 16-3584 chrM 3890 0 0 0 0 0 0 0 16-3584 chrM 3891 0 0 0 0 0 0 0 16-3584 chrM 3892 0 0 0 0 0 0 0 16-3584 chrM 3893 0 0 0 0 0 0 0 16-3584 chrM 3894 0 0 0 0 0 0 0 16-3584 chrM 3895 0 0 0 0 0 0 0 16-3584 chrM 3896 0 0 0 0 0 0 0 16-3584 chrM 3897 0 0 0 0 0 0 0 16-3584 chrM 3898 0 0 0 0 0 0 0 16-3584 chrM 3899 0 0 0 0 0 0 0 16-3584 chrM 3900 0 0 0 0 0 0 0 16-3584 chrM 3901 0 0 0 0 0 0 0 16-3584 chrM 3902 0 0 0 0 0 0 0 16-3584 chrM 3903 0 0 0 0 0 0 0 16-3584 chrM 3904 0 0 0 0 0 0 0 16-3584 chrM 3905 0 0 0 0 0 0 0 16-3584 chrM 3906 0 0 0 0 0 0 0 16-3584 chrM 3907 0 0 0 0 0 0 0 16-3584 chrM 3908 0 0 0 0 0 0 0 16-3584 chrM 3909 0 0 0 0 0 0 0 16-3584 chrM 3910 0 0 0 0 0 0 0 16-3584 chrM 3911 0 0 0 0 0 0 0 16-3584 chrM 3912 0 0 0 0 0 0 0 16-3584 chrM 3913 0 0 0 0 0 0 0 16-3584 chrM 3914 0 0 0 0 0 0 0 16-3584 chrM 3915 0 0 0 0 0 0 0 16-3584 chrM 3916 0 0 0 0 0 0 0 16-3584 chrM 3917 0 0 0 0 0 0 0 16-3584 chrM 3918 0 0 0 0 0 0 0 16-3584 chrM 3919 0 0 0 0 0 0 0 16-3584 chrM 3920 0 0 0 0 0 0 0 16-3584 chrM 3921 0 0 0 0 0 0 0 16-3584 chrM 3922 0 0 0 0 0 0 0 16-3584 chrM 3923 0 0 0 0 0 0 0 16-3584 chrM 3924 0 0 0 0 0 0 0 16-3584 chrM 3925 0 0 0 0 0 0 0 16-3584 chrM 3926 0 0 0 0 0 0 0 16-3584 chrM 3927 0 0 0 0 0 0 0 16-3584 chrM 3928 0 0 0 0 0 0 0 16-3584 chrM 3929 0 0 0 0 0 0 0 16-3584 chrM 3930 0 0 0 0 0 0 0 16-3584 chrM 3931 0 0 0 0 0 0 0 16-3584 chrM 3932 0 0 0 0 0 0 0 16-3584 chrM 3933 0 0 0 0 0 0 0 16-3584 chrM 3934 0 0 0 0 0 0 0 16-3584 chrM 3935 0 0 0 0 0 0 0 16-3584 chrM 3936 0 0 0 0 0 0 0 16-3584 chrM 3937 0 0 0 0 0 0 0 16-3584 chrM 3938 0 0 0 0 0 0 0 16-3584 chrM 3939 0 0 0 0 0 0 0 16-3584 chrM 3940 0 0 0 0 0 0 0 16-3584 chrM 3941 0 0 0 0 0 0 0 16-3584 chrM 3942 0 0 0 0 0 0 0 16-3584 chrM 3943 0 0 0 0 0 0 0 16-3584 chrM 3944 0 0 0 0 0 0 0 16-3584 chrM 3945 0 0 0 0 0 0 0 16-3584 chrM 3946 0 0 0 0 0 0 0 16-3584 chrM 3947 0 0 0 0 0 0 0 16-3584 chrM 3948 0 0 0 0 0 0 0 16-3584 chrM 3949 0 0 0 0 0 0 0 16-3584 chrM 3950 0 0 0 0 0 0 0 16-3584 chrM 3951 0 0 0 0 0 0 0 16-3584 chrM 3952 0 0 0 0 0 0 0 16-3584 chrM 3953 0 0 0 0 0 0 0 16-3584 chrM 3954 0 0 0 0 0 0 0 16-3584 chrM 3955 0 0 0 0 0 0 0 16-3584 chrM 3956 0 0 0 0 0 0 0 16-3584 chrM 3957 0 0 0 0 0 0 0 16-3584 chrM 3958 0 0 0 0 0 0 0 16-3584 chrM 3959 0 0 0 0 0 0 0 16-3584 chrM 3960 0 0 0 0 0 0 0 16-3584 chrM 3961 0 0 0 0 0 0 0 16-3584 chrM 3962 0 0 0 0 0 0 0 16-3584 chrM 3963 0 0 0 0 0 0 0 16-3584 chrM 3964 0 0 0 0 0 0 0 16-3584 chrM 3965 1 0 1 0 0 0 0 16-3584 chrM 3966 1 0 1 0 0 0 0 16-3584 chrM 3967 1 1 0 0 0 0 0 16-3584 chrM 3968 1 0 0 0 1 0 0 16-3584 chrM 3969 1 0 0 1 0 0 0 16-3584 chrM 3970 1 0 0 1 0 0 0 16-3584 chrM 3971 1 1 0 0 0 0 0 16-3584 chrM 3972 1 1 0 0 0 0 0 16-3584 chrM 3973 1 0 0 1 0 0 0 16-3584 chrM 3974 1 1 0 0 0 0 0 16-3584 chrM 3975 1 0 1 0 0 0 0 16-3584 chrM 3976 1 0 1 0 0 0 0 16-3584 chrM 3977 1 0 1 0 0 0 0 16-3584 chrM 3978 1 0 1 0 0 0 0 16-3584 chrM 3979 1 0 1 0 0 0 0 16-3584 chrM 3980 1 0 0 0 1 0 0 16-3584 chrM 3981 1 0 1 0 0 0 0 16-3584 chrM 3982 1 0 0 1 0 0 0 16-3584 chrM 3983 1 0 0 0 1 0 0 16-3584 chrM 3984 1 0 0 1 0 0 0 16-3584 chrM 3985 1 1 0 0 0 0 0 16-3584 chrM 3986 1 0 1 0 0 0 0 16-3584 chrM 3987 1 0 0 1 0 0 0 16-3584 chrM 3988 1 0 0 1 0 0 0 16-3584 chrM 3989 1 0 0 0 1 0 0 16-3584 chrM 3990 1 0 0 1 0 0 0 16-3584 chrM 3991 1 0 0 0 1 0 0 16-3584 chrM 3992 1 1 0 0 0 0 0 16-3584 chrM 3993 1 0 0 0 1 0 0 16-3584 chrM 3994 1 0 0 0 1 0 0 16-3584 chrM 3995 1 0 0 1 0 0 0 16-3584 chrM 3996 1 0 0 1 0 0 0 16-3584 chrM 3997 1 0 1 0 0 0 0 16-3584 chrM 3998 1 0 1 0 0 0 0 16-3584 chrM 3999 1 0 0 0 1 0 0 16-3584 chrM 4000 1 1 0 0 0 0 0 16-3584 chrM 4001 1 1 0 0 0 0 0 16-3584 chrM 4002 1 0 1 0 0 0 0 16-3584 chrM 4003 1 0 0 1 0 0 0 16-3584 chrM 4004 1 0 0 1 0 0 0 16-3584 chrM 4005 1 0 0 0 1 0 0 16-3584 chrM 4006 1 1 0 0 0 0 0 16-3584 chrM 4007 1 1 0 0 0 0 0 16-3584 chrM 4008 1 1 0 0 0 0 0 16-3584 chrM 4009 1 0 1 0 0 0 0 16-3584 chrM 4010 1 0 0 1 0 0 0 16-3584 chrM 4011 1 1 0 0 0 0 0 16-3584 chrM 4012 1 0 0 1 0 0 0 16-3584 chrM 4013 1 1 0 0 0 0 0 16-3584 chrM 4014 1 0 1 0 0 0 0 16-3584 chrM 4015 1 0 0 1 0 0 0 16-3584 chrM 4016 1 0 1 0 0 0 0 16-3584 chrM 4017 1 0 0 1 0 0 0 16-3584 chrM 4018 1 1 0 0 0 0 0 16-3584 chrM 4019 1 0 0 0 1 0 0 16-3584 chrM 4020 1 0 1 0 0 0 0 16-3584 chrM 4021 1 0 0 1 0 0 0 16-3584 chrM 4022 1 1 0 0 0 0 0 16-3584 chrM 4023 1 1 0 0 0 0 0 16-3584 chrM 4024 1 1 0 0 0 0 0 16-3584 chrM 4025 1 1 0 0 0 0 0 16-3584 chrM 4026 1 0 0 0 1 0 0 16-3584 chrM 4027 1 0 0 0 1 0 0 16-3584 chrM 4028 1 0 0 1 0 0 0 16-3584 chrM 4029 1 1 0 0 0 0 0 16-3584 chrM 4030 1 0 1 0 0 0 0 16-3584 chrM 4031 1 0 1 0 0 0 0 16-3584 chrM 4032 1 1 0 0 0 0 0 16-3584 chrM 4033 1 0 0 0 1 0 0 16-3584 chrM 4034 1 0 0 1 0 0 0 16-3584 chrM 4035 1 0 0 0 1 0 0 16-3584 chrM 4036 1 0 1 0 0 0 0 16-3584 chrM 4037 1 0 0 1 0 0 0 16-3584 chrM 4038 1 0 1 0 0 0 0 16-3584 chrM 4039 1 0 1 0 0 0 0 16-3584 chrM 4040 1 1 0 0 0 0 0 16-3584 chrM 4041 1 1 0 0 0 0 0 16-3584 chrM 4042 1 0 0 1 0 0 0 16-3584 chrM 4043 1 0 0 1 0 0 0 16-3584 chrM 4044 1 0 1 0 0 0 0 16-3584 chrM 4045 1 1 0 0 0 0 0 16-3584 chrM 4046 1 0 0 1 0 0 0 16-3584 chrM 4047 1 0 1 0 0 0 0 16-3584 chrM 4048 1 1 0 0 0 0 0 16-3584 chrM 4049 1 0 0 1 0 0 0 16-3584 chrM 4050 1 0 1 0 0 0 0 16-3584 chrM 4051 1 0 0 1 0 0 0 16-3584 chrM 4052 1 0 0 1 0 0 0 16-3584 chrM 4053 1 0 0 1 0 0 0 16-3584 chrM 4054 1 0 0 0 1 0 0 16-3584 chrM 4055 1 0 1 0 0 0 0 16-3584 chrM 4056 1 0 1 0 0 0 0 16-3584 chrM 4057 1 0 0 0 1 0 0 16-3584 chrM 4058 1 0 0 0 1 0 0 16-3584 chrM 4059 1 0 1 0 0 0 0 16-3584 chrM 4060 1 0 0 0 1 0 0 16-3584 chrM 4061 1 0 1 0 0 0 0 16-3584 chrM 4062 1 0 0 1 0 0 0 16-3584 chrM 4063 1 0 1 0 0 0 0 16-3584 chrM 4064 1 0 0 1 0 0 0 16-3584 chrM 4065 1 0 0 1 0 0 0 16-3584 chrM 4066 1 0 0 0 1 0 0 16-3584 chrM 4067 1 0 0 1 0 0 0 16-3584 chrM 4068 1 1 0 0 0 0 0 16-3584 chrM 4069 1 0 0 1 0 0 0 16-3584 chrM 4070 1 0 0 0 1 0 0 16-3584 chrM 4071 1 1 0 0 0 0 0 16-3584 chrM 4072 1 0 0 0 1 0 0 16-3584 chrM 4073 1 0 0 1 0 0 0 16-3584 chrM 4074 1 1 0 0 0 0 0 16-3584 chrM 4075 1 0 0 1 0 0 0 16-3584 chrM 4076 1 0 1 0 0 0 0 16-3584 chrM 4077 1 0 1 0 0 0 0 16-3584 chrM 4078 1 1 0 0 0 0 0 16-3584 chrM 4079 1 0 0 1 0 0 0 16-3584 chrM 4080 1 0 0 0 1 0 0 16-3584 chrM 4081 1 0 0 1 0 0 0 16-3584 chrM 4082 1 1 0 0 0 0 0 16-3584 chrM 4083 1 0 0 1 0 0 0 16-3584 chrM 4084 1 1 0 0 0 0 0 16-3584 chrM 4085 1 0 0 0 1 0 0 16-3584 chrM 4086 1 0 1 0 0 0 0 16-3584 chrM 4087 1 0 0 0 1 0 0 16-3584 chrM 4088 1 1 0 0 0 0 0 16-3584 chrM 4089 1 0 0 1 0 0 0 16-3584 chrM 4090 1 1 0 0 0 0 0 16-3584 chrM 4091 1 1 0 0 0 0 0 16-3584 chrM 4092 1 0 0 0 1 0 0 16-3584 chrM 4093 1 1 0 0 0 0 0 16-3584 chrM 4094 1 0 1 0 0 0 0 16-3584 chrM 4095 1 1 0 0 0 0 0 16-3584 chrM 4096 1 0 0 1 0 0 0 16-3584 chrM 4097 1 0 0 0 1 0 0 16-3584 chrM 4098 1 0 0 1 0 0 0 16-3584 chrM 4099 1 0 0 0 1 0 0 16-3584 chrM 4100 1 1 0 0 0 0 0 16-3584 chrM 4101 1 0 0 1 0 0 0 16-3584 chrM 4102 1 1 0 0 0 0 0 16-3584 chrM 4103 1 0 0 1 0 0 0 16-3584 chrM 4104 1 0 1 0 0 0 0 16-3584 chrM 4105 1 0 0 1 0 0 0 16-3584 chrM 4106 1 0 0 0 1 0 0 16-3584 chrM 4107 1 1 0 0 0 0 0 16-3584 chrM 4108 1 0 0 0 1 0 0 16-3584 chrM 4109 1 0 0 1 0 0 0 16-3584 chrM 4110 1 0 0 0 1 0 0 16-3584 chrM 4111 0 0 0 0 0 0 0 16-3584 chrM 4112 0 0 0 0 0 0 0 16-3584 chrM 4113 0 0 0 0 0 0 0 16-3584 chrM 4114 0 0 0 0 0 0 0 16-3584 chrM 4115 0 0 0 0 0 0 0 16-3584 chrM 4116 0 0 0 0 0 0 0 16-3584 chrM 4117 0 0 0 0 0 0 0 16-3584 chrM 4118 0 0 0 0 0 0 0 16-3584 chrM 4119 0 0 0 0 0 0 0 16-3584 chrM 4120 0 0 0 0 0 0 0 16-3584 chrM 4121 0 0 0 0 0 0 0 16-3584 chrM 4122 0 0 0 0 0 0 0 16-3584 chrM 4123 0 0 0 0 0 0 0 16-3584 chrM 4124 0 0 0 0 0 0 0 16-3584 chrM 4125 0 0 0 0 0 0 0 16-3584 chrM 4126 0 0 0 0 0 0 0 16-3584 chrM 4127 1 1 0 0 0 0 0 16-3584 chrM 4128 1 0 0 0 1 0 0 16-3584 chrM 4129 1 0 0 0 1 0 0 16-3584 chrM 4130 1 0 0 0 1 0 0 16-3584 chrM 4131 1 1 0 0 0 0 0 16-3584 chrM 4132 1 0 0 0 1 0 0 16-3584 chrM 4133 1 0 1 0 0 0 0 16-3584 chrM 4134 1 1 0 0 0 0 0 16-3584 chrM 4135 1 1 0 0 0 0 0 16-3584 chrM 4136 1 0 0 1 0 0 0 16-3584 chrM 4137 1 0 0 1 0 0 0 16-3584 chrM 4138 1 0 1 0 0 0 0 16-3584 chrM 4139 1 0 0 1 0 0 0 16-3584 chrM 4140 1 0 1 0 0 0 0 16-3584 chrM 4141 1 0 0 0 1 0 0 16-3584 chrM 4142 1 1 0 0 0 0 0 16-3584 chrM 4143 1 0 1 0 0 0 0 16-3584 chrM 4144 1 0 0 1 0 0 0 16-3584 chrM 4145 1 0 0 0 1 0 0 16-3584 chrM 4146 1 1 0 0 0 0 0 16-3584 chrM 4147 1 0 1 0 0 0 0 16-3584 chrM 4148 1 0 1 0 0 0 0 16-3584 chrM 4149 1 1 0 0 0 0 0 16-3584 chrM 4150 1 0 1 0 0 0 0 16-3584 chrM 4151 1 1 0 0 0 0 0 16-3584 chrM 4152 1 0 1 0 0 0 0 16-3584 chrM 4153 1 1 0 0 0 0 0 16-3584 chrM 4154 1 0 0 0 1 0 0 16-3584 chrM 4155 1 1 0 0 0 0 0 16-3584 chrM 4156 1 0 1 0 0 0 0 16-3584 chrM 4157 1 0 0 1 0 0 0 16-3584 chrM 4158 1 1 0 0 0 0 0 16-3584 chrM 4159 1 1 0 0 0 0 0 16-3584 chrM 4160 1 0 1 0 0 0 0 16-3584 chrM 4161 1 0 1 0 0 0 0 16-3584 chrM 4162 1 0 0 1 0 0 0 16-3584 chrM 4163 1 1 0 0 0 0 0 16-3584 chrM 4164 1 0 0 1 0 0 0 16-3584 chrM 4165 2 0 1 0 1 0 0 16-3584 chrM 4166 2 2 0 0 0 0 0 16-3584 chrM 4167 2 0 2 0 0 0 0 16-3584 chrM 4168 2 0 1 0 1 0 0 16-3584 chrM 4169 2 0 2 0 0 0 0 16-3584 chrM 4170 2 0 1 1 0 0 0 16-3584 chrM 4171 2 1 0 1 0 0 0 16-3584 chrM 4172 2 0 1 0 1 0 0 16-3584 chrM 4173 2 0 0 2 0 0 0 16-3584 chrM 4174 2 0 1 0 1 0 0 16-3584 chrM 4175 2 0 0 1 1 0 0 16-3584 chrM 4176 2 1 0 0 1 0 0 16-3584 chrM 4177 2 2 0 0 0 0 0 16-3584 chrM 4178 2 0 0 1 1 0 0 16-3584 chrM 4179 2 2 0 0 0 0 0 16-3584 chrM 4180 2 0 0 2 0 0 0 16-3584 chrM 4181 2 1 1 0 0 0 0 16-3584 chrM 4182 2 0 0 0 2 0 0 16-3584 chrM 4183 2 0 0 1 1 0 0 16-3584 chrM 4184 2 0 1 1 0 0 0 16-3584 chrM 4185 2 1 0 0 1 0 0 16-3584 chrM 4186 2 1 0 0 1 0 0 16-3584 chrM 4187 2 1 0 0 1 0 0 16-3584 chrM 4188 2 0 1 0 1 0 0 16-3584 chrM 4189 2 0 2 0 0 0 0 16-3584 chrM 4190 2 0 0 1 1 0 0 16-3584 chrM 4191 2 0 2 0 0 0 0 16-3584 chrM 4192 2 1 1 0 0 0 0 16-3584 chrM 4193 2 1 0 1 0 0 0 16-3584 chrM 4194 2 1 0 0 1 0 0 16-3584 chrM 4195 2 0 1 0 1 0 0 16-3584 chrM 4196 2 1 0 1 0 0 0 16-3584 chrM 4197 2 0 1 1 0 0 0 16-3584 chrM 4198 2 0 0 0 2 0 0 16-3584 chrM 4199 2 1 0 0 1 0 0 16-3584 chrM 4200 2 1 1 0 0 0 0 16-3584 chrM 4201 2 0 0 0 2 0 0 16-3584 chrM 4202 2 0 1 0 1 0 0 16-3584 chrM 4203 2 0 1 1 0 0 0 16-3584 chrM 4204 2 2 0 0 0 0 0 16-3584 chrM 4205 2 1 0 1 0 0 0 16-3584 chrM 4206 2 1 0 0 1 0 0 16-3584 chrM 4207 2 1 0 1 0 0 0 16-3584 chrM 4208 2 0 1 1 0 0 0 16-3584 chrM 4209 2 1 1 0 0 0 0 16-3584 chrM 4210 2 0 0 1 1 0 0 16-3584 chrM 4211 2 0 1 1 0 0 0 16-3584 chrM 4212 2 1 1 0 0 0 0 16-3584 chrM 4213 2 1 0 0 1 0 0 16-3584 chrM 4214 2 0 0 1 1 0 0 16-3584 chrM 4215 2 0 1 1 0 0 0 16-3584 chrM 4216 2 0 2 0 0 0 0 16-3584 chrM 4217 3 2 0 1 0 0 0 16-3584 chrM 4218 3 2 0 0 1 0 0 16-3584 chrM 4219 3 1 0 0 2 0 0 16-3584 chrM 4220 3 0 0 1 2 0 0 16-3584 chrM 4221 3 0 1 2 0 0 0 16-3584 chrM 4222 3 1 0 1 1 0 0 16-3584 chrM 4223 3 1 2 0 0 0 0 16-3584 chrM 4224 3 1 0 2 0 0 0 16-3584 chrM 4225 3 0 1 2 0 0 0 16-3584 chrM 4226 3 1 1 0 1 0 0 16-3584 chrM 4227 3 2 1 0 0 0 0 16-3584 chrM 4228 3 0 1 1 1 0 0 16-3584 chrM 4229 3 1 1 0 1 0 0 16-3584 chrM 4230 3 1 1 0 1 0 0 16-3584 chrM 4231 3 1 0 1 1 0 0 16-3584 chrM 4232 3 0 1 2 0 0 0 16-3584 chrM 4233 3 0 1 1 1 0 0 16-3584 chrM 4234 3 0 2 1 0 0 0 16-3584 chrM 4235 3 1 1 0 1 0 0 16-3584 chrM 4236 3 0 2 0 1 0 0 16-3584 chrM 4237 3 2 0 0 1 0 0 16-3584 chrM 4238 3 1 0 0 2 0 0 16-3584 chrM 4239 3 2 0 0 1 0 0 16-3584 chrM 4240 3 0 2 1 0 0 0 16-3584 chrM 4241 3 1 0 1 1 0 0 16-3584 chrM 4242 3 0 1 0 2 0 0 16-3584 chrM 4243 3 0 1 2 0 0 0 16-3584 chrM 4244 3 0 2 1 0 0 0 16-3584 chrM 4245 3 0 2 0 1 0 0 16-3584 chrM 4246 3 0 2 1 0 0 0 16-3584 chrM 4247 3 1 1 0 1 0 0 16-3584 chrM 4248 3 0 0 1 2 0 0 16-3584 chrM 4249 3 1 1 1 0 0 0 16-3584 chrM 4250 3 1 0 1 1 0 0 16-3584 chrM 4251 3 0 2 0 1 0 0 16-3584 chrM 4252 3 1 0 1 1 0 0 16-3584 chrM 4253 3 1 1 1 0 0 0 16-3584 chrM 4254 3 1 1 0 1 0 0 16-3584 chrM 4255 3 1 1 0 1 0 0 16-3584 chrM 4256 3 0 2 0 1 0 0 16-3584 chrM 4257 3 0 0 3 0 0 0 16-3584 chrM 4258 3 0 0 3 0 0 0 16-3584 chrM 4259 3 0 1 1 1 0 0 16-3584 chrM 4260 3 1 0 0 2 0 0 16-3584 chrM 4261 3 1 2 0 0 0 0 16-3584 chrM 4262 3 1 1 1 0 0 0 16-3584 chrM 4263 3 0 0 2 1 0 0 16-3584 chrM 4264 3 0 2 0 1 0 0 16-3584 chrM 4265 3 0 0 1 2 0 0 16-3584 chrM 4266 3 1 1 1 0 0 0 16-3584 chrM 4267 3 1 1 1 0 0 0 16-3584 chrM 4268 3 1 1 1 0 0 0 16-3584 chrM 4269 3 1 1 0 1 0 0 16-3584 chrM 4270 3 0 2 0 1 0 0 16-3584 chrM 4271 3 0 1 2 0 0 0 16-3584 chrM 4272 3 0 2 0 1 0 0 16-3584 chrM 4273 2 1 0 1 0 0 0 16-3584 chrM 4274 2 1 0 0 1 0 0 16-3584 chrM 4275 2 0 1 1 0 0 0 16-3584 chrM 4276 2 2 0 0 0 0 0 16-3584 chrM 4277 2 1 0 1 0 0 0 16-3584 chrM 4278 2 1 0 1 0 0 0 16-3584 chrM 4279 2 0 0 2 0 0 0 16-3584 chrM 4280 2 0 0 0 2 0 0 16-3584 chrM 4281 2 2 0 0 0 0 0 16-3584 chrM 4282 2 1 0 1 0 0 0 16-3584 chrM 4283 2 0 1 1 0 0 0 16-3584 chrM 4284 2 0 0 1 1 0 0 16-3584 chrM 4285 2 0 0 1 1 0 0 16-3584 chrM 4286 2 1 0 1 0 0 0 16-3584 chrM 4287 2 0 2 0 0 0 0 16-3584 chrM 4288 2 2 0 0 0 0 0 16-3584 chrM 4289 2 0 1 0 1 0 0 16-3584 chrM 4290 2 0 0 1 1 0 0 16-3584 chrM 4291 2 0 0 0 2 0 0 16-3584 chrM 4292 2 2 0 0 0 0 0 16-3584 chrM 4293 2 2 0 0 0 0 0 16-3584 chrM 4294 2 1 1 0 0 0 0 16-3584 chrM 4295 2 0 0 1 1 0 0 16-3584 chrM 4296 2 1 1 0 0 0 0 16-3584 chrM 4297 2 1 0 0 1 0 0 16-3584 chrM 4298 2 1 0 0 1 0 0 16-3584 chrM 4299 2 1 0 0 1 0 0 16-3584 chrM 4300 2 1 1 0 0 0 0 16-3584 chrM 4301 2 0 0 0 2 0 0 16-3584 chrM 4302 2 1 0 1 0 0 0 16-3584 chrM 4303 2 1 1 0 0 0 0 16-3584 chrM 4304 2 0 0 0 2 0 0 16-3584 chrM 4305 2 1 0 0 1 0 0 16-3584 chrM 4306 2 2 0 0 0 0 0 16-3584 chrM 4307 2 0 0 1 1 0 0 16-3584 chrM 4308 2 2 0 0 0 0 0 16-3584 chrM 4309 1 0 0 1 0 0 0 16-3584 chrM 4310 1 0 1 0 0 0 0 16-3584 chrM 4311 1 0 0 1 0 0 0 16-3584 chrM 4312 1 1 0 0 0 0 0 16-3584 chrM 4313 1 0 1 0 0 0 0 16-3584 chrM 4314 1 0 1 0 0 0 0 16-3584 chrM 4315 1 0 0 0 1 0 0 16-3584 chrM 4316 1 0 0 0 1 0 0 16-3584 chrM 4317 1 0 0 0 1 0 0 16-3584 chrM 4318 1 0 0 1 0 0 0 16-3584 chrM 4319 1 0 0 0 1 0 0 16-3584 chrM 4320 1 0 1 0 0 0 0 16-3584 chrM 4321 1 0 0 1 0 0 0 16-3584 chrM 4322 1 1 0 0 0 0 0 16-3584 chrM 4323 1 0 1 0 0 0 0 16-3584 chrM 4324 1 0 1 0 0 0 0 16-3584 chrM 4325 1 1 0 0 0 0 0 16-3584 chrM 4326 1 0 0 0 1 0 0 16-3584 chrM 4327 1 0 0 0 1 0 0 16-3584 chrM 4328 1 1 0 0 0 0 0 16-3584 chrM 4329 1 0 0 1 0 0 0 16-3584 chrM 4330 1 1 0 0 0 0 0 16-3584 chrM 4331 1 0 0 1 0 0 0 16-3584 chrM 4332 1 1 0 0 0 0 0 16-3584 chrM 4333 1 1 0 0 0 0 0 16-3584 chrM 4334 1 0 0 0 1 0 0 16-3584 chrM 4335 1 0 0 0 1 0 0 16-3584 chrM 4336 1 0 0 0 1 0 0 16-3584 chrM 4337 1 0 0 0 1 0 0 16-3584 chrM 4338 1 0 0 1 0 0 0 16-3584 chrM 4339 1 0 0 0 1 0 0 16-3584 chrM 4340 1 1 0 0 0 0 0 16-3584 chrM 4341 1 0 0 0 1 0 0 16-3584 chrM 4342 1 0 0 0 1 0 0 16-3584 chrM 4343 1 1 0 0 0 0 0 16-3584 chrM 4344 1 0 0 1 0 0 0 16-3584 chrM 4345 1 0 0 0 1 0 0 16-3584 chrM 4346 1 0 1 0 0 0 0 16-3584 chrM 4347 1 1 0 0 0 0 0 16-3584 chrM 4348 1 0 1 0 0 0 0 16-3584 chrM 4349 1 0 0 0 1 0 0 16-3584 chrM 4350 1 0 0 1 0 0 0 16-3584 chrM 4351 1 0 0 0 1 0 0 16-3584 chrM 4352 1 0 0 0 1 0 0 16-3584 chrM 4353 1 0 1 0 0 0 0 16-3584 chrM 4354 1 1 0 0 0 0 0 16-3584 chrM 4355 1 0 0 0 1 0 0 16-3584 chrM 4356 1 0 0 0 1 0 0 16-3584 chrM 4357 1 0 0 0 1 0 0 16-3584 chrM 4358 1 0 0 1 0 0 0 16-3584 chrM 4359 1 1 0 0 0 0 0 16-3584 chrM 4360 1 1 0 0 0 0 0 16-3584 chrM 4361 1 0 0 0 1 0 0 16-3584 chrM 4362 1 0 0 1 0 0 0 16-3584 chrM 4363 0 0 0 0 0 0 0 16-3584 chrM 4364 0 0 0 0 0 0 0 16-3584 chrM 4365 0 0 0 0 0 0 0 16-3584 chrM 4366 0 0 0 0 0 0 0 16-3584 chrM 4367 0 0 0 0 0 0 0 16-3584 chrM 4368 0 0 0 0 0 0 0 16-3584 chrM 4369 0 0 0 0 0 0 0 16-3584 chrM 4370 0 0 0 0 0 0 0 16-3584 chrM 4371 0 0 0 0 0 0 0 16-3584 chrM 4372 0 0 0 0 0 0 0 16-3584 chrM 4373 0 0 0 0 0 0 0 16-3584 chrM 4374 0 0 0 0 0 0 0 16-3584 chrM 4375 0 0 0 0 0 0 0 16-3584 chrM 4376 0 0 0 0 0 0 0 16-3584 chrM 4377 0 0 0 0 0 0 0 16-3584 chrM 4378 0 0 0 0 0 0 0 16-3584 chrM 4379 0 0 0 0 0 0 0 16-3584 chrM 4380 0 0 0 0 0 0 0 16-3584 chrM 4381 0 0 0 0 0 0 0 16-3584 chrM 4382 0 0 0 0 0 0 0 16-3584 chrM 4383 0 0 0 0 0 0 0 16-3584 chrM 4384 0 0 0 0 0 0 0 16-3584 chrM 4385 0 0 0 0 0 0 0 16-3584 chrM 4386 0 0 0 0 0 0 0 16-3584 chrM 4387 0 0 0 0 0 0 0 16-3584 chrM 4388 0 0 0 0 0 0 0 16-3584 chrM 4389 0 0 0 0 0 0 0 16-3584 chrM 4390 0 0 0 0 0 0 0 16-3584 chrM 4391 0 0 0 0 0 0 0 16-3584 chrM 4392 0 0 0 0 0 0 0 16-3584 chrM 4393 0 0 0 0 0 0 0 16-3584 chrM 4394 0 0 0 0 0 0 0 16-3584 chrM 4395 0 0 0 0 0 0 0 16-3584 chrM 4396 0 0 0 0 0 0 0 16-3584 chrM 4397 0 0 0 0 0 0 0 16-3584 chrM 4398 0 0 0 0 0 0 0 16-3584 chrM 4399 0 0 0 0 0 0 0 16-3584 chrM 4400 0 0 0 0 0 0 0 16-3584 chrM 4401 0 0 0 0 0 0 0 16-3584 chrM 4402 0 0 0 0 0 0 0 16-3584 chrM 4403 0 0 0 0 0 0 0 16-3584 chrM 4404 0 0 0 0 0 0 0 16-3584 chrM 4405 0 0 0 0 0 0 0 16-3584 chrM 4406 0 0 0 0 0 0 0 16-3584 chrM 4407 0 0 0 0 0 0 0 16-3584 chrM 4408 0 0 0 0 0 0 0 16-3584 chrM 4409 0 0 0 0 0 0 0 16-3584 chrM 4410 0 0 0 0 0 0 0 16-3584 chrM 4411 0 0 0 0 0 0 0 16-3584 chrM 4412 0 0 0 0 0 0 0 16-3584 chrM 4413 0 0 0 0 0 0 0 16-3584 chrM 4414 0 0 0 0 0 0 0 16-3584 chrM 4415 0 0 0 0 0 0 0 16-3584 chrM 4416 0 0 0 0 0 0 0 16-3584 chrM 4417 0 0 0 0 0 0 0 16-3584 chrM 4418 0 0 0 0 0 0 0 16-3584 chrM 4419 0 0 0 0 0 0 0 16-3584 chrM 4420 0 0 0 0 0 0 0 16-3584 chrM 4421 0 0 0 0 0 0 0 16-3584 chrM 4422 0 0 0 0 0 0 0 16-3584 chrM 4423 0 0 0 0 0 0 0 16-3584 chrM 4424 0 0 0 0 0 0 0 16-3584 chrM 4425 0 0 0 0 0 0 0 16-3584 chrM 4426 0 0 0 0 0 0 0 16-3584 chrM 4427 0 0 0 0 0 0 0 16-3584 chrM 4428 0 0 0 0 0 0 0 16-3584 chrM 4429 0 0 0 0 0 0 0 16-3584 chrM 4430 0 0 0 0 0 0 0 16-3584 chrM 4431 0 0 0 0 0 0 0 16-3584 chrM 4432 0 0 0 0 0 0 0 16-3584 chrM 4433 0 0 0 0 0 0 0 16-3584 chrM 4434 0 0 0 0 0 0 0 16-3584 chrM 4435 0 0 0 0 0 0 0 16-3584 chrM 4436 0 0 0 0 0 0 0 16-3584 chrM 4437 0 0 0 0 0 0 0 16-3584 chrM 4438 0 0 0 0 0 0 0 16-3584 chrM 4439 0 0 0 0 0 0 0 16-3584 chrM 4440 0 0 0 0 0 0 0 16-3584 chrM 4441 0 0 0 0 0 0 0 16-3584 chrM 4442 0 0 0 0 0 0 0 16-3584 chrM 4443 0 0 0 0 0 0 0 16-3584 chrM 4444 0 0 0 0 0 0 0 16-3584 chrM 4445 0 0 0 0 0 0 0 16-3584 chrM 4446 0 0 0 0 0 0 0 16-3584 chrM 4447 0 0 0 0 0 0 0 16-3584 chrM 4448 0 0 0 0 0 0 0 16-3584 chrM 4449 0 0 0 0 0 0 0 16-3584 chrM 4450 0 0 0 0 0 0 0 16-3584 chrM 4451 0 0 0 0 0 0 0 16-3584 chrM 4452 0 0 0 0 0 0 0 16-3584 chrM 4453 0 0 0 0 0 0 0 16-3584 chrM 4454 0 0 0 0 0 0 0 16-3584 chrM 4455 0 0 0 0 0 0 0 16-3584 chrM 4456 0 0 0 0 0 0 0 16-3584 chrM 4457 0 0 0 0 0 0 0 16-3584 chrM 4458 0 0 0 0 0 0 0 16-3584 chrM 4459 0 0 0 0 0 0 0 16-3584 chrM 4460 0 0 0 0 0 0 0 16-3584 chrM 4461 0 0 0 0 0 0 0 16-3584 chrM 4462 0 0 0 0 0 0 0 16-3584 chrM 4463 0 0 0 0 0 0 0 16-3584 chrM 4464 0 0 0 0 0 0 0 16-3584 chrM 4465 0 0 0 0 0 0 0 16-3584 chrM 4466 0 0 0 0 0 0 0 16-3584 chrM 4467 0 0 0 0 0 0 0 16-3584 chrM 4468 0 0 0 0 0 0 0 16-3584 chrM 4469 0 0 0 0 0 0 0 16-3584 chrM 4470 0 0 0 0 0 0 0 16-3584 chrM 4471 0 0 0 0 0 0 0 16-3584 chrM 4472 0 0 0 0 0 0 0 16-3584 chrM 4473 0 0 0 0 0 0 0 16-3584 chrM 4474 0 0 0 0 0 0 0 16-3584 chrM 4475 0 0 0 0 0 0 0 16-3584 chrM 4476 0 0 0 0 0 0 0 16-3584 chrM 4477 0 0 0 0 0 0 0 16-3584 chrM 4478 0 0 0 0 0 0 0 16-3584 chrM 4479 0 0 0 0 0 0 0 16-3584 chrM 4480 0 0 0 0 0 0 0 16-3584 chrM 4481 0 0 0 0 0 0 0 16-3584 chrM 4482 0 0 0 0 0 0 0 16-3584 chrM 4483 0 0 0 0 0 0 0 16-3584 chrM 4484 0 0 0 0 0 0 0 16-3584 chrM 4485 0 0 0 0 0 0 0 16-3584 chrM 4486 0 0 0 0 0 0 0 16-3584 chrM 4487 0 0 0 0 0 0 0 16-3584 chrM 4488 0 0 0 0 0 0 0 16-3584 chrM 4489 0 0 0 0 0 0 0 16-3584 chrM 4490 0 0 0 0 0 0 0 16-3584 chrM 4491 0 0 0 0 0 0 0 16-3584 chrM 4492 0 0 0 0 0 0 0 16-3584 chrM 4493 0 0 0 0 0 0 0 16-3584 chrM 4494 0 0 0 0 0 0 0 16-3584 chrM 4495 0 0 0 0 0 0 0 16-3584 chrM 4496 0 0 0 0 0 0 0 16-3584 chrM 4497 0 0 0 0 0 0 0 16-3584 chrM 4498 0 0 0 0 0 0 0 16-3584 chrM 4499 0 0 0 0 0 0 0 16-3584 chrM 4500 0 0 0 0 0 0 0 16-3584 chrM 4501 0 0 0 0 0 0 0 16-3584 chrM 4502 0 0 0 0 0 0 0 16-3584 chrM 4503 0 0 0 0 0 0 0 16-3584 chrM 4504 0 0 0 0 0 0 0 16-3584 chrM 4505 0 0 0 0 0 0 0 16-3584 chrM 4506 0 0 0 0 0 0 0 16-3584 chrM 4507 0 0 0 0 0 0 0 16-3584 chrM 4508 0 0 0 0 0 0 0 16-3584 chrM 4509 0 0 0 0 0 0 0 16-3584 chrM 4510 0 0 0 0 0 0 0 16-3584 chrM 4511 0 0 0 0 0 0 0 16-3584 chrM 4512 0 0 0 0 0 0 0 16-3584 chrM 4513 0 0 0 0 0 0 0 16-3584 chrM 4514 0 0 0 0 0 0 0 16-3584 chrM 4515 0 0 0 0 0 0 0 16-3584 chrM 4516 0 0 0 0 0 0 0 16-3584 chrM 4517 0 0 0 0 0 0 0 16-3584 chrM 4518 0 0 0 0 0 0 0 16-3584 chrM 4519 0 0 0 0 0 0 0 16-3584 chrM 4520 0 0 0 0 0 0 0 16-3584 chrM 4521 0 0 0 0 0 0 0 16-3584 chrM 4522 0 0 0 0 0 0 0 16-3584 chrM 4523 0 0 0 0 0 0 0 16-3584 chrM 4524 0 0 0 0 0 0 0 16-3584 chrM 4525 0 0 0 0 0 0 0 16-3584 chrM 4526 0 0 0 0 0 0 0 16-3584 chrM 4527 0 0 0 0 0 0 0 16-3584 chrM 4528 0 0 0 0 0 0 0 16-3584 chrM 4529 0 0 0 0 0 0 0 16-3584 chrM 4530 0 0 0 0 0 0 0 16-3584 chrM 4531 0 0 0 0 0 0 0 16-3584 chrM 4532 0 0 0 0 0 0 0 16-3584 chrM 4533 0 0 0 0 0 0 0 16-3584 chrM 4534 0 0 0 0 0 0 0 16-3584 chrM 4535 0 0 0 0 0 0 0 16-3584 chrM 4536 0 0 0 0 0 0 0 16-3584 chrM 4537 0 0 0 0 0 0 0 16-3584 chrM 4538 0 0 0 0 0 0 0 16-3584 chrM 4539 0 0 0 0 0 0 0 16-3584 chrM 4540 0 0 0 0 0 0 0 16-3584 chrM 4541 0 0 0 0 0 0 0 16-3584 chrM 4542 0 0 0 0 0 0 0 16-3584 chrM 4543 0 0 0 0 0 0 0 16-3584 chrM 4544 0 0 0 0 0 0 0 16-3584 chrM 4545 0 0 0 0 0 0 0 16-3584 chrM 4546 0 0 0 0 0 0 0 16-3584 chrM 4547 0 0 0 0 0 0 0 16-3584 chrM 4548 0 0 0 0 0 0 0 16-3584 chrM 4549 0 0 0 0 0 0 0 16-3584 chrM 4550 0 0 0 0 0 0 0 16-3584 chrM 4551 0 0 0 0 0 0 0 16-3584 chrM 4552 0 0 0 0 0 0 0 16-3584 chrM 4553 0 0 0 0 0 0 0 16-3584 chrM 4554 0 0 0 0 0 0 0 16-3584 chrM 4555 0 0 0 0 0 0 0 16-3584 chrM 4556 0 0 0 0 0 0 0 16-3584 chrM 4557 0 0 0 0 0 0 0 16-3584 chrM 4558 0 0 0 0 0 0 0 16-3584 chrM 4559 0 0 0 0 0 0 0 16-3584 chrM 4560 0 0 0 0 0 0 0 16-3584 chrM 4561 0 0 0 0 0 0 0 16-3584 chrM 4562 0 0 0 0 0 0 0 16-3584 chrM 4563 0 0 0 0 0 0 0 16-3584 chrM 4564 0 0 0 0 0 0 0 16-3584 chrM 4565 0 0 0 0 0 0 0 16-3584 chrM 4566 0 0 0 0 0 0 0 16-3584 chrM 4567 0 0 0 0 0 0 0 16-3584 chrM 4568 0 0 0 0 0 0 0 16-3584 chrM 4569 0 0 0 0 0 0 0 16-3584 chrM 4570 0 0 0 0 0 0 0 16-3584 chrM 4571 0 0 0 0 0 0 0 16-3584 chrM 4572 0 0 0 0 0 0 0 16-3584 chrM 4573 0 0 0 0 0 0 0 16-3584 chrM 4574 0 0 0 0 0 0 0 16-3584 chrM 4575 0 0 0 0 0 0 0 16-3584 chrM 4576 0 0 0 0 0 0 0 16-3584 chrM 4577 0 0 0 0 0 0 0 16-3584 chrM 4578 0 0 0 0 0 0 0 16-3584 chrM 4579 0 0 0 0 0 0 0 16-3584 chrM 4580 0 0 0 0 0 0 0 16-3584 chrM 4581 0 0 0 0 0 0 0 16-3584 chrM 4582 0 0 0 0 0 0 0 16-3584 chrM 4583 0 0 0 0 0 0 0 16-3584 chrM 4584 0 0 0 0 0 0 0 16-3584 chrM 4585 0 0 0 0 0 0 0 16-3584 chrM 4586 0 0 0 0 0 0 0 16-3584 chrM 4587 0 0 0 0 0 0 0 16-3584 chrM 4588 0 0 0 0 0 0 0 16-3584 chrM 4589 0 0 0 0 0 0 0 16-3584 chrM 4590 0 0 0 0 0 0 0 16-3584 chrM 4591 0 0 0 0 0 0 0 16-3584 chrM 4592 0 0 0 0 0 0 0 16-3584 chrM 4593 0 0 0 0 0 0 0 16-3584 chrM 4594 0 0 0 0 0 0 0 16-3584 chrM 4595 0 0 0 0 0 0 0 16-3584 chrM 4596 0 0 0 0 0 0 0 16-3584 chrM 4597 0 0 0 0 0 0 0 16-3584 chrM 4598 0 0 0 0 0 0 0 16-3584 chrM 4599 0 0 0 0 0 0 0 16-3584 chrM 4600 0 0 0 0 0 0 0 16-3584 chrM 4601 0 0 0 0 0 0 0 16-3584 chrM 4602 0 0 0 0 0 0 0 16-3584 chrM 4603 0 0 0 0 0 0 0 16-3584 chrM 4604 0 0 0 0 0 0 0 16-3584 chrM 4605 0 0 0 0 0 0 0 16-3584 chrM 4606 0 0 0 0 0 0 0 16-3584 chrM 4607 0 0 0 0 0 0 0 16-3584 chrM 4608 0 0 0 0 0 0 0 16-3584 chrM 4609 0 0 0 0 0 0 0 16-3584 chrM 4610 0 0 0 0 0 0 0 16-3584 chrM 4611 0 0 0 0 0 0 0 16-3584 chrM 4612 0 0 0 0 0 0 0 16-3584 chrM 4613 0 0 0 0 0 0 0 16-3584 chrM 4614 0 0 0 0 0 0 0 16-3584 chrM 4615 0 0 0 0 0 0 0 16-3584 chrM 4616 0 0 0 0 0 0 0 16-3584 chrM 4617 0 0 0 0 0 0 0 16-3584 chrM 4618 0 0 0 0 0 0 0 16-3584 chrM 4619 0 0 0 0 0 0 0 16-3584 chrM 4620 0 0 0 0 0 0 0 16-3584 chrM 4621 0 0 0 0 0 0 0 16-3584 chrM 4622 0 0 0 0 0 0 0 16-3584 chrM 4623 0 0 0 0 0 0 0 16-3584 chrM 4624 0 0 0 0 0 0 0 16-3584 chrM 4625 0 0 0 0 0 0 0 16-3584 chrM 4626 0 0 0 0 0 0 0 16-3584 chrM 4627 0 0 0 0 0 0 0 16-3584 chrM 4628 0 0 0 0 0 0 0 16-3584 chrM 4629 0 0 0 0 0 0 0 16-3584 chrM 4630 0 0 0 0 0 0 0 16-3584 chrM 4631 0 0 0 0 0 0 0 16-3584 chrM 4632 0 0 0 0 0 0 0 16-3584 chrM 4633 0 0 0 0 0 0 0 16-3584 chrM 4634 0 0 0 0 0 0 0 16-3584 chrM 4635 0 0 0 0 0 0 0 16-3584 chrM 4636 0 0 0 0 0 0 0 16-3584 chrM 4637 0 0 0 0 0 0 0 16-3584 chrM 4638 0 0 0 0 0 0 0 16-3584 chrM 4639 0 0 0 0 0 0 0 16-3584 chrM 4640 0 0 0 0 0 0 0 16-3584 chrM 4641 0 0 0 0 0 0 0 16-3584 chrM 4642 0 0 0 0 0 0 0 16-3584 chrM 4643 0 0 0 0 0 0 0 16-3584 chrM 4644 0 0 0 0 0 0 0 16-3584 chrM 4645 0 0 0 0 0 0 0 16-3584 chrM 4646 0 0 0 0 0 0 0 16-3584 chrM 4647 0 0 0 0 0 0 0 16-3584 chrM 4648 0 0 0 0 0 0 0 16-3584 chrM 4649 0 0 0 0 0 0 0 16-3584 chrM 4650 0 0 0 0 0 0 0 16-3584 chrM 4651 0 0 0 0 0 0 0 16-3584 chrM 4652 0 0 0 0 0 0 0 16-3584 chrM 4653 0 0 0 0 0 0 0 16-3584 chrM 4654 0 0 0 0 0 0 0 16-3584 chrM 4655 0 0 0 0 0 0 0 16-3584 chrM 4656 0 0 0 0 0 0 0 16-3584 chrM 4657 0 0 0 0 0 0 0 16-3584 chrM 4658 0 0 0 0 0 0 0 16-3584 chrM 4659 0 0 0 0 0 0 0 16-3584 chrM 4660 0 0 0 0 0 0 0 16-3584 chrM 4661 0 0 0 0 0 0 0 16-3584 chrM 4662 0 0 0 0 0 0 0 16-3584 chrM 4663 0 0 0 0 0 0 0 16-3584 chrM 4664 0 0 0 0 0 0 0 16-3584 chrM 4665 0 0 0 0 0 0 0 16-3584 chrM 4666 0 0 0 0 0 0 0 16-3584 chrM 4667 0 0 0 0 0 0 0 16-3584 chrM 4668 0 0 0 0 0 0 0 16-3584 chrM 4669 0 0 0 0 0 0 0 16-3584 chrM 4670 0 0 0 0 0 0 0 16-3584 chrM 4671 0 0 0 0 0 0 0 16-3584 chrM 4672 0 0 0 0 0 0 0 16-3584 chrM 4673 0 0 0 0 0 0 0 16-3584 chrM 4674 0 0 0 0 0 0 0 16-3584 chrM 4675 0 0 0 0 0 0 0 16-3584 chrM 4676 0 0 0 0 0 0 0 16-3584 chrM 4677 0 0 0 0 0 0 0 16-3584 chrM 4678 0 0 0 0 0 0 0 16-3584 chrM 4679 0 0 0 0 0 0 0 16-3584 chrM 4680 0 0 0 0 0 0 0 16-3584 chrM 4681 0 0 0 0 0 0 0 16-3584 chrM 4682 0 0 0 0 0 0 0 16-3584 chrM 4683 0 0 0 0 0 0 0 16-3584 chrM 4684 0 0 0 0 0 0 0 16-3584 chrM 4685 0 0 0 0 0 0 0 16-3584 chrM 4686 0 0 0 0 0 0 0 16-3584 chrM 4687 0 0 0 0 0 0 0 16-3584 chrM 4688 0 0 0 0 0 0 0 16-3584 chrM 4689 0 0 0 0 0 0 0 16-3584 chrM 4690 0 0 0 0 0 0 0 16-3584 chrM 4691 0 0 0 0 0 0 0 16-3584 chrM 4692 0 0 0 0 0 0 0 16-3584 chrM 4693 0 0 0 0 0 0 0 16-3584 chrM 4694 0 0 0 0 0 0 0 16-3584 chrM 4695 0 0 0 0 0 0 0 16-3584 chrM 4696 0 0 0 0 0 0 0 16-3584 chrM 4697 0 0 0 0 0 0 0 16-3584 chrM 4698 0 0 0 0 0 0 0 16-3584 chrM 4699 0 0 0 0 0 0 0 16-3584 chrM 4700 0 0 0 0 0 0 0 16-3584 chrM 4701 0 0 0 0 0 0 0 16-3584 chrM 4702 0 0 0 0 0 0 0 16-3584 chrM 4703 0 0 0 0 0 0 0 16-3584 chrM 4704 0 0 0 0 0 0 0 16-3584 chrM 4705 0 0 0 0 0 0 0 16-3584 chrM 4706 0 0 0 0 0 0 0 16-3584 chrM 4707 0 0 0 0 0 0 0 16-3584 chrM 4708 0 0 0 0 0 0 0 16-3584 chrM 4709 0 0 0 0 0 0 0 16-3584 chrM 4710 0 0 0 0 0 0 0 16-3584 chrM 4711 0 0 0 0 0 0 0 16-3584 chrM 4712 0 0 0 0 0 0 0 16-3584 chrM 4713 0 0 0 0 0 0 0 16-3584 chrM 4714 0 0 0 0 0 0 0 16-3584 chrM 4715 0 0 0 0 0 0 0 16-3584 chrM 4716 0 0 0 0 0 0 0 16-3584 chrM 4717 0 0 0 0 0 0 0 16-3584 chrM 4718 0 0 0 0 0 0 0 16-3584 chrM 4719 0 0 0 0 0 0 0 16-3584 chrM 4720 0 0 0 0 0 0 0 16-3584 chrM 4721 0 0 0 0 0 0 0 16-3584 chrM 4722 0 0 0 0 0 0 0 16-3584 chrM 4723 0 0 0 0 0 0 0 16-3584 chrM 4724 0 0 0 0 0 0 0 16-3584 chrM 4725 0 0 0 0 0 0 0 16-3584 chrM 4726 0 0 0 0 0 0 0 16-3584 chrM 4727 0 0 0 0 0 0 0 16-3584 chrM 4728 0 0 0 0 0 0 0 16-3584 chrM 4729 0 0 0 0 0 0 0 16-3584 chrM 4730 0 0 0 0 0 0 0 16-3584 chrM 4731 0 0 0 0 0 0 0 16-3584 chrM 4732 0 0 0 0 0 0 0 16-3584 chrM 4733 0 0 0 0 0 0 0 16-3584 chrM 4734 0 0 0 0 0 0 0 16-3584 chrM 4735 0 0 0 0 0 0 0 16-3584 chrM 4736 0 0 0 0 0 0 0 16-3584 chrM 4737 0 0 0 0 0 0 0 16-3584 chrM 4738 0 0 0 0 0 0 0 16-3584 chrM 4739 0 0 0 0 0 0 0 16-3584 chrM 4740 0 0 0 0 0 0 0 16-3584 chrM 4741 0 0 0 0 0 0 0 16-3584 chrM 4742 0 0 0 0 0 0 0 16-3584 chrM 4743 0 0 0 0 0 0 0 16-3584 chrM 4744 0 0 0 0 0 0 0 16-3584 chrM 4745 0 0 0 0 0 0 0 16-3584 chrM 4746 0 0 0 0 0 0 0 16-3584 chrM 4747 0 0 0 0 0 0 0 16-3584 chrM 4748 0 0 0 0 0 0 0 16-3584 chrM 4749 0 0 0 0 0 0 0 16-3584 chrM 4750 0 0 0 0 0 0 0 16-3584 chrM 4751 0 0 0 0 0 0 0 16-3584 chrM 4752 0 0 0 0 0 0 0 16-3584 chrM 4753 0 0 0 0 0 0 0 16-3584 chrM 4754 0 0 0 0 0 0 0 16-3584 chrM 4755 0 0 0 0 0 0 0 16-3584 chrM 4756 0 0 0 0 0 0 0 16-3584 chrM 4757 0 0 0 0 0 0 0 16-3584 chrM 4758 0 0 0 0 0 0 0 16-3584 chrM 4759 0 0 0 0 0 0 0 16-3584 chrM 4760 0 0 0 0 0 0 0 16-3584 chrM 4761 0 0 0 0 0 0 0 16-3584 chrM 4762 0 0 0 0 0 0 0 16-3584 chrM 4763 0 0 0 0 0 0 0 16-3584 chrM 4764 0 0 0 0 0 0 0 16-3584 chrM 4765 0 0 0 0 0 0 0 16-3584 chrM 4766 0 0 0 0 0 0 0 16-3584 chrM 4767 0 0 0 0 0 0 0 16-3584 chrM 4768 0 0 0 0 0 0 0 16-3584 chrM 4769 0 0 0 0 0 0 0 16-3584 chrM 4770 0 0 0 0 0 0 0 16-3584 chrM 4771 0 0 0 0 0 0 0 16-3584 chrM 4772 0 0 0 0 0 0 0 16-3584 chrM 4773 0 0 0 0 0 0 0 16-3584 chrM 4774 0 0 0 0 0 0 0 16-3584 chrM 4775 0 0 0 0 0 0 0 16-3584 chrM 4776 0 0 0 0 0 0 0 16-3584 chrM 4777 0 0 0 0 0 0 0 16-3584 chrM 4778 0 0 0 0 0 0 0 16-3584 chrM 4779 0 0 0 0 0 0 0 16-3584 chrM 4780 0 0 0 0 0 0 0 16-3584 chrM 4781 0 0 0 0 0 0 0 16-3584 chrM 4782 0 0 0 0 0 0 0 16-3584 chrM 4783 0 0 0 0 0 0 0 16-3584 chrM 4784 0 0 0 0 0 0 0 16-3584 chrM 4785 0 0 0 0 0 0 0 16-3584 chrM 4786 0 0 0 0 0 0 0 16-3584 chrM 4787 0 0 0 0 0 0 0 16-3584 chrM 4788 0 0 0 0 0 0 0 16-3584 chrM 4789 0 0 0 0 0 0 0 16-3584 chrM 4790 0 0 0 0 0 0 0 16-3584 chrM 4791 0 0 0 0 0 0 0 16-3584 chrM 4792 0 0 0 0 0 0 0 16-3584 chrM 4793 0 0 0 0 0 0 0 16-3584 chrM 4794 0 0 0 0 0 0 0 16-3584 chrM 4795 0 0 0 0 0 0 0 16-3584 chrM 4796 0 0 0 0 0 0 0 16-3584 chrM 4797 0 0 0 0 0 0 0 16-3584 chrM 4798 0 0 0 0 0 0 0 16-3584 chrM 4799 0 0 0 0 0 0 0 16-3584 chrM 4800 0 0 0 0 0 0 0 16-3584 chrM 4801 0 0 0 0 0 0 0 16-3584 chrM 4802 0 0 0 0 0 0 0 16-3584 chrM 4803 0 0 0 0 0 0 0 16-3584 chrM 4804 0 0 0 0 0 0 0 16-3584 chrM 4805 0 0 0 0 0 0 0 16-3584 chrM 4806 0 0 0 0 0 0 0 16-3584 chrM 4807 0 0 0 0 0 0 0 16-3584 chrM 4808 0 0 0 0 0 0 0 16-3584 chrM 4809 0 0 0 0 0 0 0 16-3584 chrM 4810 0 0 0 0 0 0 0 16-3584 chrM 4811 0 0 0 0 0 0 0 16-3584 chrM 4812 0 0 0 0 0 0 0 16-3584 chrM 4813 0 0 0 0 0 0 0 16-3584 chrM 4814 2 0 2 0 0 0 0 16-3584 chrM 4815 2 1 0 1 0 0 0 16-3584 chrM 4816 2 0 1 1 0 0 0 16-3584 chrM 4817 2 0 1 1 0 0 0 16-3584 chrM 4818 2 0 0 0 2 0 0 16-3584 chrM 4819 2 0 0 0 2 0 0 16-3584 chrM 4820 2 0 0 0 2 0 0 16-3584 chrM 4821 2 0 0 2 0 0 0 16-3584 chrM 4822 2 0 0 0 2 0 0 16-3584 chrM 4823 2 1 1 0 0 0 0 16-3584 chrM 4824 2 1 1 0 0 0 0 16-3584 chrM 4825 2 1 0 1 0 0 0 16-3584 chrM 4826 2 1 0 0 1 0 0 16-3584 chrM 4827 2 1 0 0 1 0 0 16-3584 chrM 4828 2 0 0 1 1 0 0 16-3584 chrM 4829 2 0 0 1 1 0 0 16-3584 chrM 4830 2 0 1 0 1 0 0 16-3584 chrM 4831 2 0 1 0 1 0 0 16-3584 chrM 4832 4 0 2 2 0 0 0 16-3584 chrM 4833 4 1 2 1 0 0 0 16-3584 chrM 4834 4 2 1 1 0 0 0 16-3584 chrM 4835 4 1 1 1 1 0 0 16-3584 chrM 4836 4 3 0 0 1 0 0 16-3584 chrM 4837 4 1 1 0 2 0 0 16-3584 chrM 4838 4 0 2 2 0 0 0 16-3584 chrM 4839 4 1 0 0 3 0 0 16-3584 chrM 4840 4 0 0 3 1 0 0 16-3584 chrM 4841 4 1 2 1 0 0 0 16-3584 chrM 4842 4 0 1 1 2 0 0 16-3584 chrM 4843 4 0 2 0 2 0 0 16-3584 chrM 4844 4 2 1 1 0 0 0 16-3584 chrM 4845 4 1 2 0 1 0 0 16-3584 chrM 4846 4 1 2 0 1 0 0 16-3584 chrM 4847 4 0 1 1 2 0 0 16-3584 chrM 4848 4 1 0 2 1 0 0 16-3584 chrM 4849 4 2 0 2 0 0 0 16-3584 chrM 4850 4 2 1 1 0 0 0 16-3584 chrM 4851 4 1 0 1 2 0 0 16-3584 chrM 4852 4 1 0 3 0 0 0 16-3584 chrM 4853 6 1 3 1 1 0 0 16-3584 chrM 4854 6 0 1 1 4 0 0 16-3584 chrM 4855 6 2 1 1 2 0 0 16-3584 chrM 4856 6 1 0 2 3 0 0 16-3584 chrM 4857 6 3 1 0 2 0 0 16-3584 chrM 4858 6 0 3 1 2 0 0 16-3584 chrM 4859 6 2 0 2 2 0 0 16-3584 chrM 4860 6 1 1 1 3 0 0 16-3584 chrM 4861 6 2 2 0 2 0 0 16-3584 chrM 4862 6 3 1 1 1 0 0 16-3584 chrM 4863 6 0 2 2 2 0 0 16-3584 chrM 4864 6 1 2 2 1 0 0 16-3584 chrM 4865 6 2 1 1 2 0 0 16-3584 chrM 4866 6 3 2 0 1 0 0 16-3584 chrM 4867 6 2 1 3 0 0 0 16-3584 chrM 4868 6 3 0 2 1 0 0 16-3584 chrM 4869 6 0 1 3 2 0 0 16-3584 chrM 4870 6 1 1 2 2 0 0 16-3584 chrM 4871 6 3 0 1 2 0 0 16-3584 chrM 4872 6 1 3 1 1 0 0 16-3584 chrM 4873 6 0 1 2 3 0 0 16-3584 chrM 4874 6 4 0 0 2 0 0 16-3584 chrM 4875 6 0 3 2 1 0 0 16-3584 chrM 4876 6 0 3 2 1 0 0 16-3584 chrM 4877 6 3 0 2 1 0 0 16-3584 chrM 4878 6 5 1 0 0 0 0 16-3584 chrM 4879 6 2 2 1 1 0 0 16-3584 chrM 4880 6 2 2 1 1 0 0 16-3584 chrM 4881 6 1 1 3 1 0 0 16-3584 chrM 4882 6 1 1 2 2 0 0 16-3584 chrM 4883 6 1 1 1 3 0 0 16-3584 chrM 4884 6 1 1 2 2 0 0 16-3584 chrM 4885 6 1 2 1 2 0 0 16-3584 chrM 4886 6 1 3 0 2 0 0 16-3584 chrM 4887 6 2 2 2 0 0 0 16-3584 chrM 4888 6 2 1 1 2 0 0 16-3584 chrM 4889 6 1 3 2 0 0 0 16-3584 chrM 4890 6 1 2 1 2 0 0 16-3584 chrM 4891 6 0 3 0 3 0 0 16-3584 chrM 4892 6 2 4 0 0 0 0 16-3584 chrM 4893 6 1 3 1 1 0 0 16-3584 chrM 4894 6 3 1 1 1 0 0 16-3584 chrM 4895 6 0 1 2 3 0 0 16-3584 chrM 4896 6 1 1 3 1 0 0 16-3584 chrM 4897 6 2 1 2 1 0 0 16-3584 chrM 4898 6 3 3 0 0 0 0 16-3584 chrM 4899 6 1 4 0 1 0 0 16-3584 chrM 4900 6 2 0 2 2 0 0 16-3584 chrM 4901 6 1 2 2 1 0 0 16-3584 chrM 4902 6 1 3 1 1 0 0 16-3584 chrM 4903 6 2 2 1 1 0 0 16-3584 chrM 4904 6 0 2 3 1 0 0 16-3584 chrM 4905 6 0 1 4 1 0 0 16-3584 chrM 4906 6 3 0 1 2 0 0 16-3584 chrM 4907 6 1 1 1 3 0 0 16-3584 chrM 4908 6 1 0 1 4 0 0 16-3584 chrM 4909 6 3 2 1 0 0 0 16-3584 chrM 4910 6 2 3 0 1 0 0 16-3584 chrM 4911 6 1 2 2 1 0 0 16-3584 chrM 4912 6 0 3 2 1 0 0 16-3584 chrM 4913 6 1 0 1 4 0 0 16-3584 chrM 4914 6 1 1 0 4 0 0 16-3584 chrM 4915 6 2 0 1 3 0 0 16-3584 chrM 4916 6 1 2 1 2 0 0 16-3584 chrM 4917 6 0 1 3 2 0 0 16-3584 chrM 4918 6 4 1 1 0 0 0 16-3584 chrM 4919 6 1 1 0 4 0 0 16-3584 chrM 4920 6 3 0 2 1 0 0 16-3584 chrM 4921 6 2 3 0 1 0 0 16-3584 chrM 4922 6 2 0 1 3 0 0 16-3584 chrM 4923 6 1 1 3 1 0 0 16-3584 chrM 4924 6 1 2 1 2 0 0 16-3584 chrM 4925 6 0 1 3 2 0 0 16-3584 chrM 4926 6 2 2 0 2 0 0 16-3584 chrM 4927 6 1 3 1 1 0 0 16-3584 chrM 4928 6 1 1 2 2 0 0 16-3584 chrM 4929 6 3 1 0 2 0 0 16-3584 chrM 4930 6 3 1 1 1 0 0 16-3584 chrM 4931 6 0 1 3 2 0 0 16-3584 chrM 4932 6 1 3 0 2 0 0 16-3584 chrM 4933 6 2 1 3 0 0 0 16-3584 chrM 4934 6 1 4 0 1 0 0 16-3584 chrM 4935 6 1 1 2 2 0 0 16-3584 chrM 4936 6 1 3 0 2 0 0 16-3584 chrM 4937 6 3 0 1 2 0 0 16-3584 chrM 4938 6 1 2 1 2 0 0 16-3584 chrM 4939 6 1 3 1 1 0 0 16-3584 chrM 4940 6 3 2 1 0 0 0 16-3584 chrM 4941 6 2 1 1 2 0 0 16-3584 chrM 4942 6 1 3 0 2 0 0 16-3584 chrM 4943 6 3 1 1 1 0 0 16-3584 chrM 4944 6 1 1 2 2 0 0 16-3584 chrM 4945 6 0 3 0 3 0 0 16-3584 chrM 4946 6 2 1 1 2 0 0 16-3584 chrM 4947 6 1 3 0 2 0 0 16-3584 chrM 4948 6 1 3 0 2 0 0 16-3584 chrM 4949 6 1 3 1 1 0 0 16-3584 chrM 4950 6 2 2 1 1 0 0 16-3584 chrM 4951 6 2 0 3 1 0 0 16-3584 chrM 4952 6 3 3 0 0 0 0 16-3584 chrM 4953 6 1 2 2 1 0 0 16-3584 chrM 4954 6 2 1 3 0 0 0 16-3584 chrM 4955 6 3 1 0 2 0 0 16-3584 chrM 4956 6 0 1 1 4 0 0 16-3584 chrM 4957 6 1 0 2 3 0 0 16-3584 chrM 4958 4 0 2 2 0 0 0 16-3584 chrM 4959 4 2 1 1 0 0 0 16-3584 chrM 4960 4 0 2 0 2 0 0 16-3584 chrM 4961 4 2 1 0 1 0 0 16-3584 chrM 4962 4 1 0 1 2 0 0 16-3584 chrM 4963 4 1 0 1 2 0 0 16-3584 chrM 4964 4 1 1 1 1 0 0 16-3584 chrM 4965 4 1 2 0 1 0 0 16-3584 chrM 4966 4 1 0 3 0 0 0 16-3584 chrM 4967 4 1 1 0 2 0 0 16-3584 chrM 4968 4 2 0 0 2 0 0 16-3584 chrM 4969 4 0 2 1 1 0 0 16-3584 chrM 4970 4 1 1 1 1 0 0 16-3584 chrM 4971 4 2 0 0 2 0 0 16-3584 chrM 4972 4 0 1 1 2 0 0 16-3584 chrM 4973 4 1 1 1 1 0 0 16-3584 chrM 4974 4 3 1 0 0 0 0 16-3584 chrM 4975 4 3 0 1 0 0 0 16-3584 chrM 4976 4 0 1 1 2 0 0 16-3584 chrM 4977 4 0 3 0 1 0 0 16-3584 chrM 4978 2 0 0 2 0 0 0 16-3584 chrM 4979 2 1 1 0 0 0 0 16-3584 chrM 4980 2 0 2 0 0 0 0 16-3584 chrM 4981 2 1 0 1 0 0 0 16-3584 chrM 4982 2 0 0 0 2 0 0 16-3584 chrM 4983 2 0 0 0 2 0 0 16-3584 chrM 4984 2 0 1 0 1 0 0 16-3584 chrM 4985 2 0 1 0 1 0 0 16-3584 chrM 4986 2 2 0 0 0 0 0 16-3584 chrM 4987 2 1 1 0 0 0 0 16-3584 chrM 4988 2 2 0 0 0 0 0 16-3584 chrM 4989 2 1 0 0 1 0 0 16-3584 chrM 4990 2 1 0 0 1 0 0 16-3584 chrM 4991 2 1 0 0 1 0 0 16-3584 chrM 4992 2 1 1 0 0 0 0 16-3584 chrM 4993 2 1 1 0 0 0 0 16-3584 chrM 4994 2 1 1 0 0 0 0 16-3584 chrM 4995 2 2 0 0 0 0 0 16-3584 chrM 4996 2 0 0 1 1 0 0 16-3584 chrM 4997 2 0 0 0 2 0 0 16-3584 chrM 4998 2 1 0 0 1 0 0 16-3584 chrM 4999 0 0 0 0 0 0 0 16-3584 chrM 5000 0 0 0 0 0 0 0 16-3584 chrM 5001 0 0 0 0 0 0 0 16-3584 chrM 5002 0 0 0 0 0 0 0 16-3584 chrM 5003 0 0 0 0 0 0 0 16-3584 chrM 5004 0 0 0 0 0 0 0 16-3584 chrM 5005 0 0 0 0 0 0 0 16-3584 chrM 5006 0 0 0 0 0 0 0 16-3584 chrM 5007 0 0 0 0 0 0 0 16-3584 chrM 5008 0 0 0 0 0 0 0 16-3584 chrM 5009 0 0 0 0 0 0 0 16-3584 chrM 5010 0 0 0 0 0 0 0 16-3584 chrM 5011 0 0 0 0 0 0 0 16-3584 chrM 5012 0 0 0 0 0 0 0 16-3584 chrM 5013 0 0 0 0 0 0 0 16-3584 chrM 5014 0 0 0 0 0 0 0 16-3584 chrM 5015 0 0 0 0 0 0 0 16-3584 chrM 5016 0 0 0 0 0 0 0 16-3584 chrM 5017 0 0 0 0 0 0 0 16-3584 chrM 5018 0 0 0 0 0 0 0 16-3584 chrM 5019 0 0 0 0 0 0 0 16-3584 chrM 5020 0 0 0 0 0 0 0 16-3584 chrM 5021 0 0 0 0 0 0 0 16-3584 chrM 5022 0 0 0 0 0 0 0 16-3584 chrM 5023 0 0 0 0 0 0 0 16-3584 chrM 5024 0 0 0 0 0 0 0 16-3584 chrM 5025 0 0 0 0 0 0 0 16-3584 chrM 5026 0 0 0 0 0 0 0 16-3584 chrM 5027 0 0 0 0 0 0 0 16-3584 chrM 5028 0 0 0 0 0 0 0 16-3584 chrM 5029 0 0 0 0 0 0 0 16-3584 chrM 5030 0 0 0 0 0 0 0 16-3584 chrM 5031 0 0 0 0 0 0 0 16-3584 chrM 5032 0 0 0 0 0 0 0 16-3584 chrM 5033 0 0 0 0 0 0 0 16-3584 chrM 5034 0 0 0 0 0 0 0 16-3584 chrM 5035 0 0 0 0 0 0 0 16-3584 chrM 5036 0 0 0 0 0 0 0 16-3584 chrM 5037 0 0 0 0 0 0 0 16-3584 chrM 5038 0 0 0 0 0 0 0 16-3584 chrM 5039 0 0 0 0 0 0 0 16-3584 chrM 5040 0 0 0 0 0 0 0 16-3584 chrM 5041 0 0 0 0 0 0 0 16-3584 chrM 5042 0 0 0 0 0 0 0 16-3584 chrM 5043 0 0 0 0 0 0 0 16-3584 chrM 5044 0 0 0 0 0 0 0 16-3584 chrM 5045 0 0 0 0 0 0 0 16-3584 chrM 5046 0 0 0 0 0 0 0 16-3584 chrM 5047 0 0 0 0 0 0 0 16-3584 chrM 5048 0 0 0 0 0 0 0 16-3584 chrM 5049 0 0 0 0 0 0 0 16-3584 chrM 5050 0 0 0 0 0 0 0 16-3584 chrM 5051 0 0 0 0 0 0 0 16-3584 chrM 5052 0 0 0 0 0 0 0 16-3584 chrM 5053 0 0 0 0 0 0 0 16-3584 chrM 5054 0 0 0 0 0 0 0 16-3584 chrM 5055 0 0 0 0 0 0 0 16-3584 chrM 5056 0 0 0 0 0 0 0 16-3584 chrM 5057 0 0 0 0 0 0 0 16-3584 chrM 5058 0 0 0 0 0 0 0 16-3584 chrM 5059 0 0 0 0 0 0 0 16-3584 chrM 5060 0 0 0 0 0 0 0 16-3584 chrM 5061 0 0 0 0 0 0 0 16-3584 chrM 5062 0 0 0 0 0 0 0 16-3584 chrM 5063 0 0 0 0 0 0 0 16-3584 chrM 5064 0 0 0 0 0 0 0 16-3584 chrM 5065 0 0 0 0 0 0 0 16-3584 chrM 5066 0 0 0 0 0 0 0 16-3584 chrM 5067 0 0 0 0 0 0 0 16-3584 chrM 5068 0 0 0 0 0 0 0 16-3584 chrM 5069 1 0 1 0 0 0 0 16-3584 chrM 5070 1 0 0 0 1 0 0 16-3584 chrM 5071 1 0 1 0 0 0 0 16-3584 chrM 5072 1 0 1 0 0 0 0 16-3584 chrM 5073 1 0 0 1 0 0 0 16-3584 chrM 5074 1 0 1 0 0 0 0 16-3584 chrM 5075 1 1 0 0 0 0 0 16-3584 chrM 5076 1 0 0 1 0 0 0 16-3584 chrM 5077 1 1 0 0 0 0 0 16-3584 chrM 5078 1 0 0 0 1 0 0 16-3584 chrM 5079 1 0 0 0 1 0 0 16-3584 chrM 5080 1 1 0 0 0 0 0 16-3584 chrM 5081 1 0 1 0 0 0 0 16-3584 chrM 5082 2 1 0 0 1 0 0 16-3584 chrM 5083 2 2 0 0 0 0 0 16-3584 chrM 5084 2 1 0 1 0 0 0 16-3584 chrM 5085 2 0 1 1 0 0 0 16-3584 chrM 5086 2 1 0 0 1 0 0 16-3584 chrM 5087 2 0 1 0 1 0 0 16-3584 chrM 5088 2 0 2 0 0 0 0 16-3584 chrM 5089 2 1 1 0 0 0 0 16-3584 chrM 5090 2 2 0 0 0 0 0 16-3584 chrM 5091 2 0 1 1 0 0 0 16-3584 chrM 5092 2 0 1 1 0 0 0 16-3584 chrM 5093 2 1 0 0 1 0 0 16-3584 chrM 5094 2 1 1 0 0 0 0 16-3584 chrM 5095 2 0 0 1 1 0 0 16-3584 chrM 5096 2 1 0 1 0 0 0 16-3584 chrM 5097 2 0 1 0 1 0 0 16-3584 chrM 5098 2 0 2 0 0 0 0 16-3584 chrM 5099 2 1 1 0 0 0 0 16-3584 chrM 5100 2 0 1 0 1 0 0 16-3584 chrM 5101 2 0 1 0 1 0 0 16-3584 chrM 5102 2 1 0 0 1 0 0 16-3584 chrM 5103 2 1 0 0 1 0 0 16-3584 chrM 5104 2 0 0 1 1 0 0 16-3584 chrM 5105 2 0 1 1 0 0 0 16-3584 chrM 5106 2 0 0 1 1 0 0 16-3584 chrM 5107 2 0 1 0 1 0 0 16-3584 chrM 5108 2 1 0 1 0 0 0 16-3584 chrM 5109 2 1 1 0 0 0 0 16-3584 chrM 5110 2 0 1 0 1 0 0 16-3584 chrM 5111 2 1 0 0 1 0 0 16-3584 chrM 5112 2 2 0 0 0 0 0 16-3584 chrM 5113 2 0 1 1 0 0 0 16-3584 chrM 5114 2 0 0 1 1 0 0 16-3584 chrM 5115 2 0 2 0 0 0 0 16-3584 chrM 5116 2 0 0 0 2 0 0 16-3584 chrM 5117 2 1 1 0 0 0 0 16-3584 chrM 5118 2 0 0 2 0 0 0 16-3584 chrM 5119 2 0 2 0 0 0 0 16-3584 chrM 5120 2 0 0 1 1 0 0 16-3584 chrM 5121 2 0 0 2 0 0 0 16-3584 chrM 5122 2 1 1 0 0 0 0 16-3584 chrM 5123 2 0 1 1 0 0 0 16-3584 chrM 5124 2 0 2 0 0 0 0 16-3584 chrM 5125 2 0 1 0 1 0 0 16-3584 chrM 5126 2 1 0 1 0 0 0 16-3584 chrM 5127 2 1 1 0 0 0 0 16-3584 chrM 5128 2 0 0 0 2 0 0 16-3584 chrM 5129 2 1 1 0 0 0 0 16-3584 chrM 5130 2 0 1 1 0 0 0 16-3584 chrM 5131 2 1 0 0 1 0 0 16-3584 chrM 5132 2 0 1 0 1 0 0 16-3584 chrM 5133 2 0 0 1 1 0 0 16-3584 chrM 5134 2 1 1 0 0 0 0 16-3584 chrM 5135 2 0 0 1 1 0 0 16-3584 chrM 5136 2 0 0 0 2 0 0 16-3584 chrM 5137 2 1 0 1 0 0 0 16-3584 chrM 5138 2 0 0 1 1 0 0 16-3584 chrM 5139 2 1 0 1 0 0 0 16-3584 chrM 5140 2 0 2 0 0 0 0 16-3584 chrM 5141 2 1 0 1 0 0 0 16-3584 chrM 5142 2 0 0 1 1 0 0 16-3584 chrM 5143 2 0 0 0 2 0 0 16-3584 chrM 5144 2 0 0 2 0 0 0 16-3584 chrM 5145 2 0 0 0 2 0 0 16-3584 chrM 5146 2 0 0 2 0 0 0 16-3584 chrM 5147 2 0 0 0 2 0 0 16-3584 chrM 5148 2 1 0 0 1 0 0 16-3584 chrM 5149 2 1 0 0 1 0 0 16-3584 chrM 5150 2 2 0 0 0 0 0 16-3584 chrM 5151 2 1 0 0 1 0 0 16-3584 chrM 5152 2 0 1 1 0 0 0 16-3584 chrM 5153 2 0 1 1 0 0 0 16-3584 chrM 5154 2 0 0 0 2 0 0 16-3584 chrM 5155 2 1 0 0 1 0 0 16-3584 chrM 5156 2 0 1 1 0 0 0 16-3584 chrM 5157 2 0 1 0 1 0 0 16-3584 chrM 5158 2 1 0 0 1 0 0 16-3584 chrM 5159 2 1 1 0 0 0 0 16-3584 chrM 5160 2 1 0 1 0 0 0 16-3584 chrM 5161 2 0 0 1 1 0 0 16-3584 chrM 5162 2 1 0 1 0 0 0 16-3584 chrM 5163 2 1 0 1 0 0 0 16-3584 chrM 5164 2 0 0 2 0 0 0 16-3584 chrM 5165 2 0 0 2 0 0 0 16-3584 chrM 5166 2 1 0 1 0 0 0 16-3584 chrM 5167 2 0 0 1 1 0 0 16-3584 chrM 5168 2 1 0 1 0 0 0 16-3584 chrM 5169 2 1 1 0 0 0 0 16-3584 chrM 5170 2 0 0 1 1 0 0 16-3584 chrM 5171 2 0 1 1 0 0 0 16-3584 chrM 5172 2 0 0 0 2 0 0 16-3584 chrM 5173 2 1 0 1 0 0 0 16-3584 chrM 5174 2 0 1 0 1 0 0 16-3584 chrM 5175 2 1 1 0 0 0 0 16-3584 chrM 5176 2 0 1 1 0 0 0 16-3584 chrM 5177 2 0 1 0 1 0 0 16-3584 chrM 5178 2 1 1 0 0 0 0 16-3584 chrM 5179 2 0 1 1 0 0 0 16-3584 chrM 5180 2 0 1 1 0 0 0 16-3584 chrM 5181 2 1 0 0 1 0 0 16-3584 chrM 5182 2 1 1 0 0 0 0 16-3584 chrM 5183 2 1 0 1 0 0 0 16-3584 chrM 5184 2 0 2 0 0 0 0 16-3584 chrM 5185 2 1 1 0 0 0 0 16-3584 chrM 5186 2 0 0 2 0 0 0 16-3584 chrM 5187 2 2 0 0 0 0 0 16-3584 chrM 5188 2 0 0 2 0 0 0 16-3584 chrM 5189 2 0 0 2 0 0 0 16-3584 chrM 5190 2 1 1 0 0 0 0 16-3584 chrM 5191 2 1 1 0 0 0 0 16-3584 chrM 5192 2 1 0 0 1 0 0 16-3584 chrM 5193 2 0 1 0 1 0 0 16-3584 chrM 5194 2 1 0 1 0 0 0 16-3584 chrM 5195 2 1 0 0 1 0 0 16-3584 chrM 5196 2 0 1 1 0 0 0 16-3584 chrM 5197 2 0 1 1 0 0 0 16-3584 chrM 5198 2 0 1 0 1 0 0 16-3584 chrM 5199 2 1 1 0 0 0 0 16-3584 chrM 5200 2 0 1 1 0 0 0 16-3584 chrM 5201 2 0 0 1 1 0 0 16-3584 chrM 5202 2 0 1 0 1 0 0 16-3584 chrM 5203 2 0 0 0 2 0 0 16-3584 chrM 5204 2 1 0 1 0 0 0 16-3584 chrM 5205 2 2 0 0 0 0 0 16-3584 chrM 5206 2 2 0 0 0 0 0 16-3584 chrM 5207 2 0 0 0 2 0 0 16-3584 chrM 5208 2 1 0 0 1 0 0 16-3584 chrM 5209 2 2 0 0 0 0 0 16-3584 chrM 5210 2 0 1 1 0 0 0 16-3584 chrM 5211 2 2 0 0 0 0 0 16-3584 chrM 5212 2 1 1 0 0 0 0 16-3584 chrM 5213 2 0 2 0 0 0 0 16-3584 chrM 5214 2 0 0 1 1 0 0 16-3584 chrM 5215 0 0 0 0 0 0 0 16-3584 chrM 5216 0 0 0 0 0 0 0 16-3584 chrM 5217 0 0 0 0 0 0 0 16-3584 chrM 5218 0 0 0 0 0 0 0 16-3584 chrM 5219 0 0 0 0 0 0 0 16-3584 chrM 5220 0 0 0 0 0 0 0 16-3584 chrM 5221 0 0 0 0 0 0 0 16-3584 chrM 5222 0 0 0 0 0 0 0 16-3584 chrM 5223 0 0 0 0 0 0 0 16-3584 chrM 5224 0 0 0 0 0 0 0 16-3584 chrM 5225 0 0 0 0 0 0 0 16-3584 chrM 5226 0 0 0 0 0 0 0 16-3584 chrM 5227 0 0 0 0 0 0 0 16-3584 chrM 5228 0 0 0 0 0 0 0 16-3584 chrM 5229 1 0 0 1 0 0 0 16-3584 chrM 5230 1 1 0 0 0 0 0 16-3584 chrM 5231 1 1 0 0 0 0 0 16-3584 chrM 5232 1 0 1 0 0 0 0 16-3584 chrM 5233 1 0 1 0 0 0 0 16-3584 chrM 5234 1 0 0 0 1 0 0 16-3584 chrM 5235 1 0 0 1 0 0 0 16-3584 chrM 5236 1 0 0 1 0 0 0 16-3584 chrM 5237 1 1 0 0 0 0 0 16-3584 chrM 5238 1 1 0 0 0 0 0 16-3584 chrM 5239 1 0 0 0 1 0 0 16-3584 chrM 5240 1 0 0 1 0 0 0 16-3584 chrM 5241 1 0 0 0 1 0 0 16-3584 chrM 5242 1 0 1 0 0 0 0 16-3584 chrM 5243 1 0 0 1 0 0 0 16-3584 chrM 5244 1 0 1 0 0 0 0 16-3584 chrM 5245 1 1 0 0 0 0 0 16-3584 chrM 5246 1 0 0 0 1 0 0 16-3584 chrM 5247 1 0 0 1 0 0 0 16-3584 chrM 5248 1 0 0 1 0 0 0 16-3584 chrM 5249 1 0 0 1 0 0 0 16-3584 chrM 5250 1 1 0 0 0 0 0 16-3584 chrM 5251 1 0 0 0 1 0 0 16-3584 chrM 5252 1 0 0 1 0 0 0 16-3584 chrM 5253 1 0 1 0 0 0 0 16-3584 chrM 5254 1 1 0 0 0 0 0 16-3584 chrM 5255 1 0 1 0 0 0 0 16-3584 chrM 5256 1 0 0 0 1 0 0 16-3584 chrM 5257 1 0 0 0 1 0 0 16-3584 chrM 5258 1 0 1 0 0 0 0 16-3584 chrM 5259 1 0 0 0 1 0 0 16-3584 chrM 5260 1 0 1 0 0 0 0 16-3584 chrM 5261 1 1 0 0 0 0 0 16-3584 chrM 5262 1 0 0 1 0 0 0 16-3584 chrM 5263 1 1 0 0 0 0 0 16-3584 chrM 5264 1 0 1 0 0 0 0 16-3584 chrM 5265 1 0 0 0 1 0 0 16-3584 chrM 5266 1 0 0 0 1 0 0 16-3584 chrM 5267 1 0 0 1 0 0 0 16-3584 chrM 5268 1 0 0 0 1 0 0 16-3584 chrM 5269 1 1 0 0 0 0 0 16-3584 chrM 5270 1 0 1 0 0 0 0 16-3584 chrM 5271 1 1 0 0 0 0 0 16-3584 chrM 5272 1 1 0 0 0 0 0 16-3584 chrM 5273 1 1 0 0 0 0 0 16-3584 chrM 5274 1 1 0 0 0 0 0 16-3584 chrM 5275 1 0 1 0 0 0 0 16-3584 chrM 5276 1 1 0 0 0 0 0 16-3584 chrM 5277 1 0 0 0 1 0 0 16-3584 chrM 5278 1 0 0 0 1 0 0 16-3584 chrM 5279 1 1 0 0 0 0 0 16-3584 chrM 5280 1 1 0 0 0 0 0 16-3584 chrM 5281 1 0 0 1 0 0 0 16-3584 chrM 5282 1 0 0 1 0 0 0 16-3584 chrM 5283 1 0 0 0 1 0 0 16-3584 chrM 5284 1 0 0 1 0 0 0 16-3584 chrM 5285 1 0 0 1 0 0 0 16-3584 chrM 5286 1 1 0 0 0 0 0 16-3584 chrM 5287 1 0 0 1 0 0 0 16-3584 chrM 5288 1 0 1 0 0 0 0 16-3584 chrM 5289 1 0 0 1 0 0 0 16-3584 chrM 5290 1 1 0 0 0 0 0 16-3584 chrM 5291 1 0 0 0 1 0 0 16-3584 chrM 5292 1 0 0 1 0 0 0 16-3584 chrM 5293 1 0 0 0 1 0 0 16-3584 chrM 5294 1 1 0 0 0 0 0 16-3584 chrM 5295 1 0 0 1 0 0 0 16-3584 chrM 5296 1 0 0 0 1 0 0 16-3584 chrM 5297 1 0 1 0 0 0 0 16-3584 chrM 5298 1 0 0 1 0 0 0 16-3584 chrM 5299 1 1 0 0 0 0 0 16-3584 chrM 5300 1 0 0 0 1 0 0 16-3584 chrM 5301 1 0 0 1 0 0 0 16-3584 chrM 5302 1 0 0 0 1 0 0 16-3584 chrM 5303 1 0 0 1 0 0 0 16-3584 chrM 5304 1 0 0 1 0 0 0 16-3584 chrM 5305 1 0 0 1 0 0 0 16-3584 chrM 5306 1 0 1 0 0 0 0 16-3584 chrM 5307 1 0 0 1 0 0 0 16-3584 chrM 5308 1 0 0 0 1 0 0 16-3584 chrM 5309 1 0 0 0 1 0 0 16-3584 chrM 5310 1 0 1 0 0 0 0 16-3584 chrM 5311 1 1 0 0 0 0 0 16-3584 chrM 5312 1 0 0 0 1 0 0 16-3584 chrM 5313 1 0 0 0 1 0 0 16-3584 chrM 5314 1 0 0 0 1 0 0 16-3584 chrM 5315 1 0 1 0 0 0 0 16-3584 chrM 5316 1 0 0 1 0 0 0 16-3584 chrM 5317 1 0 0 1 0 0 0 16-3584 chrM 5318 1 1 0 0 0 0 0 16-3584 chrM 5319 1 1 0 0 0 0 0 16-3584 chrM 5320 1 0 1 0 0 0 0 16-3584 chrM 5321 1 1 0 0 0 0 0 16-3584 chrM 5322 1 1 0 0 0 0 0 16-3584 chrM 5323 1 1 0 0 0 0 0 16-3584 chrM 5324 1 0 1 0 0 0 0 16-3584 chrM 5325 1 0 1 0 0 0 0 16-3584 chrM 5326 1 0 1 0 0 0 0 16-3584 chrM 5327 1 0 0 1 0 0 0 16-3584 chrM 5328 1 1 0 0 0 0 0 16-3584 chrM 5329 1 0 0 1 0 0 0 16-3584 chrM 5330 1 0 0 0 1 0 0 16-3584 chrM 5331 1 0 1 0 0 0 0 16-3584 chrM 5332 1 1 0 0 0 0 0 16-3584 chrM 5333 1 0 0 0 1 0 0 16-3584 chrM 5334 1 0 0 1 0 0 0 16-3584 chrM 5335 1 0 0 0 1 0 0 16-3584 chrM 5336 1 0 0 0 1 0 0 16-3584 chrM 5337 1 0 0 0 1 0 0 16-3584 chrM 5338 1 0 0 1 0 0 0 16-3584 chrM 5339 1 0 0 1 0 0 0 16-3584 chrM 5340 1 0 1 0 0 0 0 16-3584 chrM 5341 1 0 1 0 0 0 0 16-3584 chrM 5342 1 0 0 0 1 0 0 16-3584 chrM 5343 1 1 0 0 0 0 0 16-3584 chrM 5344 1 1 0 0 0 0 0 16-3584 chrM 5345 1 1 0 0 0 0 0 16-3584 chrM 5346 1 1 0 0 0 0 0 16-3584 chrM 5347 1 0 1 0 0 0 0 16-3584 chrM 5348 1 0 1 0 0 0 0 16-3584 chrM 5349 1 0 0 1 0 0 0 16-3584 chrM 5350 1 1 0 0 0 0 0 16-3584 chrM 5351 1 1 0 0 0 0 0 16-3584 chrM 5352 1 0 0 1 0 0 0 16-3584 chrM 5353 1 0 1 0 0 0 0 16-3584 chrM 5354 1 1 0 0 0 0 0 16-3584 chrM 5355 1 0 0 1 0 0 0 16-3584 chrM 5356 1 0 0 1 0 0 0 16-3584 chrM 5357 1 0 1 0 0 0 0 16-3584 chrM 5358 1 0 0 1 0 0 0 16-3584 chrM 5359 1 0 0 1 0 0 0 16-3584 chrM 5360 1 0 0 1 0 0 0 16-3584 chrM 5361 1 0 1 0 0 0 0 16-3584 chrM 5362 1 1 0 0 0 0 0 16-3584 chrM 5363 1 0 1 0 0 0 0 16-3584 chrM 5364 1 0 0 1 0 0 0 16-3584 chrM 5365 1 0 1 0 0 0 0 16-3584 chrM 5366 1 0 1 0 0 0 0 16-3584 chrM 5367 1 0 1 0 0 0 0 16-3584 chrM 5368 1 0 0 0 1 0 0 16-3584 chrM 5369 1 0 1 0 0 0 0 16-3584 chrM 5370 1 0 1 0 0 0 0 16-3584 chrM 5371 1 0 0 1 0 0 0 16-3584 chrM 5372 1 0 1 0 0 0 0 16-3584 chrM 5373 0 0 0 0 0 0 0 16-3584 chrM 5374 0 0 0 0 0 0 0 16-3584 chrM 5375 0 0 0 0 0 0 0 16-3584 chrM 5376 0 0 0 0 0 0 0 16-3584 chrM 5377 0 0 0 0 0 0 0 16-3584 chrM 5378 0 0 0 0 0 0 0 16-3584 chrM 5379 0 0 0 0 0 0 0 16-3584 chrM 5380 0 0 0 0 0 0 0 16-3584 chrM 5381 0 0 0 0 0 0 0 16-3584 chrM 5382 0 0 0 0 0 0 0 16-3584 chrM 5383 0 0 0 0 0 0 0 16-3584 chrM 5384 0 0 0 0 0 0 0 16-3584 chrM 5385 0 0 0 0 0 0 0 16-3584 chrM 5386 0 0 0 0 0 0 0 16-3584 chrM 5387 0 0 0 0 0 0 0 16-3584 chrM 5388 0 0 0 0 0 0 0 16-3584 chrM 5389 0 0 0 0 0 0 0 16-3584 chrM 5390 0 0 0 0 0 0 0 16-3584 chrM 5391 0 0 0 0 0 0 0 16-3584 chrM 5392 0 0 0 0 0 0 0 16-3584 chrM 5393 0 0 0 0 0 0 0 16-3584 chrM 5394 0 0 0 0 0 0 0 16-3584 chrM 5395 0 0 0 0 0 0 0 16-3584 chrM 5396 0 0 0 0 0 0 0 16-3584 chrM 5397 0 0 0 0 0 0 0 16-3584 chrM 5398 0 0 0 0 0 0 0 16-3584 chrM 5399 0 0 0 0 0 0 0 16-3584 chrM 5400 0 0 0 0 0 0 0 16-3584 chrM 5401 0 0 0 0 0 0 0 16-3584 chrM 5402 0 0 0 0 0 0 0 16-3584 chrM 5403 0 0 0 0 0 0 0 16-3584 chrM 5404 0 0 0 0 0 0 0 16-3584 chrM 5405 0 0 0 0 0 0 0 16-3584 chrM 5406 0 0 0 0 0 0 0 16-3584 chrM 5407 0 0 0 0 0 0 0 16-3584 chrM 5408 0 0 0 0 0 0 0 16-3584 chrM 5409 0 0 0 0 0 0 0 16-3584 chrM 5410 0 0 0 0 0 0 0 16-3584 chrM 5411 0 0 0 0 0 0 0 16-3584 chrM 5412 0 0 0 0 0 0 0 16-3584 chrM 5413 1 0 1 0 0 0 0 16-3584 chrM 5414 1 1 0 0 0 0 0 16-3584 chrM 5415 1 0 1 0 0 0 0 16-3584 chrM 5416 1 0 0 1 0 0 0 16-3584 chrM 5417 1 0 0 1 0 0 0 16-3584 chrM 5418 1 1 0 0 0 0 0 16-3584 chrM 5419 1 0 0 0 1 0 0 16-3584 chrM 5420 1 1 0 0 0 0 0 16-3584 chrM 5421 1 0 1 0 0 0 0 16-3584 chrM 5422 1 0 1 0 0 0 0 16-3584 chrM 5423 1 0 0 1 0 0 0 16-3584 chrM 5424 1 0 1 0 0 0 0 16-3584 chrM 5425 1 0 1 0 0 0 0 16-3584 chrM 5426 1 0 1 0 0 0 0 16-3584 chrM 5427 1 0 0 1 0 0 0 16-3584 chrM 5428 1 0 1 0 0 0 0 16-3584 chrM 5429 1 0 1 0 0 0 0 16-3584 chrM 5430 1 0 1 0 0 0 0 16-3584 chrM 5431 1 0 0 1 0 0 0 16-3584 chrM 5432 1 1 0 0 0 0 0 16-3584 chrM 5433 1 0 1 0 0 0 0 16-3584 chrM 5434 1 0 0 0 1 0 0 16-3584 chrM 5435 1 0 0 0 1 0 0 16-3584 chrM 5436 1 0 1 0 0 0 0 16-3584 chrM 5437 1 0 0 1 0 0 0 16-3584 chrM 5438 1 1 0 0 0 0 0 16-3584 chrM 5439 1 0 1 0 0 0 0 16-3584 chrM 5440 1 0 0 0 1 0 0 16-3584 chrM 5441 1 0 0 0 1 0 0 16-3584 chrM 5442 1 0 0 1 0 0 0 16-3584 chrM 5443 1 1 0 0 0 0 0 16-3584 chrM 5444 1 0 0 1 0 0 0 16-3584 chrM 5445 1 0 0 0 1 0 0 16-3584 chrM 5446 1 0 0 1 0 0 0 16-3584 chrM 5447 1 0 0 1 0 0 0 16-3584 chrM 5448 1 1 0 0 0 0 0 16-3584 chrM 5449 1 0 1 0 0 0 0 16-3584 chrM 5450 1 1 0 0 0 0 0 16-3584 chrM 5451 1 0 1 0 0 0 0 16-3584 chrM 5452 1 1 0 0 0 0 0 16-3584 chrM 5453 1 0 0 0 1 0 0 16-3584 chrM 5454 1 0 1 0 0 0 0 16-3584 chrM 5455 1 1 0 0 0 0 0 16-3584 chrM 5456 1 1 0 0 0 0 0 16-3584 chrM 5457 1 0 0 0 1 0 0 16-3584 chrM 5458 1 1 0 0 0 0 0 16-3584 chrM 5459 1 0 0 0 1 0 0 16-3584 chrM 5460 1 0 0 1 0 0 0 16-3584 chrM 5461 1 0 0 0 1 0 0 16-3584 chrM 5462 1 0 0 0 1 0 0 16-3584 chrM 5463 1 0 1 0 0 0 0 16-3584 chrM 5464 1 0 0 0 1 0 0 16-3584 chrM 5465 1 0 0 0 1 0 0 16-3584 chrM 5466 1 0 1 0 0 0 0 16-3584 chrM 5467 1 0 0 0 1 0 0 16-3584 chrM 5468 1 0 0 0 1 0 0 16-3584 chrM 5469 1 1 0 0 0 0 0 16-3584 chrM 5470 1 0 0 1 0 0 0 16-3584 chrM 5471 1 0 1 0 0 0 0 16-3584 chrM 5472 1 1 0 0 0 0 0 16-3584 chrM 5473 1 0 0 1 0 0 0 16-3584 chrM 5474 1 1 0 0 0 0 0 16-3584 chrM 5475 1 1 0 0 0 0 0 16-3584 chrM 5476 1 0 1 0 0 0 0 16-3584 chrM 5477 1 0 0 0 1 0 0 16-3584 chrM 5478 1 0 0 0 1 0 0 16-3584 chrM 5479 1 1 0 0 0 0 0 16-3584 chrM 5480 1 1 0 0 0 0 0 16-3584 chrM 5481 1 1 0 0 0 0 0 16-3584 chrM 5482 1 0 1 0 0 0 0 16-3584 chrM 5483 1 0 1 0 0 0 0 16-3584 chrM 5484 1 0 1 0 0 0 0 16-3584 chrM 5485 1 0 1 0 0 0 0 16-3584 chrM 5486 1 0 1 0 0 0 0 16-3584 chrM 5487 1 0 0 0 1 0 0 16-3584 chrM 5488 1 0 0 0 1 0 0 16-3584 chrM 5489 1 1 0 0 0 0 0 16-3584 chrM 5490 1 0 0 1 0 0 0 16-3584 chrM 5491 1 0 1 0 0 0 0 16-3584 chrM 5492 1 0 0 0 1 0 0 16-3584 chrM 5493 1 0 0 1 0 0 0 16-3584 chrM 5494 1 0 0 0 1 0 0 16-3584 chrM 5495 1 0 1 0 0 0 0 16-3584 chrM 5496 1 0 0 0 1 0 0 16-3584 chrM 5497 1 1 0 0 0 0 0 16-3584 chrM 5498 1 1 0 0 0 0 0 16-3584 chrM 5499 1 1 0 0 0 0 0 16-3584 chrM 5500 1 0 1 0 0 0 0 16-3584 chrM 5501 1 0 0 1 0 0 0 16-3584 chrM 5502 1 0 0 0 1 0 0 16-3584 chrM 5503 1 0 0 1 0 0 0 16-3584 chrM 5504 1 0 1 0 0 0 0 16-3584 chrM 5505 1 0 0 0 1 0 0 16-3584 chrM 5506 1 1 0 0 0 0 0 16-3584 chrM 5507 1 0 1 0 0 0 0 16-3584 chrM 5508 1 0 0 0 1 0 0 16-3584 chrM 5509 1 1 0 0 0 0 0 16-3584 chrM 5510 1 0 0 1 0 0 0 16-3584 chrM 5511 1 1 0 0 0 0 0 16-3584 chrM 5512 1 0 1 0 0 0 0 16-3584 chrM 5513 1 0 0 0 1 0 0 16-3584 chrM 5514 1 0 1 0 0 0 0 16-3584 chrM 5515 1 0 0 1 0 0 0 16-3584 chrM 5516 1 0 0 1 0 0 0 16-3584 chrM 5517 1 0 0 0 1 0 0 16-3584 chrM 5518 1 0 1 0 0 0 0 16-3584 chrM 5519 1 0 0 0 1 0 0 16-3584 chrM 5520 1 0 0 1 0 0 0 16-3584 chrM 5521 1 0 1 0 0 0 0 16-3584 chrM 5522 1 0 0 1 0 0 0 16-3584 chrM 5523 1 0 0 0 1 0 0 16-3584 chrM 5524 1 0 0 0 1 0 0 16-3584 chrM 5525 1 0 0 0 1 0 0 16-3584 chrM 5526 1 0 0 0 1 0 0 16-3584 chrM 5527 1 0 1 0 0 0 0 16-3584 chrM 5528 1 1 0 0 0 0 0 16-3584 chrM 5529 1 1 0 0 0 0 0 16-3584 chrM 5530 1 0 0 0 1 0 0 16-3584 chrM 5531 1 1 0 0 0 0 0 16-3584 chrM 5532 1 0 0 0 1 0 0 16-3584 chrM 5533 1 0 0 0 1 0 0 16-3584 chrM 5534 1 0 0 0 1 0 0 16-3584 chrM 5535 1 0 1 0 0 0 0 16-3584 chrM 5536 1 0 0 0 1 0 0 16-3584 chrM 5537 1 0 0 0 1 0 0 16-3584 chrM 5538 1 0 0 0 1 0 0 16-3584 chrM 5539 1 0 0 0 1 0 0 16-3584 chrM 5540 1 0 1 0 0 0 0 16-3584 chrM 5541 1 0 1 0 0 0 0 16-3584 chrM 5542 1 0 1 0 0 0 0 16-3584 chrM 5543 1 0 0 0 1 0 0 16-3584 chrM 5544 1 0 0 1 0 0 0 16-3584 chrM 5545 1 1 0 0 0 0 0 16-3584 chrM 5546 1 1 0 0 0 0 0 16-3584 chrM 5547 1 0 1 0 0 0 0 16-3584 chrM 5548 1 0 0 1 0 0 0 16-3584 chrM 5549 1 0 0 1 0 0 0 16-3584 chrM 5550 1 0 0 1 0 0 0 16-3584 chrM 5551 1 0 0 0 1 0 0 16-3584 chrM 5552 1 0 1 0 0 0 0 16-3584 chrM 5553 1 0 0 0 1 0 0 16-3584 chrM 5554 1 0 1 0 0 0 0 16-3584 chrM 5555 1 0 0 1 0 0 0 16-3584 chrM 5556 1 1 0 0 0 0 0 16-3584 chrM 5557 1 0 0 0 1 0 0 16-3584 chrM 5558 1 0 0 1 0 0 0 16-3584 chrM 5559 0 0 0 0 0 0 0 16-3584 chrM 5560 0 0 0 0 0 0 0 16-3584 chrM 5561 0 0 0 0 0 0 0 16-3584 chrM 5562 0 0 0 0 0 0 0 16-3584 chrM 5563 0 0 0 0 0 0 0 16-3584 chrM 5564 0 0 0 0 0 0 0 16-3584 chrM 5565 0 0 0 0 0 0 0 16-3584 chrM 5566 0 0 0 0 0 0 0 16-3584 chrM 5567 0 0 0 0 0 0 0 16-3584 chrM 5568 0 0 0 0 0 0 0 16-3584 chrM 5569 0 0 0 0 0 0 0 16-3584 chrM 5570 0 0 0 0 0 0 0 16-3584 chrM 5571 0 0 0 0 0 0 0 16-3584 chrM 5572 0 0 0 0 0 0 0 16-3584 chrM 5573 0 0 0 0 0 0 0 16-3584 chrM 5574 0 0 0 0 0 0 0 16-3584 chrM 5575 0 0 0 0 0 0 0 16-3584 chrM 5576 0 0 0 0 0 0 0 16-3584 chrM 5577 0 0 0 0 0 0 0 16-3584 chrM 5578 0 0 0 0 0 0 0 16-3584 chrM 5579 0 0 0 0 0 0 0 16-3584 chrM 5580 0 0 0 0 0 0 0 16-3584 chrM 5581 0 0 0 0 0 0 0 16-3584 chrM 5582 0 0 0 0 0 0 0 16-3584 chrM 5583 0 0 0 0 0 0 0 16-3584 chrM 5584 0 0 0 0 0 0 0 16-3584 chrM 5585 0 0 0 0 0 0 0 16-3584 chrM 5586 0 0 0 0 0 0 0 16-3584 chrM 5587 0 0 0 0 0 0 0 16-3584 chrM 5588 0 0 0 0 0 0 0 16-3584 chrM 5589 0 0 0 0 0 0 0 16-3584 chrM 5590 0 0 0 0 0 0 0 16-3584 chrM 5591 0 0 0 0 0 0 0 16-3584 chrM 5592 0 0 0 0 0 0 0 16-3584 chrM 5593 0 0 0 0 0 0 0 16-3584 chrM 5594 0 0 0 0 0 0 0 16-3584 chrM 5595 0 0 0 0 0 0 0 16-3584 chrM 5596 0 0 0 0 0 0 0 16-3584 chrM 5597 0 0 0 0 0 0 0 16-3584 chrM 5598 0 0 0 0 0 0 0 16-3584 chrM 5599 0 0 0 0 0 0 0 16-3584 chrM 5600 0 0 0 0 0 0 0 16-3584 chrM 5601 0 0 0 0 0 0 0 16-3584 chrM 5602 0 0 0 0 0 0 0 16-3584 chrM 5603 0 0 0 0 0 0 0 16-3584 chrM 5604 0 0 0 0 0 0 0 16-3584 chrM 5605 0 0 0 0 0 0 0 16-3584 chrM 5606 0 0 0 0 0 0 0 16-3584 chrM 5607 0 0 0 0 0 0 0 16-3584 chrM 5608 0 0 0 0 0 0 0 16-3584 chrM 5609 0 0 0 0 0 0 0 16-3584 chrM 5610 0 0 0 0 0 0 0 16-3584 chrM 5611 0 0 0 0 0 0 0 16-3584 chrM 5612 0 0 0 0 0 0 0 16-3584 chrM 5613 0 0 0 0 0 0 0 16-3584 chrM 5614 0 0 0 0 0 0 0 16-3584 chrM 5615 0 0 0 0 0 0 0 16-3584 chrM 5616 0 0 0 0 0 0 0 16-3584 chrM 5617 0 0 0 0 0 0 0 16-3584 chrM 5618 0 0 0 0 0 0 0 16-3584 chrM 5619 0 0 0 0 0 0 0 16-3584 chrM 5620 0 0 0 0 0 0 0 16-3584 chrM 5621 0 0 0 0 0 0 0 16-3584 chrM 5622 0 0 0 0 0 0 0 16-3584 chrM 5623 0 0 0 0 0 0 0 16-3584 chrM 5624 0 0 0 0 0 0 0 16-3584 chrM 5625 0 0 0 0 0 0 0 16-3584 chrM 5626 0 0 0 0 0 0 0 16-3584 chrM 5627 0 0 0 0 0 0 0 16-3584 chrM 5628 0 0 0 0 0 0 0 16-3584 chrM 5629 0 0 0 0 0 0 0 16-3584 chrM 5630 0 0 0 0 0 0 0 16-3584 chrM 5631 0 0 0 0 0 0 0 16-3584 chrM 5632 0 0 0 0 0 0 0 16-3584 chrM 5633 0 0 0 0 0 0 0 16-3584 chrM 5634 0 0 0 0 0 0 0 16-3584 chrM 5635 0 0 0 0 0 0 0 16-3584 chrM 5636 0 0 0 0 0 0 0 16-3584 chrM 5637 0 0 0 0 0 0 0 16-3584 chrM 5638 0 0 0 0 0 0 0 16-3584 chrM 5639 0 0 0 0 0 0 0 16-3584 chrM 5640 0 0 0 0 0 0 0 16-3584 chrM 5641 0 0 0 0 0 0 0 16-3584 chrM 5642 0 0 0 0 0 0 0 16-3584 chrM 5643 0 0 0 0 0 0 0 16-3584 chrM 5644 0 0 0 0 0 0 0 16-3584 chrM 5645 0 0 0 0 0 0 0 16-3584 chrM 5646 0 0 0 0 0 0 0 16-3584 chrM 5647 0 0 0 0 0 0 0 16-3584 chrM 5648 0 0 0 0 0 0 0 16-3584 chrM 5649 0 0 0 0 0 0 0 16-3584 chrM 5650 0 0 0 0 0 0 0 16-3584 chrM 5651 0 0 0 0 0 0 0 16-3584 chrM 5652 0 0 0 0 0 0 0 16-3584 chrM 5653 0 0 0 0 0 0 0 16-3584 chrM 5654 0 0 0 0 0 0 0 16-3584 chrM 5655 0 0 0 0 0 0 0 16-3584 chrM 5656 0 0 0 0 0 0 0 16-3584 chrM 5657 0 0 0 0 0 0 0 16-3584 chrM 5658 0 0 0 0 0 0 0 16-3584 chrM 5659 0 0 0 0 0 0 0 16-3584 chrM 5660 0 0 0 0 0 0 0 16-3584 chrM 5661 0 0 0 0 0 0 0 16-3584 chrM 5662 0 0 0 0 0 0 0 16-3584 chrM 5663 0 0 0 0 0 0 0 16-3584 chrM 5664 0 0 0 0 0 0 0 16-3584 chrM 5665 0 0 0 0 0 0 0 16-3584 chrM 5666 0 0 0 0 0 0 0 16-3584 chrM 5667 0 0 0 0 0 0 0 16-3584 chrM 5668 0 0 0 0 0 0 0 16-3584 chrM 5669 0 0 0 0 0 0 0 16-3584 chrM 5670 0 0 0 0 0 0 0 16-3584 chrM 5671 0 0 0 0 0 0 0 16-3584 chrM 5672 0 0 0 0 0 0 0 16-3584 chrM 5673 0 0 0 0 0 0 0 16-3584 chrM 5674 0 0 0 0 0 0 0 16-3584 chrM 5675 0 0 0 0 0 0 0 16-3584 chrM 5676 0 0 0 0 0 0 0 16-3584 chrM 5677 0 0 0 0 0 0 0 16-3584 chrM 5678 0 0 0 0 0 0 0 16-3584 chrM 5679 0 0 0 0 0 0 0 16-3584 chrM 5680 0 0 0 0 0 0 0 16-3584 chrM 5681 0 0 0 0 0 0 0 16-3584 chrM 5682 0 0 0 0 0 0 0 16-3584 chrM 5683 0 0 0 0 0 0 0 16-3584 chrM 5684 0 0 0 0 0 0 0 16-3584 chrM 5685 0 0 0 0 0 0 0 16-3584 chrM 5686 0 0 0 0 0 0 0 16-3584 chrM 5687 0 0 0 0 0 0 0 16-3584 chrM 5688 0 0 0 0 0 0 0 16-3584 chrM 5689 0 0 0 0 0 0 0 16-3584 chrM 5690 0 0 0 0 0 0 0 16-3584 chrM 5691 0 0 0 0 0 0 0 16-3584 chrM 5692 0 0 0 0 0 0 0 16-3584 chrM 5693 0 0 0 0 0 0 0 16-3584 chrM 5694 0 0 0 0 0 0 0 16-3584 chrM 5695 0 0 0 0 0 0 0 16-3584 chrM 5696 0 0 0 0 0 0 0 16-3584 chrM 5697 0 0 0 0 0 0 0 16-3584 chrM 5698 0 0 0 0 0 0 0 16-3584 chrM 5699 0 0 0 0 0 0 0 16-3584 chrM 5700 0 0 0 0 0 0 0 16-3584 chrM 5701 0 0 0 0 0 0 0 16-3584 chrM 5702 0 0 0 0 0 0 0 16-3584 chrM 5703 0 0 0 0 0 0 0 16-3584 chrM 5704 0 0 0 0 0 0 0 16-3584 chrM 5705 0 0 0 0 0 0 0 16-3584 chrM 5706 0 0 0 0 0 0 0 16-3584 chrM 5707 0 0 0 0 0 0 0 16-3584 chrM 5708 0 0 0 0 0 0 0 16-3584 chrM 5709 0 0 0 0 0 0 0 16-3584 chrM 5710 0 0 0 0 0 0 0 16-3584 chrM 5711 0 0 0 0 0 0 0 16-3584 chrM 5712 0 0 0 0 0 0 0 16-3584 chrM 5713 0 0 0 0 0 0 0 16-3584 chrM 5714 0 0 0 0 0 0 0 16-3584 chrM 5715 0 0 0 0 0 0 0 16-3584 chrM 5716 0 0 0 0 0 0 0 16-3584 chrM 5717 0 0 0 0 0 0 0 16-3584 chrM 5718 0 0 0 0 0 0 0 16-3584 chrM 5719 0 0 0 0 0 0 0 16-3584 chrM 5720 0 0 0 0 0 0 0 16-3584 chrM 5721 0 0 0 0 0 0 0 16-3584 chrM 5722 0 0 0 0 0 0 0 16-3584 chrM 5723 0 0 0 0 0 0 0 16-3584 chrM 5724 0 0 0 0 0 0 0 16-3584 chrM 5725 0 0 0 0 0 0 0 16-3584 chrM 5726 0 0 0 0 0 0 0 16-3584 chrM 5727 0 0 0 0 0 0 0 16-3584 chrM 5728 0 0 0 0 0 0 0 16-3584 chrM 5729 0 0 0 0 0 0 0 16-3584 chrM 5730 0 0 0 0 0 0 0 16-3584 chrM 5731 0 0 0 0 0 0 0 16-3584 chrM 5732 0 0 0 0 0 0 0 16-3584 chrM 5733 0 0 0 0 0 0 0 16-3584 chrM 5734 0 0 0 0 0 0 0 16-3584 chrM 5735 0 0 0 0 0 0 0 16-3584 chrM 5736 0 0 0 0 0 0 0 16-3584 chrM 5737 0 0 0 0 0 0 0 16-3584 chrM 5738 0 0 0 0 0 0 0 16-3584 chrM 5739 0 0 0 0 0 0 0 16-3584 chrM 5740 0 0 0 0 0 0 0 16-3584 chrM 5741 0 0 0 0 0 0 0 16-3584 chrM 5742 0 0 0 0 0 0 0 16-3584 chrM 5743 0 0 0 0 0 0 0 16-3584 chrM 5744 0 0 0 0 0 0 0 16-3584 chrM 5745 0 0 0 0 0 0 0 16-3584 chrM 5746 0 0 0 0 0 0 0 16-3584 chrM 5747 0 0 0 0 0 0 0 16-3584 chrM 5748 0 0 0 0 0 0 0 16-3584 chrM 5749 0 0 0 0 0 0 0 16-3584 chrM 5750 0 0 0 0 0 0 0 16-3584 chrM 5751 0 0 0 0 0 0 0 16-3584 chrM 5752 0 0 0 0 0 0 0 16-3584 chrM 5753 0 0 0 0 0 0 0 16-3584 chrM 5754 0 0 0 0 0 0 0 16-3584 chrM 5755 0 0 0 0 0 0 0 16-3584 chrM 5756 0 0 0 0 0 0 0 16-3584 chrM 5757 0 0 0 0 0 0 0 16-3584 chrM 5758 0 0 0 0 0 0 0 16-3584 chrM 5759 0 0 0 0 0 0 0 16-3584 chrM 5760 0 0 0 0 0 0 0 16-3584 chrM 5761 0 0 0 0 0 0 0 16-3584 chrM 5762 0 0 0 0 0 0 0 16-3584 chrM 5763 0 0 0 0 0 0 0 16-3584 chrM 5764 0 0 0 0 0 0 0 16-3584 chrM 5765 0 0 0 0 0 0 0 16-3584 chrM 5766 0 0 0 0 0 0 0 16-3584 chrM 5767 0 0 0 0 0 0 0 16-3584 chrM 5768 0 0 0 0 0 0 0 16-3584 chrM 5769 0 0 0 0 0 0 0 16-3584 chrM 5770 0 0 0 0 0 0 0 16-3584 chrM 5771 0 0 0 0 0 0 0 16-3584 chrM 5772 0 0 0 0 0 0 0 16-3584 chrM 5773 0 0 0 0 0 0 0 16-3584 chrM 5774 0 0 0 0 0 0 0 16-3584 chrM 5775 0 0 0 0 0 0 0 16-3584 chrM 5776 0 0 0 0 0 0 0 16-3584 chrM 5777 0 0 0 0 0 0 0 16-3584 chrM 5778 0 0 0 0 0 0 0 16-3584 chrM 5779 0 0 0 0 0 0 0 16-3584 chrM 5780 0 0 0 0 0 0 0 16-3584 chrM 5781 0 0 0 0 0 0 0 16-3584 chrM 5782 0 0 0 0 0 0 0 16-3584 chrM 5783 0 0 0 0 0 0 0 16-3584 chrM 5784 0 0 0 0 0 0 0 16-3584 chrM 5785 0 0 0 0 0 0 0 16-3584 chrM 5786 0 0 0 0 0 0 0 16-3584 chrM 5787 0 0 0 0 0 0 0 16-3584 chrM 5788 0 0 0 0 0 0 0 16-3584 chrM 5789 0 0 0 0 0 0 0 16-3584 chrM 5790 0 0 0 0 0 0 0 16-3584 chrM 5791 0 0 0 0 0 0 0 16-3584 chrM 5792 0 0 0 0 0 0 0 16-3584 chrM 5793 0 0 0 0 0 0 0 16-3584 chrM 5794 0 0 0 0 0 0 0 16-3584 chrM 5795 0 0 0 0 0 0 0 16-3584 chrM 5796 0 0 0 0 0 0 0 16-3584 chrM 5797 0 0 0 0 0 0 0 16-3584 chrM 5798 0 0 0 0 0 0 0 16-3584 chrM 5799 0 0 0 0 0 0 0 16-3584 chrM 5800 0 0 0 0 0 0 0 16-3584 chrM 5801 0 0 0 0 0 0 0 16-3584 chrM 5802 0 0 0 0 0 0 0 16-3584 chrM 5803 0 0 0 0 0 0 0 16-3584 chrM 5804 0 0 0 0 0 0 0 16-3584 chrM 5805 0 0 0 0 0 0 0 16-3584 chrM 5806 0 0 0 0 0 0 0 16-3584 chrM 5807 0 0 0 0 0 0 0 16-3584 chrM 5808 0 0 0 0 0 0 0 16-3584 chrM 5809 0 0 0 0 0 0 0 16-3584 chrM 5810 0 0 0 0 0 0 0 16-3584 chrM 5811 0 0 0 0 0 0 0 16-3584 chrM 5812 0 0 0 0 0 0 0 16-3584 chrM 5813 0 0 0 0 0 0 0 16-3584 chrM 5814 0 0 0 0 0 0 0 16-3584 chrM 5815 0 0 0 0 0 0 0 16-3584 chrM 5816 0 0 0 0 0 0 0 16-3584 chrM 5817 0 0 0 0 0 0 0 16-3584 chrM 5818 0 0 0 0 0 0 0 16-3584 chrM 5819 0 0 0 0 0 0 0 16-3584 chrM 5820 0 0 0 0 0 0 0 16-3584 chrM 5821 0 0 0 0 0 0 0 16-3584 chrM 5822 0 0 0 0 0 0 0 16-3584 chrM 5823 0 0 0 0 0 0 0 16-3584 chrM 5824 0 0 0 0 0 0 0 16-3584 chrM 5825 0 0 0 0 0 0 0 16-3584 chrM 5826 0 0 0 0 0 0 0 16-3584 chrM 5827 0 0 0 0 0 0 0 16-3584 chrM 5828 0 0 0 0 0 0 0 16-3584 chrM 5829 0 0 0 0 0 0 0 16-3584 chrM 5830 0 0 0 0 0 0 0 16-3584 chrM 5831 0 0 0 0 0 0 0 16-3584 chrM 5832 0 0 0 0 0 0 0 16-3584 chrM 5833 0 0 0 0 0 0 0 16-3584 chrM 5834 0 0 0 0 0 0 0 16-3584 chrM 5835 0 0 0 0 0 0 0 16-3584 chrM 5836 0 0 0 0 0 0 0 16-3584 chrM 5837 0 0 0 0 0 0 0 16-3584 chrM 5838 0 0 0 0 0 0 0 16-3584 chrM 5839 0 0 0 0 0 0 0 16-3584 chrM 5840 0 0 0 0 0 0 0 16-3584 chrM 5841 0 0 0 0 0 0 0 16-3584 chrM 5842 0 0 0 0 0 0 0 16-3584 chrM 5843 0 0 0 0 0 0 0 16-3584 chrM 5844 0 0 0 0 0 0 0 16-3584 chrM 5845 0 0 0 0 0 0 0 16-3584 chrM 5846 0 0 0 0 0 0 0 16-3584 chrM 5847 0 0 0 0 0 0 0 16-3584 chrM 5848 0 0 0 0 0 0 0 16-3584 chrM 5849 0 0 0 0 0 0 0 16-3584 chrM 5850 0 0 0 0 0 0 0 16-3584 chrM 5851 0 0 0 0 0 0 0 16-3584 chrM 5852 0 0 0 0 0 0 0 16-3584 chrM 5853 0 0 0 0 0 0 0 16-3584 chrM 5854 0 0 0 0 0 0 0 16-3584 chrM 5855 0 0 0 0 0 0 0 16-3584 chrM 5856 0 0 0 0 0 0 0 16-3584 chrM 5857 0 0 0 0 0 0 0 16-3584 chrM 5858 0 0 0 0 0 0 0 16-3584 chrM 5859 0 0 0 0 0 0 0 16-3584 chrM 5860 0 0 0 0 0 0 0 16-3584 chrM 5861 0 0 0 0 0 0 0 16-3584 chrM 5862 0 0 0 0 0 0 0 16-3584 chrM 5863 0 0 0 0 0 0 0 16-3584 chrM 5864 0 0 0 0 0 0 0 16-3584 chrM 5865 0 0 0 0 0 0 0 16-3584 chrM 5866 0 0 0 0 0 0 0 16-3584 chrM 5867 0 0 0 0 0 0 0 16-3584 chrM 5868 0 0 0 0 0 0 0 16-3584 chrM 5869 0 0 0 0 0 0 0 16-3584 chrM 5870 0 0 0 0 0 0 0 16-3584 chrM 5871 0 0 0 0 0 0 0 16-3584 chrM 5872 0 0 0 0 0 0 0 16-3584 chrM 5873 0 0 0 0 0 0 0 16-3584 chrM 5874 0 0 0 0 0 0 0 16-3584 chrM 5875 0 0 0 0 0 0 0 16-3584 chrM 5876 0 0 0 0 0 0 0 16-3584 chrM 5877 0 0 0 0 0 0 0 16-3584 chrM 5878 0 0 0 0 0 0 0 16-3584 chrM 5879 0 0 0 0 0 0 0 16-3584 chrM 5880 0 0 0 0 0 0 0 16-3584 chrM 5881 0 0 0 0 0 0 0 16-3584 chrM 5882 0 0 0 0 0 0 0 16-3584 chrM 5883 0 0 0 0 0 0 0 16-3584 chrM 5884 0 0 0 0 0 0 0 16-3584 chrM 5885 0 0 0 0 0 0 0 16-3584 chrM 5886 0 0 0 0 0 0 0 16-3584 chrM 5887 0 0 0 0 0 0 0 16-3584 chrM 5888 0 0 0 0 0 0 0 16-3584 chrM 5889 0 0 0 0 0 0 0 16-3584 chrM 5890 0 0 0 0 0 0 0 16-3584 chrM 5891 0 0 0 0 0 0 0 16-3584 chrM 5892 0 0 0 0 0 0 0 16-3584 chrM 5893 0 0 0 0 0 0 0 16-3584 chrM 5894 0 0 0 0 0 0 0 16-3584 chrM 5895 0 0 0 0 0 0 0 16-3584 chrM 5896 0 0 0 0 0 0 0 16-3584 chrM 5897 0 0 0 0 0 0 0 16-3584 chrM 5898 0 0 0 0 0 0 0 16-3584 chrM 5899 0 0 0 0 0 0 0 16-3584 chrM 5900 0 0 0 0 0 0 0 16-3584 chrM 5901 0 0 0 0 0 0 0 16-3584 chrM 5902 0 0 0 0 0 0 0 16-3584 chrM 5903 0 0 0 0 0 0 0 16-3584 chrM 5904 0 0 0 0 0 0 0 16-3584 chrM 5905 0 0 0 0 0 0 0 16-3584 chrM 5906 0 0 0 0 0 0 0 16-3584 chrM 5907 0 0 0 0 0 0 0 16-3584 chrM 5908 0 0 0 0 0 0 0 16-3584 chrM 5909 0 0 0 0 0 0 0 16-3584 chrM 5910 0 0 0 0 0 0 0 16-3584 chrM 5911 0 0 0 0 0 0 0 16-3584 chrM 5912 0 0 0 0 0 0 0 16-3584 chrM 5913 0 0 0 0 0 0 0 16-3584 chrM 5914 0 0 0 0 0 0 0 16-3584 chrM 5915 0 0 0 0 0 0 0 16-3584 chrM 5916 0 0 0 0 0 0 0 16-3584 chrM 5917 0 0 0 0 0 0 0 16-3584 chrM 5918 0 0 0 0 0 0 0 16-3584 chrM 5919 0 0 0 0 0 0 0 16-3584 chrM 5920 0 0 0 0 0 0 0 16-3584 chrM 5921 0 0 0 0 0 0 0 16-3584 chrM 5922 0 0 0 0 0 0 0 16-3584 chrM 5923 0 0 0 0 0 0 0 16-3584 chrM 5924 0 0 0 0 0 0 0 16-3584 chrM 5925 0 0 0 0 0 0 0 16-3584 chrM 5926 0 0 0 0 0 0 0 16-3584 chrM 5927 0 0 0 0 0 0 0 16-3584 chrM 5928 0 0 0 0 0 0 0 16-3584 chrM 5929 0 0 0 0 0 0 0 16-3584 chrM 5930 0 0 0 0 0 0 0 16-3584 chrM 5931 0 0 0 0 0 0 0 16-3584 chrM 5932 0 0 0 0 0 0 0 16-3584 chrM 5933 0 0 0 0 0 0 0 16-3584 chrM 5934 0 0 0 0 0 0 0 16-3584 chrM 5935 0 0 0 0 0 0 0 16-3584 chrM 5936 0 0 0 0 0 0 0 16-3584 chrM 5937 0 0 0 0 0 0 0 16-3584 chrM 5938 0 0 0 0 0 0 0 16-3584 chrM 5939 0 0 0 0 0 0 0 16-3584 chrM 5940 0 0 0 0 0 0 0 16-3584 chrM 5941 0 0 0 0 0 0 0 16-3584 chrM 5942 0 0 0 0 0 0 0 16-3584 chrM 5943 0 0 0 0 0 0 0 16-3584 chrM 5944 0 0 0 0 0 0 0 16-3584 chrM 5945 0 0 0 0 0 0 0 16-3584 chrM 5946 0 0 0 0 0 0 0 16-3584 chrM 5947 0 0 0 0 0 0 0 16-3584 chrM 5948 0 0 0 0 0 0 0 16-3584 chrM 5949 0 0 0 0 0 0 0 16-3584 chrM 5950 0 0 0 0 0 0 0 16-3584 chrM 5951 0 0 0 0 0 0 0 16-3584 chrM 5952 0 0 0 0 0 0 0 16-3584 chrM 5953 0 0 0 0 0 0 0 16-3584 chrM 5954 0 0 0 0 0 0 0 16-3584 chrM 5955 0 0 0 0 0 0 0 16-3584 chrM 5956 0 0 0 0 0 0 0 16-3584 chrM 5957 0 0 0 0 0 0 0 16-3584 chrM 5958 0 0 0 0 0 0 0 16-3584 chrM 5959 0 0 0 0 0 0 0 16-3584 chrM 5960 0 0 0 0 0 0 0 16-3584 chrM 5961 0 0 0 0 0 0 0 16-3584 chrM 5962 0 0 0 0 0 0 0 16-3584 chrM 5963 0 0 0 0 0 0 0 16-3584 chrM 5964 0 0 0 0 0 0 0 16-3584 chrM 5965 0 0 0 0 0 0 0 16-3584 chrM 5966 0 0 0 0 0 0 0 16-3584 chrM 5967 0 0 0 0 0 0 0 16-3584 chrM 5968 0 0 0 0 0 0 0 16-3584 chrM 5969 0 0 0 0 0 0 0 16-3584 chrM 5970 0 0 0 0 0 0 0 16-3584 chrM 5971 0 0 0 0 0 0 0 16-3584 chrM 5972 0 0 0 0 0 0 0 16-3584 chrM 5973 0 0 0 0 0 0 0 16-3584 chrM 5974 0 0 0 0 0 0 0 16-3584 chrM 5975 0 0 0 0 0 0 0 16-3584 chrM 5976 0 0 0 0 0 0 0 16-3584 chrM 5977 0 0 0 0 0 0 0 16-3584 chrM 5978 0 0 0 0 0 0 0 16-3584 chrM 5979 0 0 0 0 0 0 0 16-3584 chrM 5980 0 0 0 0 0 0 0 16-3584 chrM 5981 0 0 0 0 0 0 0 16-3584 chrM 5982 0 0 0 0 0 0 0 16-3584 chrM 5983 0 0 0 0 0 0 0 16-3584 chrM 5984 0 0 0 0 0 0 0 16-3584 chrM 5985 0 0 0 0 0 0 0 16-3584 chrM 5986 0 0 0 0 0 0 0 16-3584 chrM 5987 0 0 0 0 0 0 0 16-3584 chrM 5988 0 0 0 0 0 0 0 16-3584 chrM 5989 0 0 0 0 0 0 0 16-3584 chrM 5990 0 0 0 0 0 0 0 16-3584 chrM 5991 0 0 0 0 0 0 0 16-3584 chrM 5992 0 0 0 0 0 0 0 16-3584 chrM 5993 0 0 0 0 0 0 0 16-3584 chrM 5994 0 0 0 0 0 0 0 16-3584 chrM 5995 0 0 0 0 0 0 0 16-3584 chrM 5996 0 0 0 0 0 0 0 16-3584 chrM 5997 0 0 0 0 0 0 0 16-3584 chrM 5998 0 0 0 0 0 0 0 16-3584 chrM 5999 0 0 0 0 0 0 0 16-3584 chrM 6000 0 0 0 0 0 0 0 16-3584 chrM 6001 0 0 0 0 0 0 0 16-3584 chrM 6002 0 0 0 0 0 0 0 16-3584 chrM 6003 0 0 0 0 0 0 0 16-3584 chrM 6004 0 0 0 0 0 0 0 16-3584 chrM 6005 0 0 0 0 0 0 0 16-3584 chrM 6006 0 0 0 0 0 0 0 16-3584 chrM 6007 0 0 0 0 0 0 0 16-3584 chrM 6008 0 0 0 0 0 0 0 16-3584 chrM 6009 0 0 0 0 0 0 0 16-3584 chrM 6010 0 0 0 0 0 0 0 16-3584 chrM 6011 0 0 0 0 0 0 0 16-3584 chrM 6012 0 0 0 0 0 0 0 16-3584 chrM 6013 0 0 0 0 0 0 0 16-3584 chrM 6014 0 0 0 0 0 0 0 16-3584 chrM 6015 0 0 0 0 0 0 0 16-3584 chrM 6016 0 0 0 0 0 0 0 16-3584 chrM 6017 0 0 0 0 0 0 0 16-3584 chrM 6018 0 0 0 0 0 0 0 16-3584 chrM 6019 0 0 0 0 0 0 0 16-3584 chrM 6020 0 0 0 0 0 0 0 16-3584 chrM 6021 0 0 0 0 0 0 0 16-3584 chrM 6022 0 0 0 0 0 0 0 16-3584 chrM 6023 0 0 0 0 0 0 0 16-3584 chrM 6024 0 0 0 0 0 0 0 16-3584 chrM 6025 0 0 0 0 0 0 0 16-3584 chrM 6026 0 0 0 0 0 0 0 16-3584 chrM 6027 0 0 0 0 0 0 0 16-3584 chrM 6028 0 0 0 0 0 0 0 16-3584 chrM 6029 0 0 0 0 0 0 0 16-3584 chrM 6030 0 0 0 0 0 0 0 16-3584 chrM 6031 0 0 0 0 0 0 0 16-3584 chrM 6032 0 0 0 0 0 0 0 16-3584 chrM 6033 0 0 0 0 0 0 0 16-3584 chrM 6034 0 0 0 0 0 0 0 16-3584 chrM 6035 0 0 0 0 0 0 0 16-3584 chrM 6036 0 0 0 0 0 0 0 16-3584 chrM 6037 0 0 0 0 0 0 0 16-3584 chrM 6038 0 0 0 0 0 0 0 16-3584 chrM 6039 0 0 0 0 0 0 0 16-3584 chrM 6040 0 0 0 0 0 0 0 16-3584 chrM 6041 0 0 0 0 0 0 0 16-3584 chrM 6042 0 0 0 0 0 0 0 16-3584 chrM 6043 0 0 0 0 0 0 0 16-3584 chrM 6044 0 0 0 0 0 0 0 16-3584 chrM 6045 0 0 0 0 0 0 0 16-3584 chrM 6046 0 0 0 0 0 0 0 16-3584 chrM 6047 0 0 0 0 0 0 0 16-3584 chrM 6048 0 0 0 0 0 0 0 16-3584 chrM 6049 0 0 0 0 0 0 0 16-3584 chrM 6050 0 0 0 0 0 0 0 16-3584 chrM 6051 0 0 0 0 0 0 0 16-3584 chrM 6052 0 0 0 0 0 0 0 16-3584 chrM 6053 0 0 0 0 0 0 0 16-3584 chrM 6054 0 0 0 0 0 0 0 16-3584 chrM 6055 0 0 0 0 0 0 0 16-3584 chrM 6056 0 0 0 0 0 0 0 16-3584 chrM 6057 0 0 0 0 0 0 0 16-3584 chrM 6058 0 0 0 0 0 0 0 16-3584 chrM 6059 0 0 0 0 0 0 0 16-3584 chrM 6060 0 0 0 0 0 0 0 16-3584 chrM 6061 0 0 0 0 0 0 0 16-3584 chrM 6062 0 0 0 0 0 0 0 16-3584 chrM 6063 0 0 0 0 0 0 0 16-3584 chrM 6064 0 0 0 0 0 0 0 16-3584 chrM 6065 0 0 0 0 0 0 0 16-3584 chrM 6066 0 0 0 0 0 0 0 16-3584 chrM 6067 0 0 0 0 0 0 0 16-3584 chrM 6068 0 0 0 0 0 0 0 16-3584 chrM 6069 0 0 0 0 0 0 0 16-3584 chrM 6070 0 0 0 0 0 0 0 16-3584 chrM 6071 0 0 0 0 0 0 0 16-3584 chrM 6072 0 0 0 0 0 0 0 16-3584 chrM 6073 0 0 0 0 0 0 0 16-3584 chrM 6074 0 0 0 0 0 0 0 16-3584 chrM 6075 0 0 0 0 0 0 0 16-3584 chrM 6076 0 0 0 0 0 0 0 16-3584 chrM 6077 0 0 0 0 0 0 0 16-3584 chrM 6078 0 0 0 0 0 0 0 16-3584 chrM 6079 0 0 0 0 0 0 0 16-3584 chrM 6080 0 0 0 0 0 0 0 16-3584 chrM 6081 0 0 0 0 0 0 0 16-3584 chrM 6082 0 0 0 0 0 0 0 16-3584 chrM 6083 0 0 0 0 0 0 0 16-3584 chrM 6084 0 0 0 0 0 0 0 16-3584 chrM 6085 0 0 0 0 0 0 0 16-3584 chrM 6086 0 0 0 0 0 0 0 16-3584 chrM 6087 0 0 0 0 0 0 0 16-3584 chrM 6088 0 0 0 0 0 0 0 16-3584 chrM 6089 0 0 0 0 0 0 0 16-3584 chrM 6090 0 0 0 0 0 0 0 16-3584 chrM 6091 0 0 0 0 0 0 0 16-3584 chrM 6092 0 0 0 0 0 0 0 16-3584 chrM 6093 0 0 0 0 0 0 0 16-3584 chrM 6094 0 0 0 0 0 0 0 16-3584 chrM 6095 0 0 0 0 0 0 0 16-3584 chrM 6096 0 0 0 0 0 0 0 16-3584 chrM 6097 0 0 0 0 0 0 0 16-3584 chrM 6098 0 0 0 0 0 0 0 16-3584 chrM 6099 0 0 0 0 0 0 0 16-3584 chrM 6100 0 0 0 0 0 0 0 16-3584 chrM 6101 0 0 0 0 0 0 0 16-3584 chrM 6102 0 0 0 0 0 0 0 16-3584 chrM 6103 0 0 0 0 0 0 0 16-3584 chrM 6104 0 0 0 0 0 0 0 16-3584 chrM 6105 0 0 0 0 0 0 0 16-3584 chrM 6106 0 0 0 0 0 0 0 16-3584 chrM 6107 0 0 0 0 0 0 0 16-3584 chrM 6108 0 0 0 0 0 0 0 16-3584 chrM 6109 0 0 0 0 0 0 0 16-3584 chrM 6110 0 0 0 0 0 0 0 16-3584 chrM 6111 0 0 0 0 0 0 0 16-3584 chrM 6112 0 0 0 0 0 0 0 16-3584 chrM 6113 0 0 0 0 0 0 0 16-3584 chrM 6114 0 0 0 0 0 0 0 16-3584 chrM 6115 0 0 0 0 0 0 0 16-3584 chrM 6116 0 0 0 0 0 0 0 16-3584 chrM 6117 0 0 0 0 0 0 0 16-3584 chrM 6118 0 0 0 0 0 0 0 16-3584 chrM 6119 0 0 0 0 0 0 0 16-3584 chrM 6120 0 0 0 0 0 0 0 16-3584 chrM 6121 0 0 0 0 0 0 0 16-3584 chrM 6122 0 0 0 0 0 0 0 16-3584 chrM 6123 0 0 0 0 0 0 0 16-3584 chrM 6124 0 0 0 0 0 0 0 16-3584 chrM 6125 0 0 0 0 0 0 0 16-3584 chrM 6126 0 0 0 0 0 0 0 16-3584 chrM 6127 0 0 0 0 0 0 0 16-3584 chrM 6128 0 0 0 0 0 0 0 16-3584 chrM 6129 0 0 0 0 0 0 0 16-3584 chrM 6130 0 0 0 0 0 0 0 16-3584 chrM 6131 0 0 0 0 0 0 0 16-3584 chrM 6132 0 0 0 0 0 0 0 16-3584 chrM 6133 0 0 0 0 0 0 0 16-3584 chrM 6134 0 0 0 0 0 0 0 16-3584 chrM 6135 0 0 0 0 0 0 0 16-3584 chrM 6136 0 0 0 0 0 0 0 16-3584 chrM 6137 0 0 0 0 0 0 0 16-3584 chrM 6138 0 0 0 0 0 0 0 16-3584 chrM 6139 0 0 0 0 0 0 0 16-3584 chrM 6140 0 0 0 0 0 0 0 16-3584 chrM 6141 0 0 0 0 0 0 0 16-3584 chrM 6142 0 0 0 0 0 0 0 16-3584 chrM 6143 0 0 0 0 0 0 0 16-3584 chrM 6144 0 0 0 0 0 0 0 16-3584 chrM 6145 0 0 0 0 0 0 0 16-3584 chrM 6146 0 0 0 0 0 0 0 16-3584 chrM 6147 0 0 0 0 0 0 0 16-3584 chrM 6148 0 0 0 0 0 0 0 16-3584 chrM 6149 0 0 0 0 0 0 0 16-3584 chrM 6150 0 0 0 0 0 0 0 16-3584 chrM 6151 0 0 0 0 0 0 0 16-3584 chrM 6152 0 0 0 0 0 0 0 16-3584 chrM 6153 0 0 0 0 0 0 0 16-3584 chrM 6154 0 0 0 0 0 0 0 16-3584 chrM 6155 0 0 0 0 0 0 0 16-3584 chrM 6156 0 0 0 0 0 0 0 16-3584 chrM 6157 0 0 0 0 0 0 0 16-3584 chrM 6158 0 0 0 0 0 0 0 16-3584 chrM 6159 0 0 0 0 0 0 0 16-3584 chrM 6160 0 0 0 0 0 0 0 16-3584 chrM 6161 0 0 0 0 0 0 0 16-3584 chrM 6162 0 0 0 0 0 0 0 16-3584 chrM 6163 0 0 0 0 0 0 0 16-3584 chrM 6164 0 0 0 0 0 0 0 16-3584 chrM 6165 0 0 0 0 0 0 0 16-3584 chrM 6166 0 0 0 0 0 0 0 16-3584 chrM 6167 0 0 0 0 0 0 0 16-3584 chrM 6168 0 0 0 0 0 0 0 16-3584 chrM 6169 0 0 0 0 0 0 0 16-3584 chrM 6170 0 0 0 0 0 0 0 16-3584 chrM 6171 0 0 0 0 0 0 0 16-3584 chrM 6172 0 0 0 0 0 0 0 16-3584 chrM 6173 0 0 0 0 0 0 0 16-3584 chrM 6174 0 0 0 0 0 0 0 16-3584 chrM 6175 0 0 0 0 0 0 0 16-3584 chrM 6176 0 0 0 0 0 0 0 16-3584 chrM 6177 0 0 0 0 0 0 0 16-3584 chrM 6178 0 0 0 0 0 0 0 16-3584 chrM 6179 0 0 0 0 0 0 0 16-3584 chrM 6180 0 0 0 0 0 0 0 16-3584 chrM 6181 0 0 0 0 0 0 0 16-3584 chrM 6182 0 0 0 0 0 0 0 16-3584 chrM 6183 0 0 0 0 0 0 0 16-3584 chrM 6184 0 0 0 0 0 0 0 16-3584 chrM 6185 0 0 0 0 0 0 0 16-3584 chrM 6186 0 0 0 0 0 0 0 16-3584 chrM 6187 0 0 0 0 0 0 0 16-3584 chrM 6188 0 0 0 0 0 0 0 16-3584 chrM 6189 0 0 0 0 0 0 0 16-3584 chrM 6190 0 0 0 0 0 0 0 16-3584 chrM 6191 0 0 0 0 0 0 0 16-3584 chrM 6192 0 0 0 0 0 0 0 16-3584 chrM 6193 0 0 0 0 0 0 0 16-3584 chrM 6194 0 0 0 0 0 0 0 16-3584 chrM 6195 0 0 0 0 0 0 0 16-3584 chrM 6196 0 0 0 0 0 0 0 16-3584 chrM 6197 0 0 0 0 0 0 0 16-3584 chrM 6198 0 0 0 0 0 0 0 16-3584 chrM 6199 0 0 0 0 0 0 0 16-3584 chrM 6200 0 0 0 0 0 0 0 16-3584 chrM 6201 0 0 0 0 0 0 0 16-3584 chrM 6202 0 0 0 0 0 0 0 16-3584 chrM 6203 0 0 0 0 0 0 0 16-3584 chrM 6204 0 0 0 0 0 0 0 16-3584 chrM 6205 0 0 0 0 0 0 0 16-3584 chrM 6206 0 0 0 0 0 0 0 16-3584 chrM 6207 0 0 0 0 0 0 0 16-3584 chrM 6208 0 0 0 0 0 0 0 16-3584 chrM 6209 0 0 0 0 0 0 0 16-3584 chrM 6210 0 0 0 0 0 0 0 16-3584 chrM 6211 0 0 0 0 0 0 0 16-3584 chrM 6212 0 0 0 0 0 0 0 16-3584 chrM 6213 0 0 0 0 0 0 0 16-3584 chrM 6214 0 0 0 0 0 0 0 16-3584 chrM 6215 0 0 0 0 0 0 0 16-3584 chrM 6216 0 0 0 0 0 0 0 16-3584 chrM 6217 0 0 0 0 0 0 0 16-3584 chrM 6218 0 0 0 0 0 0 0 16-3584 chrM 6219 0 0 0 0 0 0 0 16-3584 chrM 6220 0 0 0 0 0 0 0 16-3584 chrM 6221 0 0 0 0 0 0 0 16-3584 chrM 6222 0 0 0 0 0 0 0 16-3584 chrM 6223 0 0 0 0 0 0 0 16-3584 chrM 6224 0 0 0 0 0 0 0 16-3584 chrM 6225 0 0 0 0 0 0 0 16-3584 chrM 6226 0 0 0 0 0 0 0 16-3584 chrM 6227 0 0 0 0 0 0 0 16-3584 chrM 6228 0 0 0 0 0 0 0 16-3584 chrM 6229 0 0 0 0 0 0 0 16-3584 chrM 6230 0 0 0 0 0 0 0 16-3584 chrM 6231 0 0 0 0 0 0 0 16-3584 chrM 6232 0 0 0 0 0 0 0 16-3584 chrM 6233 0 0 0 0 0 0 0 16-3584 chrM 6234 0 0 0 0 0 0 0 16-3584 chrM 6235 0 0 0 0 0 0 0 16-3584 chrM 6236 0 0 0 0 0 0 0 16-3584 chrM 6237 0 0 0 0 0 0 0 16-3584 chrM 6238 0 0 0 0 0 0 0 16-3584 chrM 6239 0 0 0 0 0 0 0 16-3584 chrM 6240 0 0 0 0 0 0 0 16-3584 chrM 6241 0 0 0 0 0 0 0 16-3584 chrM 6242 0 0 0 0 0 0 0 16-3584 chrM 6243 0 0 0 0 0 0 0 16-3584 chrM 6244 0 0 0 0 0 0 0 16-3584 chrM 6245 0 0 0 0 0 0 0 16-3584 chrM 6246 0 0 0 0 0 0 0 16-3584 chrM 6247 0 0 0 0 0 0 0 16-3584 chrM 6248 0 0 0 0 0 0 0 16-3584 chrM 6249 0 0 0 0 0 0 0 16-3584 chrM 6250 0 0 0 0 0 0 0 16-3584 chrM 6251 0 0 0 0 0 0 0 16-3584 chrM 6252 0 0 0 0 0 0 0 16-3584 chrM 6253 0 0 0 0 0 0 0 16-3584 chrM 6254 0 0 0 0 0 0 0 16-3584 chrM 6255 0 0 0 0 0 0 0 16-3584 chrM 6256 0 0 0 0 0 0 0 16-3584 chrM 6257 0 0 0 0 0 0 0 16-3584 chrM 6258 0 0 0 0 0 0 0 16-3584 chrM 6259 0 0 0 0 0 0 0 16-3584 chrM 6260 0 0 0 0 0 0 0 16-3584 chrM 6261 0 0 0 0 0 0 0 16-3584 chrM 6262 0 0 0 0 0 0 0 16-3584 chrM 6263 0 0 0 0 0 0 0 16-3584 chrM 6264 0 0 0 0 0 0 0 16-3584 chrM 6265 0 0 0 0 0 0 0 16-3584 chrM 6266 0 0 0 0 0 0 0 16-3584 chrM 6267 0 0 0 0 0 0 0 16-3584 chrM 6268 0 0 0 0 0 0 0 16-3584 chrM 6269 0 0 0 0 0 0 0 16-3584 chrM 6270 0 0 0 0 0 0 0 16-3584 chrM 6271 0 0 0 0 0 0 0 16-3584 chrM 6272 0 0 0 0 0 0 0 16-3584 chrM 6273 0 0 0 0 0 0 0 16-3584 chrM 6274 0 0 0 0 0 0 0 16-3584 chrM 6275 0 0 0 0 0 0 0 16-3584 chrM 6276 0 0 0 0 0 0 0 16-3584 chrM 6277 0 0 0 0 0 0 0 16-3584 chrM 6278 0 0 0 0 0 0 0 16-3584 chrM 6279 0 0 0 0 0 0 0 16-3584 chrM 6280 0 0 0 0 0 0 0 16-3584 chrM 6281 0 0 0 0 0 0 0 16-3584 chrM 6282 0 0 0 0 0 0 0 16-3584 chrM 6283 0 0 0 0 0 0 0 16-3584 chrM 6284 0 0 0 0 0 0 0 16-3584 chrM 6285 0 0 0 0 0 0 0 16-3584 chrM 6286 0 0 0 0 0 0 0 16-3584 chrM 6287 0 0 0 0 0 0 0 16-3584 chrM 6288 0 0 0 0 0 0 0 16-3584 chrM 6289 0 0 0 0 0 0 0 16-3584 chrM 6290 0 0 0 0 0 0 0 16-3584 chrM 6291 0 0 0 0 0 0 0 16-3584 chrM 6292 0 0 0 0 0 0 0 16-3584 chrM 6293 0 0 0 0 0 0 0 16-3584 chrM 6294 0 0 0 0 0 0 0 16-3584 chrM 6295 0 0 0 0 0 0 0 16-3584 chrM 6296 0 0 0 0 0 0 0 16-3584 chrM 6297 0 0 0 0 0 0 0 16-3584 chrM 6298 0 0 0 0 0 0 0 16-3584 chrM 6299 0 0 0 0 0 0 0 16-3584 chrM 6300 0 0 0 0 0 0 0 16-3584 chrM 6301 0 0 0 0 0 0 0 16-3584 chrM 6302 0 0 0 0 0 0 0 16-3584 chrM 6303 0 0 0 0 0 0 0 16-3584 chrM 6304 0 0 0 0 0 0 0 16-3584 chrM 6305 0 0 0 0 0 0 0 16-3584 chrM 6306 0 0 0 0 0 0 0 16-3584 chrM 6307 0 0 0 0 0 0 0 16-3584 chrM 6308 0 0 0 0 0 0 0 16-3584 chrM 6309 0 0 0 0 0 0 0 16-3584 chrM 6310 0 0 0 0 0 0 0 16-3584 chrM 6311 0 0 0 0 0 0 0 16-3584 chrM 6312 0 0 0 0 0 0 0 16-3584 chrM 6313 0 0 0 0 0 0 0 16-3584 chrM 6314 0 0 0 0 0 0 0 16-3584 chrM 6315 0 0 0 0 0 0 0 16-3584 chrM 6316 0 0 0 0 0 0 0 16-3584 chrM 6317 0 0 0 0 0 0 0 16-3584 chrM 6318 0 0 0 0 0 0 0 16-3584 chrM 6319 0 0 0 0 0 0 0 16-3584 chrM 6320 0 0 0 0 0 0 0 16-3584 chrM 6321 0 0 0 0 0 0 0 16-3584 chrM 6322 0 0 0 0 0 0 0 16-3584 chrM 6323 0 0 0 0 0 0 0 16-3584 chrM 6324 0 0 0 0 0 0 0 16-3584 chrM 6325 0 0 0 0 0 0 0 16-3584 chrM 6326 0 0 0 0 0 0 0 16-3584 chrM 6327 0 0 0 0 0 0 0 16-3584 chrM 6328 0 0 0 0 0 0 0 16-3584 chrM 6329 0 0 0 0 0 0 0 16-3584 chrM 6330 0 0 0 0 0 0 0 16-3584 chrM 6331 0 0 0 0 0 0 0 16-3584 chrM 6332 0 0 0 0 0 0 0 16-3584 chrM 6333 0 0 0 0 0 0 0 16-3584 chrM 6334 0 0 0 0 0 0 0 16-3584 chrM 6335 0 0 0 0 0 0 0 16-3584 chrM 6336 0 0 0 0 0 0 0 16-3584 chrM 6337 0 0 0 0 0 0 0 16-3584 chrM 6338 0 0 0 0 0 0 0 16-3584 chrM 6339 0 0 0 0 0 0 0 16-3584 chrM 6340 0 0 0 0 0 0 0 16-3584 chrM 6341 0 0 0 0 0 0 0 16-3584 chrM 6342 0 0 0 0 0 0 0 16-3584 chrM 6343 0 0 0 0 0 0 0 16-3584 chrM 6344 0 0 0 0 0 0 0 16-3584 chrM 6345 0 0 0 0 0 0 0 16-3584 chrM 6346 0 0 0 0 0 0 0 16-3584 chrM 6347 0 0 0 0 0 0 0 16-3584 chrM 6348 0 0 0 0 0 0 0 16-3584 chrM 6349 0 0 0 0 0 0 0 16-3584 chrM 6350 0 0 0 0 0 0 0 16-3584 chrM 6351 0 0 0 0 0 0 0 16-3584 chrM 6352 0 0 0 0 0 0 0 16-3584 chrM 6353 0 0 0 0 0 0 0 16-3584 chrM 6354 0 0 0 0 0 0 0 16-3584 chrM 6355 0 0 0 0 0 0 0 16-3584 chrM 6356 0 0 0 0 0 0 0 16-3584 chrM 6357 0 0 0 0 0 0 0 16-3584 chrM 6358 0 0 0 0 0 0 0 16-3584 chrM 6359 0 0 0 0 0 0 0 16-3584 chrM 6360 0 0 0 0 0 0 0 16-3584 chrM 6361 0 0 0 0 0 0 0 16-3584 chrM 6362 0 0 0 0 0 0 0 16-3584 chrM 6363 0 0 0 0 0 0 0 16-3584 chrM 6364 0 0 0 0 0 0 0 16-3584 chrM 6365 0 0 0 0 0 0 0 16-3584 chrM 6366 0 0 0 0 0 0 0 16-3584 chrM 6367 0 0 0 0 0 0 0 16-3584 chrM 6368 0 0 0 0 0 0 0 16-3584 chrM 6369 0 0 0 0 0 0 0 16-3584 chrM 6370 0 0 0 0 0 0 0 16-3584 chrM 6371 0 0 0 0 0 0 0 16-3584 chrM 6372 0 0 0 0 0 0 0 16-3584 chrM 6373 0 0 0 0 0 0 0 16-3584 chrM 6374 0 0 0 0 0 0 0 16-3584 chrM 6375 0 0 0 0 0 0 0 16-3584 chrM 6376 0 0 0 0 0 0 0 16-3584 chrM 6377 0 0 0 0 0 0 0 16-3584 chrM 6378 0 0 0 0 0 0 0 16-3584 chrM 6379 0 0 0 0 0 0 0 16-3584 chrM 6380 0 0 0 0 0 0 0 16-3584 chrM 6381 0 0 0 0 0 0 0 16-3584 chrM 6382 0 0 0 0 0 0 0 16-3584 chrM 6383 0 0 0 0 0 0 0 16-3584 chrM 6384 0 0 0 0 0 0 0 16-3584 chrM 6385 0 0 0 0 0 0 0 16-3584 chrM 6386 0 0 0 0 0 0 0 16-3584 chrM 6387 0 0 0 0 0 0 0 16-3584 chrM 6388 0 0 0 0 0 0 0 16-3584 chrM 6389 0 0 0 0 0 0 0 16-3584 chrM 6390 0 0 0 0 0 0 0 16-3584 chrM 6391 0 0 0 0 0 0 0 16-3584 chrM 6392 0 0 0 0 0 0 0 16-3584 chrM 6393 0 0 0 0 0 0 0 16-3584 chrM 6394 0 0 0 0 0 0 0 16-3584 chrM 6395 0 0 0 0 0 0 0 16-3584 chrM 6396 0 0 0 0 0 0 0 16-3584 chrM 6397 0 0 0 0 0 0 0 16-3584 chrM 6398 0 0 0 0 0 0 0 16-3584 chrM 6399 0 0 0 0 0 0 0 16-3584 chrM 6400 0 0 0 0 0 0 0 16-3584 chrM 6401 0 0 0 0 0 0 0 16-3584 chrM 6402 0 0 0 0 0 0 0 16-3584 chrM 6403 0 0 0 0 0 0 0 16-3584 chrM 6404 0 0 0 0 0 0 0 16-3584 chrM 6405 0 0 0 0 0 0 0 16-3584 chrM 6406 0 0 0 0 0 0 0 16-3584 chrM 6407 0 0 0 0 0 0 0 16-3584 chrM 6408 0 0 0 0 0 0 0 16-3584 chrM 6409 0 0 0 0 0 0 0 16-3584 chrM 6410 0 0 0 0 0 0 0 16-3584 chrM 6411 0 0 0 0 0 0 0 16-3584 chrM 6412 0 0 0 0 0 0 0 16-3584 chrM 6413 0 0 0 0 0 0 0 16-3584 chrM 6414 0 0 0 0 0 0 0 16-3584 chrM 6415 0 0 0 0 0 0 0 16-3584 chrM 6416 0 0 0 0 0 0 0 16-3584 chrM 6417 0 0 0 0 0 0 0 16-3584 chrM 6418 0 0 0 0 0 0 0 16-3584 chrM 6419 0 0 0 0 0 0 0 16-3584 chrM 6420 0 0 0 0 0 0 0 16-3584 chrM 6421 0 0 0 0 0 0 0 16-3584 chrM 6422 0 0 0 0 0 0 0 16-3584 chrM 6423 0 0 0 0 0 0 0 16-3584 chrM 6424 0 0 0 0 0 0 0 16-3584 chrM 6425 0 0 0 0 0 0 0 16-3584 chrM 6426 0 0 0 0 0 0 0 16-3584 chrM 6427 0 0 0 0 0 0 0 16-3584 chrM 6428 0 0 0 0 0 0 0 16-3584 chrM 6429 0 0 0 0 0 0 0 16-3584 chrM 6430 0 0 0 0 0 0 0 16-3584 chrM 6431 0 0 0 0 0 0 0 16-3584 chrM 6432 0 0 0 0 0 0 0 16-3584 chrM 6433 0 0 0 0 0 0 0 16-3584 chrM 6434 0 0 0 0 0 0 0 16-3584 chrM 6435 0 0 0 0 0 0 0 16-3584 chrM 6436 0 0 0 0 0 0 0 16-3584 chrM 6437 0 0 0 0 0 0 0 16-3584 chrM 6438 0 0 0 0 0 0 0 16-3584 chrM 6439 0 0 0 0 0 0 0 16-3584 chrM 6440 0 0 0 0 0 0 0 16-3584 chrM 6441 0 0 0 0 0 0 0 16-3584 chrM 6442 0 0 0 0 0 0 0 16-3584 chrM 6443 0 0 0 0 0 0 0 16-3584 chrM 6444 0 0 0 0 0 0 0 16-3584 chrM 6445 0 0 0 0 0 0 0 16-3584 chrM 6446 0 0 0 0 0 0 0 16-3584 chrM 6447 0 0 0 0 0 0 0 16-3584 chrM 6448 0 0 0 0 0 0 0 16-3584 chrM 6449 0 0 0 0 0 0 0 16-3584 chrM 6450 0 0 0 0 0 0 0 16-3584 chrM 6451 0 0 0 0 0 0 0 16-3584 chrM 6452 0 0 0 0 0 0 0 16-3584 chrM 6453 0 0 0 0 0 0 0 16-3584 chrM 6454 0 0 0 0 0 0 0 16-3584 chrM 6455 0 0 0 0 0 0 0 16-3584 chrM 6456 0 0 0 0 0 0 0 16-3584 chrM 6457 0 0 0 0 0 0 0 16-3584 chrM 6458 0 0 0 0 0 0 0 16-3584 chrM 6459 0 0 0 0 0 0 0 16-3584 chrM 6460 0 0 0 0 0 0 0 16-3584 chrM 6461 0 0 0 0 0 0 0 16-3584 chrM 6462 0 0 0 0 0 0 0 16-3584 chrM 6463 0 0 0 0 0 0 0 16-3584 chrM 6464 0 0 0 0 0 0 0 16-3584 chrM 6465 0 0 0 0 0 0 0 16-3584 chrM 6466 0 0 0 0 0 0 0 16-3584 chrM 6467 0 0 0 0 0 0 0 16-3584 chrM 6468 0 0 0 0 0 0 0 16-3584 chrM 6469 0 0 0 0 0 0 0 16-3584 chrM 6470 0 0 0 0 0 0 0 16-3584 chrM 6471 0 0 0 0 0 0 0 16-3584 chrM 6472 0 0 0 0 0 0 0 16-3584 chrM 6473 0 0 0 0 0 0 0 16-3584 chrM 6474 0 0 0 0 0 0 0 16-3584 chrM 6475 0 0 0 0 0 0 0 16-3584 chrM 6476 0 0 0 0 0 0 0 16-3584 chrM 6477 0 0 0 0 0 0 0 16-3584 chrM 6478 0 0 0 0 0 0 0 16-3584 chrM 6479 0 0 0 0 0 0 0 16-3584 chrM 6480 0 0 0 0 0 0 0 16-3584 chrM 6481 0 0 0 0 0 0 0 16-3584 chrM 6482 0 0 0 0 0 0 0 16-3584 chrM 6483 0 0 0 0 0 0 0 16-3584 chrM 6484 0 0 0 0 0 0 0 16-3584 chrM 6485 0 0 0 0 0 0 0 16-3584 chrM 6486 0 0 0 0 0 0 0 16-3584 chrM 6487 0 0 0 0 0 0 0 16-3584 chrM 6488 0 0 0 0 0 0 0 16-3584 chrM 6489 0 0 0 0 0 0 0 16-3584 chrM 6490 0 0 0 0 0 0 0 16-3584 chrM 6491 0 0 0 0 0 0 0 16-3584 chrM 6492 0 0 0 0 0 0 0 16-3584 chrM 6493 0 0 0 0 0 0 0 16-3584 chrM 6494 0 0 0 0 0 0 0 16-3584 chrM 6495 0 0 0 0 0 0 0 16-3584 chrM 6496 0 0 0 0 0 0 0 16-3584 chrM 6497 0 0 0 0 0 0 0 16-3584 chrM 6498 0 0 0 0 0 0 0 16-3584 chrM 6499 0 0 0 0 0 0 0 16-3584 chrM 6500 0 0 0 0 0 0 0 16-3584 chrM 6501 0 0 0 0 0 0 0 16-3584 chrM 6502 0 0 0 0 0 0 0 16-3584 chrM 6503 0 0 0 0 0 0 0 16-3584 chrM 6504 0 0 0 0 0 0 0 16-3584 chrM 6505 0 0 0 0 0 0 0 16-3584 chrM 6506 0 0 0 0 0 0 0 16-3584 chrM 6507 0 0 0 0 0 0 0 16-3584 chrM 6508 0 0 0 0 0 0 0 16-3584 chrM 6509 0 0 0 0 0 0 0 16-3584 chrM 6510 0 0 0 0 0 0 0 16-3584 chrM 6511 0 0 0 0 0 0 0 16-3584 chrM 6512 0 0 0 0 0 0 0 16-3584 chrM 6513 0 0 0 0 0 0 0 16-3584 chrM 6514 0 0 0 0 0 0 0 16-3584 chrM 6515 0 0 0 0 0 0 0 16-3584 chrM 6516 0 0 0 0 0 0 0 16-3584 chrM 6517 0 0 0 0 0 0 0 16-3584 chrM 6518 0 0 0 0 0 0 0 16-3584 chrM 6519 0 0 0 0 0 0 0 16-3584 chrM 6520 0 0 0 0 0 0 0 16-3584 chrM 6521 0 0 0 0 0 0 0 16-3584 chrM 6522 0 0 0 0 0 0 0 16-3584 chrM 6523 0 0 0 0 0 0 0 16-3584 chrM 6524 0 0 0 0 0 0 0 16-3584 chrM 6525 0 0 0 0 0 0 0 16-3584 chrM 6526 0 0 0 0 0 0 0 16-3584 chrM 6527 0 0 0 0 0 0 0 16-3584 chrM 6528 0 0 0 0 0 0 0 16-3584 chrM 6529 0 0 0 0 0 0 0 16-3584 chrM 6530 0 0 0 0 0 0 0 16-3584 chrM 6531 0 0 0 0 0 0 0 16-3584 chrM 6532 0 0 0 0 0 0 0 16-3584 chrM 6533 0 0 0 0 0 0 0 16-3584 chrM 6534 0 0 0 0 0 0 0 16-3584 chrM 6535 0 0 0 0 0 0 0 16-3584 chrM 6536 0 0 0 0 0 0 0 16-3584 chrM 6537 0 0 0 0 0 0 0 16-3584 chrM 6538 0 0 0 0 0 0 0 16-3584 chrM 6539 0 0 0 0 0 0 0 16-3584 chrM 6540 0 0 0 0 0 0 0 16-3584 chrM 6541 0 0 0 0 0 0 0 16-3584 chrM 6542 0 0 0 0 0 0 0 16-3584 chrM 6543 0 0 0 0 0 0 0 16-3584 chrM 6544 0 0 0 0 0 0 0 16-3584 chrM 6545 0 0 0 0 0 0 0 16-3584 chrM 6546 0 0 0 0 0 0 0 16-3584 chrM 6547 0 0 0 0 0 0 0 16-3584 chrM 6548 0 0 0 0 0 0 0 16-3584 chrM 6549 0 0 0 0 0 0 0 16-3584 chrM 6550 0 0 0 0 0 0 0 16-3584 chrM 6551 0 0 0 0 0 0 0 16-3584 chrM 6552 0 0 0 0 0 0 0 16-3584 chrM 6553 0 0 0 0 0 0 0 16-3584 chrM 6554 0 0 0 0 0 0 0 16-3584 chrM 6555 0 0 0 0 0 0 0 16-3584 chrM 6556 0 0 0 0 0 0 0 16-3584 chrM 6557 0 0 0 0 0 0 0 16-3584 chrM 6558 0 0 0 0 0 0 0 16-3584 chrM 6559 0 0 0 0 0 0 0 16-3584 chrM 6560 0 0 0 0 0 0 0 16-3584 chrM 6561 0 0 0 0 0 0 0 16-3584 chrM 6562 0 0 0 0 0 0 0 16-3584 chrM 6563 0 0 0 0 0 0 0 16-3584 chrM 6564 0 0 0 0 0 0 0 16-3584 chrM 6565 0 0 0 0 0 0 0 16-3584 chrM 6566 0 0 0 0 0 0 0 16-3584 chrM 6567 0 0 0 0 0 0 0 16-3584 chrM 6568 0 0 0 0 0 0 0 16-3584 chrM 6569 0 0 0 0 0 0 0 16-3584 chrM 6570 0 0 0 0 0 0 0 16-3584 chrM 6571 0 0 0 0 0 0 0 16-3584 chrM 6572 0 0 0 0 0 0 0 16-3584 chrM 6573 0 0 0 0 0 0 0 16-3584 chrM 6574 0 0 0 0 0 0 0 16-3584 chrM 6575 0 0 0 0 0 0 0 16-3584 chrM 6576 0 0 0 0 0 0 0 16-3584 chrM 6577 0 0 0 0 0 0 0 16-3584 chrM 6578 0 0 0 0 0 0 0 16-3584 chrM 6579 0 0 0 0 0 0 0 16-3584 chrM 6580 0 0 0 0 0 0 0 16-3584 chrM 6581 0 0 0 0 0 0 0 16-3584 chrM 6582 0 0 0 0 0 0 0 16-3584 chrM 6583 0 0 0 0 0 0 0 16-3584 chrM 6584 0 0 0 0 0 0 0 16-3584 chrM 6585 0 0 0 0 0 0 0 16-3584 chrM 6586 0 0 0 0 0 0 0 16-3584 chrM 6587 0 0 0 0 0 0 0 16-3584 chrM 6588 0 0 0 0 0 0 0 16-3584 chrM 6589 0 0 0 0 0 0 0 16-3584 chrM 6590 0 0 0 0 0 0 0 16-3584 chrM 6591 0 0 0 0 0 0 0 16-3584 chrM 6592 0 0 0 0 0 0 0 16-3584 chrM 6593 0 0 0 0 0 0 0 16-3584 chrM 6594 0 0 0 0 0 0 0 16-3584 chrM 6595 0 0 0 0 0 0 0 16-3584 chrM 6596 0 0 0 0 0 0 0 16-3584 chrM 6597 0 0 0 0 0 0 0 16-3584 chrM 6598 0 0 0 0 0 0 0 16-3584 chrM 6599 0 0 0 0 0 0 0 16-3584 chrM 6600 0 0 0 0 0 0 0 16-3584 chrM 6601 0 0 0 0 0 0 0 16-3584 chrM 6602 0 0 0 0 0 0 0 16-3584 chrM 6603 0 0 0 0 0 0 0 16-3584 chrM 6604 0 0 0 0 0 0 0 16-3584 chrM 6605 0 0 0 0 0 0 0 16-3584 chrM 6606 0 0 0 0 0 0 0 16-3584 chrM 6607 0 0 0 0 0 0 0 16-3584 chrM 6608 0 0 0 0 0 0 0 16-3584 chrM 6609 0 0 0 0 0 0 0 16-3584 chrM 6610 0 0 0 0 0 0 0 16-3584 chrM 6611 0 0 0 0 0 0 0 16-3584 chrM 6612 0 0 0 0 0 0 0 16-3584 chrM 6613 0 0 0 0 0 0 0 16-3584 chrM 6614 0 0 0 0 0 0 0 16-3584 chrM 6615 0 0 0 0 0 0 0 16-3584 chrM 6616 0 0 0 0 0 0 0 16-3584 chrM 6617 0 0 0 0 0 0 0 16-3584 chrM 6618 0 0 0 0 0 0 0 16-3584 chrM 6619 0 0 0 0 0 0 0 16-3584 chrM 6620 0 0 0 0 0 0 0 16-3584 chrM 6621 0 0 0 0 0 0 0 16-3584 chrM 6622 0 0 0 0 0 0 0 16-3584 chrM 6623 0 0 0 0 0 0 0 16-3584 chrM 6624 0 0 0 0 0 0 0 16-3584 chrM 6625 0 0 0 0 0 0 0 16-3584 chrM 6626 0 0 0 0 0 0 0 16-3584 chrM 6627 0 0 0 0 0 0 0 16-3584 chrM 6628 0 0 0 0 0 0 0 16-3584 chrM 6629 0 0 0 0 0 0 0 16-3584 chrM 6630 0 0 0 0 0 0 0 16-3584 chrM 6631 0 0 0 0 0 0 0 16-3584 chrM 6632 0 0 0 0 0 0 0 16-3584 chrM 6633 0 0 0 0 0 0 0 16-3584 chrM 6634 0 0 0 0 0 0 0 16-3584 chrM 6635 0 0 0 0 0 0 0 16-3584 chrM 6636 0 0 0 0 0 0 0 16-3584 chrM 6637 0 0 0 0 0 0 0 16-3584 chrM 6638 0 0 0 0 0 0 0 16-3584 chrM 6639 0 0 0 0 0 0 0 16-3584 chrM 6640 0 0 0 0 0 0 0 16-3584 chrM 6641 0 0 0 0 0 0 0 16-3584 chrM 6642 0 0 0 0 0 0 0 16-3584 chrM 6643 0 0 0 0 0 0 0 16-3584 chrM 6644 0 0 0 0 0 0 0 16-3584 chrM 6645 0 0 0 0 0 0 0 16-3584 chrM 6646 0 0 0 0 0 0 0 16-3584 chrM 6647 0 0 0 0 0 0 0 16-3584 chrM 6648 0 0 0 0 0 0 0 16-3584 chrM 6649 0 0 0 0 0 0 0 16-3584 chrM 6650 0 0 0 0 0 0 0 16-3584 chrM 6651 0 0 0 0 0 0 0 16-3584 chrM 6652 0 0 0 0 0 0 0 16-3584 chrM 6653 0 0 0 0 0 0 0 16-3584 chrM 6654 0 0 0 0 0 0 0 16-3584 chrM 6655 0 0 0 0 0 0 0 16-3584 chrM 6656 0 0 0 0 0 0 0 16-3584 chrM 6657 0 0 0 0 0 0 0 16-3584 chrM 6658 0 0 0 0 0 0 0 16-3584 chrM 6659 0 0 0 0 0 0 0 16-3584 chrM 6660 0 0 0 0 0 0 0 16-3584 chrM 6661 0 0 0 0 0 0 0 16-3584 chrM 6662 0 0 0 0 0 0 0 16-3584 chrM 6663 0 0 0 0 0 0 0 16-3584 chrM 6664 0 0 0 0 0 0 0 16-3584 chrM 6665 0 0 0 0 0 0 0 16-3584 chrM 6666 0 0 0 0 0 0 0 16-3584 chrM 6667 0 0 0 0 0 0 0 16-3584 chrM 6668 0 0 0 0 0 0 0 16-3584 chrM 6669 0 0 0 0 0 0 0 16-3584 chrM 6670 0 0 0 0 0 0 0 16-3584 chrM 6671 0 0 0 0 0 0 0 16-3584 chrM 6672 0 0 0 0 0 0 0 16-3584 chrM 6673 0 0 0 0 0 0 0 16-3584 chrM 6674 0 0 0 0 0 0 0 16-3584 chrM 6675 0 0 0 0 0 0 0 16-3584 chrM 6676 0 0 0 0 0 0 0 16-3584 chrM 6677 0 0 0 0 0 0 0 16-3584 chrM 6678 0 0 0 0 0 0 0 16-3584 chrM 6679 0 0 0 0 0 0 0 16-3584 chrM 6680 0 0 0 0 0 0 0 16-3584 chrM 6681 0 0 0 0 0 0 0 16-3584 chrM 6682 0 0 0 0 0 0 0 16-3584 chrM 6683 0 0 0 0 0 0 0 16-3584 chrM 6684 0 0 0 0 0 0 0 16-3584 chrM 6685 0 0 0 0 0 0 0 16-3584 chrM 6686 0 0 0 0 0 0 0 16-3584 chrM 6687 0 0 0 0 0 0 0 16-3584 chrM 6688 0 0 0 0 0 0 0 16-3584 chrM 6689 0 0 0 0 0 0 0 16-3584 chrM 6690 0 0 0 0 0 0 0 16-3584 chrM 6691 0 0 0 0 0 0 0 16-3584 chrM 6692 0 0 0 0 0 0 0 16-3584 chrM 6693 0 0 0 0 0 0 0 16-3584 chrM 6694 0 0 0 0 0 0 0 16-3584 chrM 6695 0 0 0 0 0 0 0 16-3584 chrM 6696 0 0 0 0 0 0 0 16-3584 chrM 6697 0 0 0 0 0 0 0 16-3584 chrM 6698 0 0 0 0 0 0 0 16-3584 chrM 6699 0 0 0 0 0 0 0 16-3584 chrM 6700 0 0 0 0 0 0 0 16-3584 chrM 6701 0 0 0 0 0 0 0 16-3584 chrM 6702 0 0 0 0 0 0 0 16-3584 chrM 6703 0 0 0 0 0 0 0 16-3584 chrM 6704 0 0 0 0 0 0 0 16-3584 chrM 6705 0 0 0 0 0 0 0 16-3584 chrM 6706 0 0 0 0 0 0 0 16-3584 chrM 6707 0 0 0 0 0 0 0 16-3584 chrM 6708 0 0 0 0 0 0 0 16-3584 chrM 6709 0 0 0 0 0 0 0 16-3584 chrM 6710 0 0 0 0 0 0 0 16-3584 chrM 6711 0 0 0 0 0 0 0 16-3584 chrM 6712 0 0 0 0 0 0 0 16-3584 chrM 6713 0 0 0 0 0 0 0 16-3584 chrM 6714 0 0 0 0 0 0 0 16-3584 chrM 6715 0 0 0 0 0 0 0 16-3584 chrM 6716 0 0 0 0 0 0 0 16-3584 chrM 6717 0 0 0 0 0 0 0 16-3584 chrM 6718 0 0 0 0 0 0 0 16-3584 chrM 6719 0 0 0 0 0 0 0 16-3584 chrM 6720 0 0 0 0 0 0 0 16-3584 chrM 6721 0 0 0 0 0 0 0 16-3584 chrM 6722 0 0 0 0 0 0 0 16-3584 chrM 6723 0 0 0 0 0 0 0 16-3584 chrM 6724 0 0 0 0 0 0 0 16-3584 chrM 6725 0 0 0 0 0 0 0 16-3584 chrM 6726 0 0 0 0 0 0 0 16-3584 chrM 6727 0 0 0 0 0 0 0 16-3584 chrM 6728 0 0 0 0 0 0 0 16-3584 chrM 6729 0 0 0 0 0 0 0 16-3584 chrM 6730 0 0 0 0 0 0 0 16-3584 chrM 6731 0 0 0 0 0 0 0 16-3584 chrM 6732 0 0 0 0 0 0 0 16-3584 chrM 6733 0 0 0 0 0 0 0 16-3584 chrM 6734 0 0 0 0 0 0 0 16-3584 chrM 6735 0 0 0 0 0 0 0 16-3584 chrM 6736 0 0 0 0 0 0 0 16-3584 chrM 6737 0 0 0 0 0 0 0 16-3584 chrM 6738 0 0 0 0 0 0 0 16-3584 chrM 6739 0 0 0 0 0 0 0 16-3584 chrM 6740 0 0 0 0 0 0 0 16-3584 chrM 6741 0 0 0 0 0 0 0 16-3584 chrM 6742 0 0 0 0 0 0 0 16-3584 chrM 6743 0 0 0 0 0 0 0 16-3584 chrM 6744 0 0 0 0 0 0 0 16-3584 chrM 6745 0 0 0 0 0 0 0 16-3584 chrM 6746 0 0 0 0 0 0 0 16-3584 chrM 6747 0 0 0 0 0 0 0 16-3584 chrM 6748 0 0 0 0 0 0 0 16-3584 chrM 6749 0 0 0 0 0 0 0 16-3584 chrM 6750 0 0 0 0 0 0 0 16-3584 chrM 6751 0 0 0 0 0 0 0 16-3584 chrM 6752 0 0 0 0 0 0 0 16-3584 chrM 6753 0 0 0 0 0 0 0 16-3584 chrM 6754 0 0 0 0 0 0 0 16-3584 chrM 6755 0 0 0 0 0 0 0 16-3584 chrM 6756 0 0 0 0 0 0 0 16-3584 chrM 6757 0 0 0 0 0 0 0 16-3584 chrM 6758 0 0 0 0 0 0 0 16-3584 chrM 6759 0 0 0 0 0 0 0 16-3584 chrM 6760 0 0 0 0 0 0 0 16-3584 chrM 6761 0 0 0 0 0 0 0 16-3584 chrM 6762 0 0 0 0 0 0 0 16-3584 chrM 6763 0 0 0 0 0 0 0 16-3584 chrM 6764 0 0 0 0 0 0 0 16-3584 chrM 6765 0 0 0 0 0 0 0 16-3584 chrM 6766 0 0 0 0 0 0 0 16-3584 chrM 6767 0 0 0 0 0 0 0 16-3584 chrM 6768 0 0 0 0 0 0 0 16-3584 chrM 6769 0 0 0 0 0 0 0 16-3584 chrM 6770 0 0 0 0 0 0 0 16-3584 chrM 6771 0 0 0 0 0 0 0 16-3584 chrM 6772 0 0 0 0 0 0 0 16-3584 chrM 6773 0 0 0 0 0 0 0 16-3584 chrM 6774 0 0 0 0 0 0 0 16-3584 chrM 6775 0 0 0 0 0 0 0 16-3584 chrM 6776 0 0 0 0 0 0 0 16-3584 chrM 6777 0 0 0 0 0 0 0 16-3584 chrM 6778 0 0 0 0 0 0 0 16-3584 chrM 6779 0 0 0 0 0 0 0 16-3584 chrM 6780 0 0 0 0 0 0 0 16-3584 chrM 6781 0 0 0 0 0 0 0 16-3584 chrM 6782 0 0 0 0 0 0 0 16-3584 chrM 6783 0 0 0 0 0 0 0 16-3584 chrM 6784 0 0 0 0 0 0 0 16-3584 chrM 6785 0 0 0 0 0 0 0 16-3584 chrM 6786 0 0 0 0 0 0 0 16-3584 chrM 6787 0 0 0 0 0 0 0 16-3584 chrM 6788 0 0 0 0 0 0 0 16-3584 chrM 6789 0 0 0 0 0 0 0 16-3584 chrM 6790 0 0 0 0 0 0 0 16-3584 chrM 6791 0 0 0 0 0 0 0 16-3584 chrM 6792 0 0 0 0 0 0 0 16-3584 chrM 6793 0 0 0 0 0 0 0 16-3584 chrM 6794 0 0 0 0 0 0 0 16-3584 chrM 6795 0 0 0 0 0 0 0 16-3584 chrM 6796 0 0 0 0 0 0 0 16-3584 chrM 6797 0 0 0 0 0 0 0 16-3584 chrM 6798 0 0 0 0 0 0 0 16-3584 chrM 6799 0 0 0 0 0 0 0 16-3584 chrM 6800 0 0 0 0 0 0 0 16-3584 chrM 6801 0 0 0 0 0 0 0 16-3584 chrM 6802 0 0 0 0 0 0 0 16-3584 chrM 6803 0 0 0 0 0 0 0 16-3584 chrM 6804 0 0 0 0 0 0 0 16-3584 chrM 6805 0 0 0 0 0 0 0 16-3584 chrM 6806 0 0 0 0 0 0 0 16-3584 chrM 6807 0 0 0 0 0 0 0 16-3584 chrM 6808 0 0 0 0 0 0 0 16-3584 chrM 6809 0 0 0 0 0 0 0 16-3584 chrM 6810 0 0 0 0 0 0 0 16-3584 chrM 6811 0 0 0 0 0 0 0 16-3584 chrM 6812 0 0 0 0 0 0 0 16-3584 chrM 6813 0 0 0 0 0 0 0 16-3584 chrM 6814 0 0 0 0 0 0 0 16-3584 chrM 6815 0 0 0 0 0 0 0 16-3584 chrM 6816 0 0 0 0 0 0 0 16-3584 chrM 6817 0 0 0 0 0 0 0 16-3584 chrM 6818 0 0 0 0 0 0 0 16-3584 chrM 6819 0 0 0 0 0 0 0 16-3584 chrM 6820 0 0 0 0 0 0 0 16-3584 chrM 6821 0 0 0 0 0 0 0 16-3584 chrM 6822 0 0 0 0 0 0 0 16-3584 chrM 6823 0 0 0 0 0 0 0 16-3584 chrM 6824 0 0 0 0 0 0 0 16-3584 chrM 6825 0 0 0 0 0 0 0 16-3584 chrM 6826 0 0 0 0 0 0 0 16-3584 chrM 6827 0 0 0 0 0 0 0 16-3584 chrM 6828 0 0 0 0 0 0 0 16-3584 chrM 6829 0 0 0 0 0 0 0 16-3584 chrM 6830 0 0 0 0 0 0 0 16-3584 chrM 6831 0 0 0 0 0 0 0 16-3584 chrM 6832 0 0 0 0 0 0 0 16-3584 chrM 6833 0 0 0 0 0 0 0 16-3584 chrM 6834 0 0 0 0 0 0 0 16-3584 chrM 6835 0 0 0 0 0 0 0 16-3584 chrM 6836 0 0 0 0 0 0 0 16-3584 chrM 6837 0 0 0 0 0 0 0 16-3584 chrM 6838 0 0 0 0 0 0 0 16-3584 chrM 6839 0 0 0 0 0 0 0 16-3584 chrM 6840 0 0 0 0 0 0 0 16-3584 chrM 6841 0 0 0 0 0 0 0 16-3584 chrM 6842 0 0 0 0 0 0 0 16-3584 chrM 6843 0 0 0 0 0 0 0 16-3584 chrM 6844 0 0 0 0 0 0 0 16-3584 chrM 6845 0 0 0 0 0 0 0 16-3584 chrM 6846 0 0 0 0 0 0 0 16-3584 chrM 6847 0 0 0 0 0 0 0 16-3584 chrM 6848 0 0 0 0 0 0 0 16-3584 chrM 6849 0 0 0 0 0 0 0 16-3584 chrM 6850 0 0 0 0 0 0 0 16-3584 chrM 6851 0 0 0 0 0 0 0 16-3584 chrM 6852 0 0 0 0 0 0 0 16-3584 chrM 6853 0 0 0 0 0 0 0 16-3584 chrM 6854 0 0 0 0 0 0 0 16-3584 chrM 6855 0 0 0 0 0 0 0 16-3584 chrM 6856 0 0 0 0 0 0 0 16-3584 chrM 6857 0 0 0 0 0 0 0 16-3584 chrM 6858 0 0 0 0 0 0 0 16-3584 chrM 6859 0 0 0 0 0 0 0 16-3584 chrM 6860 0 0 0 0 0 0 0 16-3584 chrM 6861 0 0 0 0 0 0 0 16-3584 chrM 6862 0 0 0 0 0 0 0 16-3584 chrM 6863 0 0 0 0 0 0 0 16-3584 chrM 6864 0 0 0 0 0 0 0 16-3584 chrM 6865 0 0 0 0 0 0 0 16-3584 chrM 6866 0 0 0 0 0 0 0 16-3584 chrM 6867 0 0 0 0 0 0 0 16-3584 chrM 6868 0 0 0 0 0 0 0 16-3584 chrM 6869 0 0 0 0 0 0 0 16-3584 chrM 6870 0 0 0 0 0 0 0 16-3584 chrM 6871 0 0 0 0 0 0 0 16-3584 chrM 6872 0 0 0 0 0 0 0 16-3584 chrM 6873 0 0 0 0 0 0 0 16-3584 chrM 6874 0 0 0 0 0 0 0 16-3584 chrM 6875 0 0 0 0 0 0 0 16-3584 chrM 6876 0 0 0 0 0 0 0 16-3584 chrM 6877 0 0 0 0 0 0 0 16-3584 chrM 6878 0 0 0 0 0 0 0 16-3584 chrM 6879 0 0 0 0 0 0 0 16-3584 chrM 6880 0 0 0 0 0 0 0 16-3584 chrM 6881 0 0 0 0 0 0 0 16-3584 chrM 6882 0 0 0 0 0 0 0 16-3584 chrM 6883 0 0 0 0 0 0 0 16-3584 chrM 6884 0 0 0 0 0 0 0 16-3584 chrM 6885 0 0 0 0 0 0 0 16-3584 chrM 6886 0 0 0 0 0 0 0 16-3584 chrM 6887 0 0 0 0 0 0 0 16-3584 chrM 6888 0 0 0 0 0 0 0 16-3584 chrM 6889 0 0 0 0 0 0 0 16-3584 chrM 6890 0 0 0 0 0 0 0 16-3584 chrM 6891 0 0 0 0 0 0 0 16-3584 chrM 6892 0 0 0 0 0 0 0 16-3584 chrM 6893 0 0 0 0 0 0 0 16-3584 chrM 6894 0 0 0 0 0 0 0 16-3584 chrM 6895 0 0 0 0 0 0 0 16-3584 chrM 6896 0 0 0 0 0 0 0 16-3584 chrM 6897 0 0 0 0 0 0 0 16-3584 chrM 6898 0 0 0 0 0 0 0 16-3584 chrM 6899 0 0 0 0 0 0 0 16-3584 chrM 6900 0 0 0 0 0 0 0 16-3584 chrM 6901 0 0 0 0 0 0 0 16-3584 chrM 6902 0 0 0 0 0 0 0 16-3584 chrM 6903 0 0 0 0 0 0 0 16-3584 chrM 6904 0 0 0 0 0 0 0 16-3584 chrM 6905 0 0 0 0 0 0 0 16-3584 chrM 6906 0 0 0 0 0 0 0 16-3584 chrM 6907 0 0 0 0 0 0 0 16-3584 chrM 6908 0 0 0 0 0 0 0 16-3584 chrM 6909 0 0 0 0 0 0 0 16-3584 chrM 6910 0 0 0 0 0 0 0 16-3584 chrM 6911 0 0 0 0 0 0 0 16-3584 chrM 6912 0 0 0 0 0 0 0 16-3584 chrM 6913 0 0 0 0 0 0 0 16-3584 chrM 6914 0 0 0 0 0 0 0 16-3584 chrM 6915 0 0 0 0 0 0 0 16-3584 chrM 6916 0 0 0 0 0 0 0 16-3584 chrM 6917 0 0 0 0 0 0 0 16-3584 chrM 6918 0 0 0 0 0 0 0 16-3584 chrM 6919 0 0 0 0 0 0 0 16-3584 chrM 6920 0 0 0 0 0 0 0 16-3584 chrM 6921 0 0 0 0 0 0 0 16-3584 chrM 6922 0 0 0 0 0 0 0 16-3584 chrM 6923 0 0 0 0 0 0 0 16-3584 chrM 6924 0 0 0 0 0 0 0 16-3584 chrM 6925 0 0 0 0 0 0 0 16-3584 chrM 6926 0 0 0 0 0 0 0 16-3584 chrM 6927 0 0 0 0 0 0 0 16-3584 chrM 6928 0 0 0 0 0 0 0 16-3584 chrM 6929 0 0 0 0 0 0 0 16-3584 chrM 6930 0 0 0 0 0 0 0 16-3584 chrM 6931 0 0 0 0 0 0 0 16-3584 chrM 6932 0 0 0 0 0 0 0 16-3584 chrM 6933 0 0 0 0 0 0 0 16-3584 chrM 6934 0 0 0 0 0 0 0 16-3584 chrM 6935 0 0 0 0 0 0 0 16-3584 chrM 6936 0 0 0 0 0 0 0 16-3584 chrM 6937 0 0 0 0 0 0 0 16-3584 chrM 6938 0 0 0 0 0 0 0 16-3584 chrM 6939 0 0 0 0 0 0 0 16-3584 chrM 6940 0 0 0 0 0 0 0 16-3584 chrM 6941 0 0 0 0 0 0 0 16-3584 chrM 6942 0 0 0 0 0 0 0 16-3584 chrM 6943 0 0 0 0 0 0 0 16-3584 chrM 6944 0 0 0 0 0 0 0 16-3584 chrM 6945 0 0 0 0 0 0 0 16-3584 chrM 6946 0 0 0 0 0 0 0 16-3584 chrM 6947 0 0 0 0 0 0 0 16-3584 chrM 6948 0 0 0 0 0 0 0 16-3584 chrM 6949 0 0 0 0 0 0 0 16-3584 chrM 6950 0 0 0 0 0 0 0 16-3584 chrM 6951 0 0 0 0 0 0 0 16-3584 chrM 6952 0 0 0 0 0 0 0 16-3584 chrM 6953 0 0 0 0 0 0 0 16-3584 chrM 6954 0 0 0 0 0 0 0 16-3584 chrM 6955 0 0 0 0 0 0 0 16-3584 chrM 6956 0 0 0 0 0 0 0 16-3584 chrM 6957 0 0 0 0 0 0 0 16-3584 chrM 6958 0 0 0 0 0 0 0 16-3584 chrM 6959 0 0 0 0 0 0 0 16-3584 chrM 6960 0 0 0 0 0 0 0 16-3584 chrM 6961 0 0 0 0 0 0 0 16-3584 chrM 6962 0 0 0 0 0 0 0 16-3584 chrM 6963 0 0 0 0 0 0 0 16-3584 chrM 6964 0 0 0 0 0 0 0 16-3584 chrM 6965 0 0 0 0 0 0 0 16-3584 chrM 6966 0 0 0 0 0 0 0 16-3584 chrM 6967 0 0 0 0 0 0 0 16-3584 chrM 6968 0 0 0 0 0 0 0 16-3584 chrM 6969 0 0 0 0 0 0 0 16-3584 chrM 6970 0 0 0 0 0 0 0 16-3584 chrM 6971 0 0 0 0 0 0 0 16-3584 chrM 6972 0 0 0 0 0 0 0 16-3584 chrM 6973 0 0 0 0 0 0 0 16-3584 chrM 6974 0 0 0 0 0 0 0 16-3584 chrM 6975 0 0 0 0 0 0 0 16-3584 chrM 6976 0 0 0 0 0 0 0 16-3584 chrM 6977 0 0 0 0 0 0 0 16-3584 chrM 6978 0 0 0 0 0 0 0 16-3584 chrM 6979 0 0 0 0 0 0 0 16-3584 chrM 6980 0 0 0 0 0 0 0 16-3584 chrM 6981 0 0 0 0 0 0 0 16-3584 chrM 6982 0 0 0 0 0 0 0 16-3584 chrM 6983 0 0 0 0 0 0 0 16-3584 chrM 6984 0 0 0 0 0 0 0 16-3584 chrM 6985 0 0 0 0 0 0 0 16-3584 chrM 6986 0 0 0 0 0 0 0 16-3584 chrM 6987 0 0 0 0 0 0 0 16-3584 chrM 6988 0 0 0 0 0 0 0 16-3584 chrM 6989 0 0 0 0 0 0 0 16-3584 chrM 6990 0 0 0 0 0 0 0 16-3584 chrM 6991 0 0 0 0 0 0 0 16-3584 chrM 6992 0 0 0 0 0 0 0 16-3584 chrM 6993 0 0 0 0 0 0 0 16-3584 chrM 6994 0 0 0 0 0 0 0 16-3584 chrM 6995 0 0 0 0 0 0 0 16-3584 chrM 6996 0 0 0 0 0 0 0 16-3584 chrM 6997 0 0 0 0 0 0 0 16-3584 chrM 6998 0 0 0 0 0 0 0 16-3584 chrM 6999 0 0 0 0 0 0 0 16-3584 chrM 7000 0 0 0 0 0 0 0 16-3584 chrM 7001 0 0 0 0 0 0 0 16-3584 chrM 7002 0 0 0 0 0 0 0 16-3584 chrM 7003 0 0 0 0 0 0 0 16-3584 chrM 7004 0 0 0 0 0 0 0 16-3584 chrM 7005 0 0 0 0 0 0 0 16-3584 chrM 7006 0 0 0 0 0 0 0 16-3584 chrM 7007 0 0 0 0 0 0 0 16-3584 chrM 7008 0 0 0 0 0 0 0 16-3584 chrM 7009 0 0 0 0 0 0 0 16-3584 chrM 7010 0 0 0 0 0 0 0 16-3584 chrM 7011 0 0 0 0 0 0 0 16-3584 chrM 7012 0 0 0 0 0 0 0 16-3584 chrM 7013 0 0 0 0 0 0 0 16-3584 chrM 7014 0 0 0 0 0 0 0 16-3584 chrM 7015 0 0 0 0 0 0 0 16-3584 chrM 7016 0 0 0 0 0 0 0 16-3584 chrM 7017 0 0 0 0 0 0 0 16-3584 chrM 7018 0 0 0 0 0 0 0 16-3584 chrM 7019 0 0 0 0 0 0 0 16-3584 chrM 7020 0 0 0 0 0 0 0 16-3584 chrM 7021 0 0 0 0 0 0 0 16-3584 chrM 7022 0 0 0 0 0 0 0 16-3584 chrM 7023 0 0 0 0 0 0 0 16-3584 chrM 7024 0 0 0 0 0 0 0 16-3584 chrM 7025 0 0 0 0 0 0 0 16-3584 chrM 7026 0 0 0 0 0 0 0 16-3584 chrM 7027 0 0 0 0 0 0 0 16-3584 chrM 7028 0 0 0 0 0 0 0 16-3584 chrM 7029 0 0 0 0 0 0 0 16-3584 chrM 7030 0 0 0 0 0 0 0 16-3584 chrM 7031 0 0 0 0 0 0 0 16-3584 chrM 7032 0 0 0 0 0 0 0 16-3584 chrM 7033 0 0 0 0 0 0 0 16-3584 chrM 7034 0 0 0 0 0 0 0 16-3584 chrM 7035 0 0 0 0 0 0 0 16-3584 chrM 7036 0 0 0 0 0 0 0 16-3584 chrM 7037 0 0 0 0 0 0 0 16-3584 chrM 7038 0 0 0 0 0 0 0 16-3584 chrM 7039 0 0 0 0 0 0 0 16-3584 chrM 7040 0 0 0 0 0 0 0 16-3584 chrM 7041 0 0 0 0 0 0 0 16-3584 chrM 7042 0 0 0 0 0 0 0 16-3584 chrM 7043 0 0 0 0 0 0 0 16-3584 chrM 7044 0 0 0 0 0 0 0 16-3584 chrM 7045 0 0 0 0 0 0 0 16-3584 chrM 7046 0 0 0 0 0 0 0 16-3584 chrM 7047 0 0 0 0 0 0 0 16-3584 chrM 7048 0 0 0 0 0 0 0 16-3584 chrM 7049 0 0 0 0 0 0 0 16-3584 chrM 7050 0 0 0 0 0 0 0 16-3584 chrM 7051 0 0 0 0 0 0 0 16-3584 chrM 7052 0 0 0 0 0 0 0 16-3584 chrM 7053 0 0 0 0 0 0 0 16-3584 chrM 7054 0 0 0 0 0 0 0 16-3584 chrM 7055 0 0 0 0 0 0 0 16-3584 chrM 7056 0 0 0 0 0 0 0 16-3584 chrM 7057 0 0 0 0 0 0 0 16-3584 chrM 7058 0 0 0 0 0 0 0 16-3584 chrM 7059 0 0 0 0 0 0 0 16-3584 chrM 7060 0 0 0 0 0 0 0 16-3584 chrM 7061 0 0 0 0 0 0 0 16-3584 chrM 7062 0 0 0 0 0 0 0 16-3584 chrM 7063 0 0 0 0 0 0 0 16-3584 chrM 7064 0 0 0 0 0 0 0 16-3584 chrM 7065 0 0 0 0 0 0 0 16-3584 chrM 7066 0 0 0 0 0 0 0 16-3584 chrM 7067 0 0 0 0 0 0 0 16-3584 chrM 7068 0 0 0 0 0 0 0 16-3584 chrM 7069 0 0 0 0 0 0 0 16-3584 chrM 7070 0 0 0 0 0 0 0 16-3584 chrM 7071 0 0 0 0 0 0 0 16-3584 chrM 7072 0 0 0 0 0 0 0 16-3584 chrM 7073 0 0 0 0 0 0 0 16-3584 chrM 7074 0 0 0 0 0 0 0 16-3584 chrM 7075 0 0 0 0 0 0 0 16-3584 chrM 7076 0 0 0 0 0 0 0 16-3584 chrM 7077 0 0 0 0 0 0 0 16-3584 chrM 7078 0 0 0 0 0 0 0 16-3584 chrM 7079 0 0 0 0 0 0 0 16-3584 chrM 7080 0 0 0 0 0 0 0 16-3584 chrM 7081 0 0 0 0 0 0 0 16-3584 chrM 7082 0 0 0 0 0 0 0 16-3584 chrM 7083 0 0 0 0 0 0 0 16-3584 chrM 7084 0 0 0 0 0 0 0 16-3584 chrM 7085 0 0 0 0 0 0 0 16-3584 chrM 7086 0 0 0 0 0 0 0 16-3584 chrM 7087 0 0 0 0 0 0 0 16-3584 chrM 7088 0 0 0 0 0 0 0 16-3584 chrM 7089 0 0 0 0 0 0 0 16-3584 chrM 7090 0 0 0 0 0 0 0 16-3584 chrM 7091 0 0 0 0 0 0 0 16-3584 chrM 7092 0 0 0 0 0 0 0 16-3584 chrM 7093 0 0 0 0 0 0 0 16-3584 chrM 7094 0 0 0 0 0 0 0 16-3584 chrM 7095 0 0 0 0 0 0 0 16-3584 chrM 7096 0 0 0 0 0 0 0 16-3584 chrM 7097 0 0 0 0 0 0 0 16-3584 chrM 7098 0 0 0 0 0 0 0 16-3584 chrM 7099 0 0 0 0 0 0 0 16-3584 chrM 7100 0 0 0 0 0 0 0 16-3584 chrM 7101 0 0 0 0 0 0 0 16-3584 chrM 7102 0 0 0 0 0 0 0 16-3584 chrM 7103 0 0 0 0 0 0 0 16-3584 chrM 7104 0 0 0 0 0 0 0 16-3584 chrM 7105 0 0 0 0 0 0 0 16-3584 chrM 7106 0 0 0 0 0 0 0 16-3584 chrM 7107 0 0 0 0 0 0 0 16-3584 chrM 7108 0 0 0 0 0 0 0 16-3584 chrM 7109 0 0 0 0 0 0 0 16-3584 chrM 7110 0 0 0 0 0 0 0 16-3584 chrM 7111 0 0 0 0 0 0 0 16-3584 chrM 7112 0 0 0 0 0 0 0 16-3584 chrM 7113 0 0 0 0 0 0 0 16-3584 chrM 7114 0 0 0 0 0 0 0 16-3584 chrM 7115 0 0 0 0 0 0 0 16-3584 chrM 7116 0 0 0 0 0 0 0 16-3584 chrM 7117 0 0 0 0 0 0 0 16-3584 chrM 7118 0 0 0 0 0 0 0 16-3584 chrM 7119 0 0 0 0 0 0 0 16-3584 chrM 7120 0 0 0 0 0 0 0 16-3584 chrM 7121 0 0 0 0 0 0 0 16-3584 chrM 7122 0 0 0 0 0 0 0 16-3584 chrM 7123 0 0 0 0 0 0 0 16-3584 chrM 7124 0 0 0 0 0 0 0 16-3584 chrM 7125 0 0 0 0 0 0 0 16-3584 chrM 7126 0 0 0 0 0 0 0 16-3584 chrM 7127 0 0 0 0 0 0 0 16-3584 chrM 7128 0 0 0 0 0 0 0 16-3584 chrM 7129 0 0 0 0 0 0 0 16-3584 chrM 7130 0 0 0 0 0 0 0 16-3584 chrM 7131 0 0 0 0 0 0 0 16-3584 chrM 7132 0 0 0 0 0 0 0 16-3584 chrM 7133 0 0 0 0 0 0 0 16-3584 chrM 7134 0 0 0 0 0 0 0 16-3584 chrM 7135 0 0 0 0 0 0 0 16-3584 chrM 7136 0 0 0 0 0 0 0 16-3584 chrM 7137 0 0 0 0 0 0 0 16-3584 chrM 7138 0 0 0 0 0 0 0 16-3584 chrM 7139 0 0 0 0 0 0 0 16-3584 chrM 7140 0 0 0 0 0 0 0 16-3584 chrM 7141 0 0 0 0 0 0 0 16-3584 chrM 7142 0 0 0 0 0 0 0 16-3584 chrM 7143 0 0 0 0 0 0 0 16-3584 chrM 7144 0 0 0 0 0 0 0 16-3584 chrM 7145 0 0 0 0 0 0 0 16-3584 chrM 7146 0 0 0 0 0 0 0 16-3584 chrM 7147 0 0 0 0 0 0 0 16-3584 chrM 7148 0 0 0 0 0 0 0 16-3584 chrM 7149 0 0 0 0 0 0 0 16-3584 chrM 7150 0 0 0 0 0 0 0 16-3584 chrM 7151 0 0 0 0 0 0 0 16-3584 chrM 7152 0 0 0 0 0 0 0 16-3584 chrM 7153 0 0 0 0 0 0 0 16-3584 chrM 7154 0 0 0 0 0 0 0 16-3584 chrM 7155 0 0 0 0 0 0 0 16-3584 chrM 7156 0 0 0 0 0 0 0 16-3584 chrM 7157 0 0 0 0 0 0 0 16-3584 chrM 7158 0 0 0 0 0 0 0 16-3584 chrM 7159 0 0 0 0 0 0 0 16-3584 chrM 7160 0 0 0 0 0 0 0 16-3584 chrM 7161 0 0 0 0 0 0 0 16-3584 chrM 7162 0 0 0 0 0 0 0 16-3584 chrM 7163 0 0 0 0 0 0 0 16-3584 chrM 7164 0 0 0 0 0 0 0 16-3584 chrM 7165 0 0 0 0 0 0 0 16-3584 chrM 7166 0 0 0 0 0 0 0 16-3584 chrM 7167 0 0 0 0 0 0 0 16-3584 chrM 7168 0 0 0 0 0 0 0 16-3584 chrM 7169 0 0 0 0 0 0 0 16-3584 chrM 7170 0 0 0 0 0 0 0 16-3584 chrM 7171 0 0 0 0 0 0 0 16-3584 chrM 7172 0 0 0 0 0 0 0 16-3584 chrM 7173 0 0 0 0 0 0 0 16-3584 chrM 7174 0 0 0 0 0 0 0 16-3584 chrM 7175 0 0 0 0 0 0 0 16-3584 chrM 7176 0 0 0 0 0 0 0 16-3584 chrM 7177 0 0 0 0 0 0 0 16-3584 chrM 7178 0 0 0 0 0 0 0 16-3584 chrM 7179 0 0 0 0 0 0 0 16-3584 chrM 7180 0 0 0 0 0 0 0 16-3584 chrM 7181 0 0 0 0 0 0 0 16-3584 chrM 7182 0 0 0 0 0 0 0 16-3584 chrM 7183 0 0 0 0 0 0 0 16-3584 chrM 7184 0 0 0 0 0 0 0 16-3584 chrM 7185 0 0 0 0 0 0 0 16-3584 chrM 7186 0 0 0 0 0 0 0 16-3584 chrM 7187 0 0 0 0 0 0 0 16-3584 chrM 7188 0 0 0 0 0 0 0 16-3584 chrM 7189 0 0 0 0 0 0 0 16-3584 chrM 7190 0 0 0 0 0 0 0 16-3584 chrM 7191 0 0 0 0 0 0 0 16-3584 chrM 7192 0 0 0 0 0 0 0 16-3584 chrM 7193 0 0 0 0 0 0 0 16-3584 chrM 7194 0 0 0 0 0 0 0 16-3584 chrM 7195 0 0 0 0 0 0 0 16-3584 chrM 7196 0 0 0 0 0 0 0 16-3584 chrM 7197 0 0 0 0 0 0 0 16-3584 chrM 7198 0 0 0 0 0 0 0 16-3584 chrM 7199 0 0 0 0 0 0 0 16-3584 chrM 7200 0 0 0 0 0 0 0 16-3584 chrM 7201 0 0 0 0 0 0 0 16-3584 chrM 7202 0 0 0 0 0 0 0 16-3584 chrM 7203 0 0 0 0 0 0 0 16-3584 chrM 7204 0 0 0 0 0 0 0 16-3584 chrM 7205 0 0 0 0 0 0 0 16-3584 chrM 7206 0 0 0 0 0 0 0 16-3584 chrM 7207 0 0 0 0 0 0 0 16-3584 chrM 7208 0 0 0 0 0 0 0 16-3584 chrM 7209 0 0 0 0 0 0 0 16-3584 chrM 7210 0 0 0 0 0 0 0 16-3584 chrM 7211 0 0 0 0 0 0 0 16-3584 chrM 7212 0 0 0 0 0 0 0 16-3584 chrM 7213 0 0 0 0 0 0 0 16-3584 chrM 7214 0 0 0 0 0 0 0 16-3584 chrM 7215 0 0 0 0 0 0 0 16-3584 chrM 7216 0 0 0 0 0 0 0 16-3584 chrM 7217 0 0 0 0 0 0 0 16-3584 chrM 7218 0 0 0 0 0 0 0 16-3584 chrM 7219 0 0 0 0 0 0 0 16-3584 chrM 7220 0 0 0 0 0 0 0 16-3584 chrM 7221 0 0 0 0 0 0 0 16-3584 chrM 7222 0 0 0 0 0 0 0 16-3584 chrM 7223 0 0 0 0 0 0 0 16-3584 chrM 7224 0 0 0 0 0 0 0 16-3584 chrM 7225 0 0 0 0 0 0 0 16-3584 chrM 7226 0 0 0 0 0 0 0 16-3584 chrM 7227 0 0 0 0 0 0 0 16-3584 chrM 7228 0 0 0 0 0 0 0 16-3584 chrM 7229 0 0 0 0 0 0 0 16-3584 chrM 7230 0 0 0 0 0 0 0 16-3584 chrM 7231 0 0 0 0 0 0 0 16-3584 chrM 7232 0 0 0 0 0 0 0 16-3584 chrM 7233 0 0 0 0 0 0 0 16-3584 chrM 7234 0 0 0 0 0 0 0 16-3584 chrM 7235 0 0 0 0 0 0 0 16-3584 chrM 7236 0 0 0 0 0 0 0 16-3584 chrM 7237 0 0 0 0 0 0 0 16-3584 chrM 7238 0 0 0 0 0 0 0 16-3584 chrM 7239 0 0 0 0 0 0 0 16-3584 chrM 7240 0 0 0 0 0 0 0 16-3584 chrM 7241 0 0 0 0 0 0 0 16-3584 chrM 7242 0 0 0 0 0 0 0 16-3584 chrM 7243 0 0 0 0 0 0 0 16-3584 chrM 7244 0 0 0 0 0 0 0 16-3584 chrM 7245 0 0 0 0 0 0 0 16-3584 chrM 7246 0 0 0 0 0 0 0 16-3584 chrM 7247 0 0 0 0 0 0 0 16-3584 chrM 7248 0 0 0 0 0 0 0 16-3584 chrM 7249 0 0 0 0 0 0 0 16-3584 chrM 7250 0 0 0 0 0 0 0 16-3584 chrM 7251 0 0 0 0 0 0 0 16-3584 chrM 7252 0 0 0 0 0 0 0 16-3584 chrM 7253 0 0 0 0 0 0 0 16-3584 chrM 7254 0 0 0 0 0 0 0 16-3584 chrM 7255 0 0 0 0 0 0 0 16-3584 chrM 7256 0 0 0 0 0 0 0 16-3584 chrM 7257 0 0 0 0 0 0 0 16-3584 chrM 7258 0 0 0 0 0 0 0 16-3584 chrM 7259 0 0 0 0 0 0 0 16-3584 chrM 7260 0 0 0 0 0 0 0 16-3584 chrM 7261 0 0 0 0 0 0 0 16-3584 chrM 7262 0 0 0 0 0 0 0 16-3584 chrM 7263 0 0 0 0 0 0 0 16-3584 chrM 7264 0 0 0 0 0 0 0 16-3584 chrM 7265 0 0 0 0 0 0 0 16-3584 chrM 7266 0 0 0 0 0 0 0 16-3584 chrM 7267 0 0 0 0 0 0 0 16-3584 chrM 7268 0 0 0 0 0 0 0 16-3584 chrM 7269 0 0 0 0 0 0 0 16-3584 chrM 7270 0 0 0 0 0 0 0 16-3584 chrM 7271 0 0 0 0 0 0 0 16-3584 chrM 7272 0 0 0 0 0 0 0 16-3584 chrM 7273 0 0 0 0 0 0 0 16-3584 chrM 7274 0 0 0 0 0 0 0 16-3584 chrM 7275 0 0 0 0 0 0 0 16-3584 chrM 7276 0 0 0 0 0 0 0 16-3584 chrM 7277 0 0 0 0 0 0 0 16-3584 chrM 7278 0 0 0 0 0 0 0 16-3584 chrM 7279 0 0 0 0 0 0 0 16-3584 chrM 7280 0 0 0 0 0 0 0 16-3584 chrM 7281 0 0 0 0 0 0 0 16-3584 chrM 7282 0 0 0 0 0 0 0 16-3584 chrM 7283 0 0 0 0 0 0 0 16-3584 chrM 7284 0 0 0 0 0 0 0 16-3584 chrM 7285 0 0 0 0 0 0 0 16-3584 chrM 7286 0 0 0 0 0 0 0 16-3584 chrM 7287 0 0 0 0 0 0 0 16-3584 chrM 7288 0 0 0 0 0 0 0 16-3584 chrM 7289 0 0 0 0 0 0 0 16-3584 chrM 7290 0 0 0 0 0 0 0 16-3584 chrM 7291 0 0 0 0 0 0 0 16-3584 chrM 7292 0 0 0 0 0 0 0 16-3584 chrM 7293 0 0 0 0 0 0 0 16-3584 chrM 7294 0 0 0 0 0 0 0 16-3584 chrM 7295 0 0 0 0 0 0 0 16-3584 chrM 7296 0 0 0 0 0 0 0 16-3584 chrM 7297 0 0 0 0 0 0 0 16-3584 chrM 7298 0 0 0 0 0 0 0 16-3584 chrM 7299 0 0 0 0 0 0 0 16-3584 chrM 7300 0 0 0 0 0 0 0 16-3584 chrM 7301 0 0 0 0 0 0 0 16-3584 chrM 7302 0 0 0 0 0 0 0 16-3584 chrM 7303 0 0 0 0 0 0 0 16-3584 chrM 7304 0 0 0 0 0 0 0 16-3584 chrM 7305 0 0 0 0 0 0 0 16-3584 chrM 7306 0 0 0 0 0 0 0 16-3584 chrM 7307 0 0 0 0 0 0 0 16-3584 chrM 7308 0 0 0 0 0 0 0 16-3584 chrM 7309 0 0 0 0 0 0 0 16-3584 chrM 7310 0 0 0 0 0 0 0 16-3584 chrM 7311 0 0 0 0 0 0 0 16-3584 chrM 7312 0 0 0 0 0 0 0 16-3584 chrM 7313 0 0 0 0 0 0 0 16-3584 chrM 7314 0 0 0 0 0 0 0 16-3584 chrM 7315 0 0 0 0 0 0 0 16-3584 chrM 7316 0 0 0 0 0 0 0 16-3584 chrM 7317 0 0 0 0 0 0 0 16-3584 chrM 7318 0 0 0 0 0 0 0 16-3584 chrM 7319 0 0 0 0 0 0 0 16-3584 chrM 7320 0 0 0 0 0 0 0 16-3584 chrM 7321 0 0 0 0 0 0 0 16-3584 chrM 7322 0 0 0 0 0 0 0 16-3584 chrM 7323 0 0 0 0 0 0 0 16-3584 chrM 7324 0 0 0 0 0 0 0 16-3584 chrM 7325 0 0 0 0 0 0 0 16-3584 chrM 7326 0 0 0 0 0 0 0 16-3584 chrM 7327 0 0 0 0 0 0 0 16-3584 chrM 7328 0 0 0 0 0 0 0 16-3584 chrM 7329 0 0 0 0 0 0 0 16-3584 chrM 7330 0 0 0 0 0 0 0 16-3584 chrM 7331 0 0 0 0 0 0 0 16-3584 chrM 7332 0 0 0 0 0 0 0 16-3584 chrM 7333 0 0 0 0 0 0 0 16-3584 chrM 7334 0 0 0 0 0 0 0 16-3584 chrM 7335 0 0 0 0 0 0 0 16-3584 chrM 7336 0 0 0 0 0 0 0 16-3584 chrM 7337 0 0 0 0 0 0 0 16-3584 chrM 7338 0 0 0 0 0 0 0 16-3584 chrM 7339 0 0 0 0 0 0 0 16-3584 chrM 7340 0 0 0 0 0 0 0 16-3584 chrM 7341 0 0 0 0 0 0 0 16-3584 chrM 7342 0 0 0 0 0 0 0 16-3584 chrM 7343 0 0 0 0 0 0 0 16-3584 chrM 7344 0 0 0 0 0 0 0 16-3584 chrM 7345 0 0 0 0 0 0 0 16-3584 chrM 7346 0 0 0 0 0 0 0 16-3584 chrM 7347 0 0 0 0 0 0 0 16-3584 chrM 7348 0 0 0 0 0 0 0 16-3584 chrM 7349 0 0 0 0 0 0 0 16-3584 chrM 7350 0 0 0 0 0 0 0 16-3584 chrM 7351 0 0 0 0 0 0 0 16-3584 chrM 7352 0 0 0 0 0 0 0 16-3584 chrM 7353 0 0 0 0 0 0 0 16-3584 chrM 7354 0 0 0 0 0 0 0 16-3584 chrM 7355 0 0 0 0 0 0 0 16-3584 chrM 7356 0 0 0 0 0 0 0 16-3584 chrM 7357 0 0 0 0 0 0 0 16-3584 chrM 7358 0 0 0 0 0 0 0 16-3584 chrM 7359 0 0 0 0 0 0 0 16-3584 chrM 7360 0 0 0 0 0 0 0 16-3584 chrM 7361 0 0 0 0 0 0 0 16-3584 chrM 7362 0 0 0 0 0 0 0 16-3584 chrM 7363 0 0 0 0 0 0 0 16-3584 chrM 7364 0 0 0 0 0 0 0 16-3584 chrM 7365 0 0 0 0 0 0 0 16-3584 chrM 7366 0 0 0 0 0 0 0 16-3584 chrM 7367 0 0 0 0 0 0 0 16-3584 chrM 7368 0 0 0 0 0 0 0 16-3584 chrM 7369 0 0 0 0 0 0 0 16-3584 chrM 7370 0 0 0 0 0 0 0 16-3584 chrM 7371 0 0 0 0 0 0 0 16-3584 chrM 7372 0 0 0 0 0 0 0 16-3584 chrM 7373 0 0 0 0 0 0 0 16-3584 chrM 7374 0 0 0 0 0 0 0 16-3584 chrM 7375 0 0 0 0 0 0 0 16-3584 chrM 7376 0 0 0 0 0 0 0 16-3584 chrM 7377 0 0 0 0 0 0 0 16-3584 chrM 7378 0 0 0 0 0 0 0 16-3584 chrM 7379 0 0 0 0 0 0 0 16-3584 chrM 7380 0 0 0 0 0 0 0 16-3584 chrM 7381 0 0 0 0 0 0 0 16-3584 chrM 7382 0 0 0 0 0 0 0 16-3584 chrM 7383 0 0 0 0 0 0 0 16-3584 chrM 7384 0 0 0 0 0 0 0 16-3584 chrM 7385 0 0 0 0 0 0 0 16-3584 chrM 7386 0 0 0 0 0 0 0 16-3584 chrM 7387 0 0 0 0 0 0 0 16-3584 chrM 7388 0 0 0 0 0 0 0 16-3584 chrM 7389 0 0 0 0 0 0 0 16-3584 chrM 7390 0 0 0 0 0 0 0 16-3584 chrM 7391 0 0 0 0 0 0 0 16-3584 chrM 7392 0 0 0 0 0 0 0 16-3584 chrM 7393 0 0 0 0 0 0 0 16-3584 chrM 7394 0 0 0 0 0 0 0 16-3584 chrM 7395 0 0 0 0 0 0 0 16-3584 chrM 7396 0 0 0 0 0 0 0 16-3584 chrM 7397 0 0 0 0 0 0 0 16-3584 chrM 7398 0 0 0 0 0 0 0 16-3584 chrM 7399 0 0 0 0 0 0 0 16-3584 chrM 7400 0 0 0 0 0 0 0 16-3584 chrM 7401 0 0 0 0 0 0 0 16-3584 chrM 7402 0 0 0 0 0 0 0 16-3584 chrM 7403 0 0 0 0 0 0 0 16-3584 chrM 7404 0 0 0 0 0 0 0 16-3584 chrM 7405 0 0 0 0 0 0 0 16-3584 chrM 7406 0 0 0 0 0 0 0 16-3584 chrM 7407 0 0 0 0 0 0 0 16-3584 chrM 7408 0 0 0 0 0 0 0 16-3584 chrM 7409 0 0 0 0 0 0 0 16-3584 chrM 7410 0 0 0 0 0 0 0 16-3584 chrM 7411 0 0 0 0 0 0 0 16-3584 chrM 7412 0 0 0 0 0 0 0 16-3584 chrM 7413 0 0 0 0 0 0 0 16-3584 chrM 7414 0 0 0 0 0 0 0 16-3584 chrM 7415 0 0 0 0 0 0 0 16-3584 chrM 7416 0 0 0 0 0 0 0 16-3584 chrM 7417 0 0 0 0 0 0 0 16-3584 chrM 7418 0 0 0 0 0 0 0 16-3584 chrM 7419 0 0 0 0 0 0 0 16-3584 chrM 7420 0 0 0 0 0 0 0 16-3584 chrM 7421 0 0 0 0 0 0 0 16-3584 chrM 7422 0 0 0 0 0 0 0 16-3584 chrM 7423 0 0 0 0 0 0 0 16-3584 chrM 7424 0 0 0 0 0 0 0 16-3584 chrM 7425 0 0 0 0 0 0 0 16-3584 chrM 7426 0 0 0 0 0 0 0 16-3584 chrM 7427 0 0 0 0 0 0 0 16-3584 chrM 7428 0 0 0 0 0 0 0 16-3584 chrM 7429 0 0 0 0 0 0 0 16-3584 chrM 7430 0 0 0 0 0 0 0 16-3584 chrM 7431 0 0 0 0 0 0 0 16-3584 chrM 7432 0 0 0 0 0 0 0 16-3584 chrM 7433 0 0 0 0 0 0 0 16-3584 chrM 7434 0 0 0 0 0 0 0 16-3584 chrM 7435 0 0 0 0 0 0 0 16-3584 chrM 7436 0 0 0 0 0 0 0 16-3584 chrM 7437 0 0 0 0 0 0 0 16-3584 chrM 7438 0 0 0 0 0 0 0 16-3584 chrM 7439 0 0 0 0 0 0 0 16-3584 chrM 7440 0 0 0 0 0 0 0 16-3584 chrM 7441 0 0 0 0 0 0 0 16-3584 chrM 7442 0 0 0 0 0 0 0 16-3584 chrM 7443 0 0 0 0 0 0 0 16-3584 chrM 7444 0 0 0 0 0 0 0 16-3584 chrM 7445 0 0 0 0 0 0 0 16-3584 chrM 7446 0 0 0 0 0 0 0 16-3584 chrM 7447 0 0 0 0 0 0 0 16-3584 chrM 7448 0 0 0 0 0 0 0 16-3584 chrM 7449 0 0 0 0 0 0 0 16-3584 chrM 7450 0 0 0 0 0 0 0 16-3584 chrM 7451 0 0 0 0 0 0 0 16-3584 chrM 7452 0 0 0 0 0 0 0 16-3584 chrM 7453 0 0 0 0 0 0 0 16-3584 chrM 7454 0 0 0 0 0 0 0 16-3584 chrM 7455 0 0 0 0 0 0 0 16-3584 chrM 7456 0 0 0 0 0 0 0 16-3584 chrM 7457 0 0 0 0 0 0 0 16-3584 chrM 7458 0 0 0 0 0 0 0 16-3584 chrM 7459 0 0 0 0 0 0 0 16-3584 chrM 7460 0 0 0 0 0 0 0 16-3584 chrM 7461 0 0 0 0 0 0 0 16-3584 chrM 7462 0 0 0 0 0 0 0 16-3584 chrM 7463 0 0 0 0 0 0 0 16-3584 chrM 7464 0 0 0 0 0 0 0 16-3584 chrM 7465 0 0 0 0 0 0 0 16-3584 chrM 7466 0 0 0 0 0 0 0 16-3584 chrM 7467 0 0 0 0 0 0 0 16-3584 chrM 7468 0 0 0 0 0 0 0 16-3584 chrM 7469 0 0 0 0 0 0 0 16-3584 chrM 7470 0 0 0 0 0 0 0 16-3584 chrM 7471 0 0 0 0 0 0 0 16-3584 chrM 7472 0 0 0 0 0 0 0 16-3584 chrM 7473 0 0 0 0 0 0 0 16-3584 chrM 7474 0 0 0 0 0 0 0 16-3584 chrM 7475 0 0 0 0 0 0 0 16-3584 chrM 7476 0 0 0 0 0 0 0 16-3584 chrM 7477 0 0 0 0 0 0 0 16-3584 chrM 7478 0 0 0 0 0 0 0 16-3584 chrM 7479 0 0 0 0 0 0 0 16-3584 chrM 7480 0 0 0 0 0 0 0 16-3584 chrM 7481 0 0 0 0 0 0 0 16-3584 chrM 7482 0 0 0 0 0 0 0 16-3584 chrM 7483 0 0 0 0 0 0 0 16-3584 chrM 7484 0 0 0 0 0 0 0 16-3584 chrM 7485 0 0 0 0 0 0 0 16-3584 chrM 7486 0 0 0 0 0 0 0 16-3584 chrM 7487 0 0 0 0 0 0 0 16-3584 chrM 7488 0 0 0 0 0 0 0 16-3584 chrM 7489 0 0 0 0 0 0 0 16-3584 chrM 7490 0 0 0 0 0 0 0 16-3584 chrM 7491 0 0 0 0 0 0 0 16-3584 chrM 7492 0 0 0 0 0 0 0 16-3584 chrM 7493 0 0 0 0 0 0 0 16-3584 chrM 7494 0 0 0 0 0 0 0 16-3584 chrM 7495 0 0 0 0 0 0 0 16-3584 chrM 7496 0 0 0 0 0 0 0 16-3584 chrM 7497 0 0 0 0 0 0 0 16-3584 chrM 7498 0 0 0 0 0 0 0 16-3584 chrM 7499 0 0 0 0 0 0 0 16-3584 chrM 7500 0 0 0 0 0 0 0 16-3584 chrM 7501 0 0 0 0 0 0 0 16-3584 chrM 7502 0 0 0 0 0 0 0 16-3584 chrM 7503 0 0 0 0 0 0 0 16-3584 chrM 7504 0 0 0 0 0 0 0 16-3584 chrM 7505 0 0 0 0 0 0 0 16-3584 chrM 7506 0 0 0 0 0 0 0 16-3584 chrM 7507 0 0 0 0 0 0 0 16-3584 chrM 7508 0 0 0 0 0 0 0 16-3584 chrM 7509 0 0 0 0 0 0 0 16-3584 chrM 7510 0 0 0 0 0 0 0 16-3584 chrM 7511 0 0 0 0 0 0 0 16-3584 chrM 7512 0 0 0 0 0 0 0 16-3584 chrM 7513 0 0 0 0 0 0 0 16-3584 chrM 7514 0 0 0 0 0 0 0 16-3584 chrM 7515 0 0 0 0 0 0 0 16-3584 chrM 7516 0 0 0 0 0 0 0 16-3584 chrM 7517 0 0 0 0 0 0 0 16-3584 chrM 7518 0 0 0 0 0 0 0 16-3584 chrM 7519 0 0 0 0 0 0 0 16-3584 chrM 7520 0 0 0 0 0 0 0 16-3584 chrM 7521 0 0 0 0 0 0 0 16-3584 chrM 7522 0 0 0 0 0 0 0 16-3584 chrM 7523 0 0 0 0 0 0 0 16-3584 chrM 7524 0 0 0 0 0 0 0 16-3584 chrM 7525 0 0 0 0 0 0 0 16-3584 chrM 7526 0 0 0 0 0 0 0 16-3584 chrM 7527 0 0 0 0 0 0 0 16-3584 chrM 7528 0 0 0 0 0 0 0 16-3584 chrM 7529 0 0 0 0 0 0 0 16-3584 chrM 7530 0 0 0 0 0 0 0 16-3584 chrM 7531 0 0 0 0 0 0 0 16-3584 chrM 7532 0 0 0 0 0 0 0 16-3584 chrM 7533 0 0 0 0 0 0 0 16-3584 chrM 7534 0 0 0 0 0 0 0 16-3584 chrM 7535 0 0 0 0 0 0 0 16-3584 chrM 7536 0 0 0 0 0 0 0 16-3584 chrM 7537 0 0 0 0 0 0 0 16-3584 chrM 7538 0 0 0 0 0 0 0 16-3584 chrM 7539 0 0 0 0 0 0 0 16-3584 chrM 7540 0 0 0 0 0 0 0 16-3584 chrM 7541 0 0 0 0 0 0 0 16-3584 chrM 7542 0 0 0 0 0 0 0 16-3584 chrM 7543 0 0 0 0 0 0 0 16-3584 chrM 7544 0 0 0 0 0 0 0 16-3584 chrM 7545 0 0 0 0 0 0 0 16-3584 chrM 7546 0 0 0 0 0 0 0 16-3584 chrM 7547 0 0 0 0 0 0 0 16-3584 chrM 7548 0 0 0 0 0 0 0 16-3584 chrM 7549 0 0 0 0 0 0 0 16-3584 chrM 7550 0 0 0 0 0 0 0 16-3584 chrM 7551 0 0 0 0 0 0 0 16-3584 chrM 7552 0 0 0 0 0 0 0 16-3584 chrM 7553 0 0 0 0 0 0 0 16-3584 chrM 7554 0 0 0 0 0 0 0 16-3584 chrM 7555 0 0 0 0 0 0 0 16-3584 chrM 7556 0 0 0 0 0 0 0 16-3584 chrM 7557 0 0 0 0 0 0 0 16-3584 chrM 7558 0 0 0 0 0 0 0 16-3584 chrM 7559 0 0 0 0 0 0 0 16-3584 chrM 7560 0 0 0 0 0 0 0 16-3584 chrM 7561 0 0 0 0 0 0 0 16-3584 chrM 7562 0 0 0 0 0 0 0 16-3584 chrM 7563 0 0 0 0 0 0 0 16-3584 chrM 7564 0 0 0 0 0 0 0 16-3584 chrM 7565 0 0 0 0 0 0 0 16-3584 chrM 7566 0 0 0 0 0 0 0 16-3584 chrM 7567 0 0 0 0 0 0 0 16-3584 chrM 7568 0 0 0 0 0 0 0 16-3584 chrM 7569 0 0 0 0 0 0 0 16-3584 chrM 7570 0 0 0 0 0 0 0 16-3584 chrM 7571 0 0 0 0 0 0 0 16-3584 chrM 7572 0 0 0 0 0 0 0 16-3584 chrM 7573 0 0 0 0 0 0 0 16-3584 chrM 7574 0 0 0 0 0 0 0 16-3584 chrM 7575 0 0 0 0 0 0 0 16-3584 chrM 7576 0 0 0 0 0 0 0 16-3584 chrM 7577 0 0 0 0 0 0 0 16-3584 chrM 7578 0 0 0 0 0 0 0 16-3584 chrM 7579 0 0 0 0 0 0 0 16-3584 chrM 7580 0 0 0 0 0 0 0 16-3584 chrM 7581 0 0 0 0 0 0 0 16-3584 chrM 7582 0 0 0 0 0 0 0 16-3584 chrM 7583 0 0 0 0 0 0 0 16-3584 chrM 7584 0 0 0 0 0 0 0 16-3584 chrM 7585 0 0 0 0 0 0 0 16-3584 chrM 7586 0 0 0 0 0 0 0 16-3584 chrM 7587 0 0 0 0 0 0 0 16-3584 chrM 7588 0 0 0 0 0 0 0 16-3584 chrM 7589 0 0 0 0 0 0 0 16-3584 chrM 7590 0 0 0 0 0 0 0 16-3584 chrM 7591 0 0 0 0 0 0 0 16-3584 chrM 7592 0 0 0 0 0 0 0 16-3584 chrM 7593 0 0 0 0 0 0 0 16-3584 chrM 7594 0 0 0 0 0 0 0 16-3584 chrM 7595 0 0 0 0 0 0 0 16-3584 chrM 7596 0 0 0 0 0 0 0 16-3584 chrM 7597 0 0 0 0 0 0 0 16-3584 chrM 7598 0 0 0 0 0 0 0 16-3584 chrM 7599 0 0 0 0 0 0 0 16-3584 chrM 7600 0 0 0 0 0 0 0 16-3584 chrM 7601 0 0 0 0 0 0 0 16-3584 chrM 7602 0 0 0 0 0 0 0 16-3584 chrM 7603 0 0 0 0 0 0 0 16-3584 chrM 7604 0 0 0 0 0 0 0 16-3584 chrM 7605 0 0 0 0 0 0 0 16-3584 chrM 7606 0 0 0 0 0 0 0 16-3584 chrM 7607 0 0 0 0 0 0 0 16-3584 chrM 7608 0 0 0 0 0 0 0 16-3584 chrM 7609 0 0 0 0 0 0 0 16-3584 chrM 7610 0 0 0 0 0 0 0 16-3584 chrM 7611 0 0 0 0 0 0 0 16-3584 chrM 7612 0 0 0 0 0 0 0 16-3584 chrM 7613 0 0 0 0 0 0 0 16-3584 chrM 7614 0 0 0 0 0 0 0 16-3584 chrM 7615 0 0 0 0 0 0 0 16-3584 chrM 7616 0 0 0 0 0 0 0 16-3584 chrM 7617 0 0 0 0 0 0 0 16-3584 chrM 7618 0 0 0 0 0 0 0 16-3584 chrM 7619 0 0 0 0 0 0 0 16-3584 chrM 7620 0 0 0 0 0 0 0 16-3584 chrM 7621 0 0 0 0 0 0 0 16-3584 chrM 7622 0 0 0 0 0 0 0 16-3584 chrM 7623 0 0 0 0 0 0 0 16-3584 chrM 7624 0 0 0 0 0 0 0 16-3584 chrM 7625 0 0 0 0 0 0 0 16-3584 chrM 7626 0 0 0 0 0 0 0 16-3584 chrM 7627 0 0 0 0 0 0 0 16-3584 chrM 7628 0 0 0 0 0 0 0 16-3584 chrM 7629 0 0 0 0 0 0 0 16-3584 chrM 7630 0 0 0 0 0 0 0 16-3584 chrM 7631 0 0 0 0 0 0 0 16-3584 chrM 7632 0 0 0 0 0 0 0 16-3584 chrM 7633 0 0 0 0 0 0 0 16-3584 chrM 7634 0 0 0 0 0 0 0 16-3584 chrM 7635 0 0 0 0 0 0 0 16-3584 chrM 7636 0 0 0 0 0 0 0 16-3584 chrM 7637 0 0 0 0 0 0 0 16-3584 chrM 7638 0 0 0 0 0 0 0 16-3584 chrM 7639 0 0 0 0 0 0 0 16-3584 chrM 7640 0 0 0 0 0 0 0 16-3584 chrM 7641 0 0 0 0 0 0 0 16-3584 chrM 7642 0 0 0 0 0 0 0 16-3584 chrM 7643 0 0 0 0 0 0 0 16-3584 chrM 7644 0 0 0 0 0 0 0 16-3584 chrM 7645 0 0 0 0 0 0 0 16-3584 chrM 7646 0 0 0 0 0 0 0 16-3584 chrM 7647 0 0 0 0 0 0 0 16-3584 chrM 7648 0 0 0 0 0 0 0 16-3584 chrM 7649 0 0 0 0 0 0 0 16-3584 chrM 7650 0 0 0 0 0 0 0 16-3584 chrM 7651 0 0 0 0 0 0 0 16-3584 chrM 7652 0 0 0 0 0 0 0 16-3584 chrM 7653 0 0 0 0 0 0 0 16-3584 chrM 7654 0 0 0 0 0 0 0 16-3584 chrM 7655 0 0 0 0 0 0 0 16-3584 chrM 7656 0 0 0 0 0 0 0 16-3584 chrM 7657 0 0 0 0 0 0 0 16-3584 chrM 7658 0 0 0 0 0 0 0 16-3584 chrM 7659 0 0 0 0 0 0 0 16-3584 chrM 7660 0 0 0 0 0 0 0 16-3584 chrM 7661 0 0 0 0 0 0 0 16-3584 chrM 7662 0 0 0 0 0 0 0 16-3584 chrM 7663 0 0 0 0 0 0 0 16-3584 chrM 7664 0 0 0 0 0 0 0 16-3584 chrM 7665 0 0 0 0 0 0 0 16-3584 chrM 7666 0 0 0 0 0 0 0 16-3584 chrM 7667 0 0 0 0 0 0 0 16-3584 chrM 7668 0 0 0 0 0 0 0 16-3584 chrM 7669 0 0 0 0 0 0 0 16-3584 chrM 7670 0 0 0 0 0 0 0 16-3584 chrM 7671 0 0 0 0 0 0 0 16-3584 chrM 7672 0 0 0 0 0 0 0 16-3584 chrM 7673 0 0 0 0 0 0 0 16-3584 chrM 7674 0 0 0 0 0 0 0 16-3584 chrM 7675 0 0 0 0 0 0 0 16-3584 chrM 7676 0 0 0 0 0 0 0 16-3584 chrM 7677 0 0 0 0 0 0 0 16-3584 chrM 7678 0 0 0 0 0 0 0 16-3584 chrM 7679 0 0 0 0 0 0 0 16-3584 chrM 7680 0 0 0 0 0 0 0 16-3584 chrM 7681 0 0 0 0 0 0 0 16-3584 chrM 7682 0 0 0 0 0 0 0 16-3584 chrM 7683 0 0 0 0 0 0 0 16-3584 chrM 7684 0 0 0 0 0 0 0 16-3584 chrM 7685 0 0 0 0 0 0 0 16-3584 chrM 7686 0 0 0 0 0 0 0 16-3584 chrM 7687 0 0 0 0 0 0 0 16-3584 chrM 7688 0 0 0 0 0 0 0 16-3584 chrM 7689 0 0 0 0 0 0 0 16-3584 chrM 7690 0 0 0 0 0 0 0 16-3584 chrM 7691 0 0 0 0 0 0 0 16-3584 chrM 7692 0 0 0 0 0 0 0 16-3584 chrM 7693 0 0 0 0 0 0 0 16-3584 chrM 7694 0 0 0 0 0 0 0 16-3584 chrM 7695 0 0 0 0 0 0 0 16-3584 chrM 7696 0 0 0 0 0 0 0 16-3584 chrM 7697 0 0 0 0 0 0 0 16-3584 chrM 7698 0 0 0 0 0 0 0 16-3584 chrM 7699 0 0 0 0 0 0 0 16-3584 chrM 7700 0 0 0 0 0 0 0 16-3584 chrM 7701 0 0 0 0 0 0 0 16-3584 chrM 7702 0 0 0 0 0 0 0 16-3584 chrM 7703 0 0 0 0 0 0 0 16-3584 chrM 7704 0 0 0 0 0 0 0 16-3584 chrM 7705 0 0 0 0 0 0 0 16-3584 chrM 7706 0 0 0 0 0 0 0 16-3584 chrM 7707 0 0 0 0 0 0 0 16-3584 chrM 7708 0 0 0 0 0 0 0 16-3584 chrM 7709 0 0 0 0 0 0 0 16-3584 chrM 7710 0 0 0 0 0 0 0 16-3584 chrM 7711 0 0 0 0 0 0 0 16-3584 chrM 7712 0 0 0 0 0 0 0 16-3584 chrM 7713 0 0 0 0 0 0 0 16-3584 chrM 7714 0 0 0 0 0 0 0 16-3584 chrM 7715 0 0 0 0 0 0 0 16-3584 chrM 7716 0 0 0 0 0 0 0 16-3584 chrM 7717 0 0 0 0 0 0 0 16-3584 chrM 7718 0 0 0 0 0 0 0 16-3584 chrM 7719 0 0 0 0 0 0 0 16-3584 chrM 7720 0 0 0 0 0 0 0 16-3584 chrM 7721 0 0 0 0 0 0 0 16-3584 chrM 7722 0 0 0 0 0 0 0 16-3584 chrM 7723 0 0 0 0 0 0 0 16-3584 chrM 7724 0 0 0 0 0 0 0 16-3584 chrM 7725 0 0 0 0 0 0 0 16-3584 chrM 7726 0 0 0 0 0 0 0 16-3584 chrM 7727 0 0 0 0 0 0 0 16-3584 chrM 7728 0 0 0 0 0 0 0 16-3584 chrM 7729 0 0 0 0 0 0 0 16-3584 chrM 7730 0 0 0 0 0 0 0 16-3584 chrM 7731 0 0 0 0 0 0 0 16-3584 chrM 7732 0 0 0 0 0 0 0 16-3584 chrM 7733 0 0 0 0 0 0 0 16-3584 chrM 7734 0 0 0 0 0 0 0 16-3584 chrM 7735 0 0 0 0 0 0 0 16-3584 chrM 7736 0 0 0 0 0 0 0 16-3584 chrM 7737 0 0 0 0 0 0 0 16-3584 chrM 7738 0 0 0 0 0 0 0 16-3584 chrM 7739 0 0 0 0 0 0 0 16-3584 chrM 7740 0 0 0 0 0 0 0 16-3584 chrM 7741 0 0 0 0 0 0 0 16-3584 chrM 7742 0 0 0 0 0 0 0 16-3584 chrM 7743 0 0 0 0 0 0 0 16-3584 chrM 7744 0 0 0 0 0 0 0 16-3584 chrM 7745 0 0 0 0 0 0 0 16-3584 chrM 7746 0 0 0 0 0 0 0 16-3584 chrM 7747 0 0 0 0 0 0 0 16-3584 chrM 7748 0 0 0 0 0 0 0 16-3584 chrM 7749 0 0 0 0 0 0 0 16-3584 chrM 7750 0 0 0 0 0 0 0 16-3584 chrM 7751 0 0 0 0 0 0 0 16-3584 chrM 7752 0 0 0 0 0 0 0 16-3584 chrM 7753 0 0 0 0 0 0 0 16-3584 chrM 7754 0 0 0 0 0 0 0 16-3584 chrM 7755 0 0 0 0 0 0 0 16-3584 chrM 7756 0 0 0 0 0 0 0 16-3584 chrM 7757 0 0 0 0 0 0 0 16-3584 chrM 7758 0 0 0 0 0 0 0 16-3584 chrM 7759 0 0 0 0 0 0 0 16-3584 chrM 7760 0 0 0 0 0 0 0 16-3584 chrM 7761 0 0 0 0 0 0 0 16-3584 chrM 7762 0 0 0 0 0 0 0 16-3584 chrM 7763 0 0 0 0 0 0 0 16-3584 chrM 7764 0 0 0 0 0 0 0 16-3584 chrM 7765 0 0 0 0 0 0 0 16-3584 chrM 7766 0 0 0 0 0 0 0 16-3584 chrM 7767 0 0 0 0 0 0 0 16-3584 chrM 7768 0 0 0 0 0 0 0 16-3584 chrM 7769 0 0 0 0 0 0 0 16-3584 chrM 7770 0 0 0 0 0 0 0 16-3584 chrM 7771 0 0 0 0 0 0 0 16-3584 chrM 7772 0 0 0 0 0 0 0 16-3584 chrM 7773 0 0 0 0 0 0 0 16-3584 chrM 7774 0 0 0 0 0 0 0 16-3584 chrM 7775 0 0 0 0 0 0 0 16-3584 chrM 7776 0 0 0 0 0 0 0 16-3584 chrM 7777 0 0 0 0 0 0 0 16-3584 chrM 7778 0 0 0 0 0 0 0 16-3584 chrM 7779 0 0 0 0 0 0 0 16-3584 chrM 7780 0 0 0 0 0 0 0 16-3584 chrM 7781 0 0 0 0 0 0 0 16-3584 chrM 7782 0 0 0 0 0 0 0 16-3584 chrM 7783 0 0 0 0 0 0 0 16-3584 chrM 7784 0 0 0 0 0 0 0 16-3584 chrM 7785 0 0 0 0 0 0 0 16-3584 chrM 7786 0 0 0 0 0 0 0 16-3584 chrM 7787 0 0 0 0 0 0 0 16-3584 chrM 7788 0 0 0 0 0 0 0 16-3584 chrM 7789 0 0 0 0 0 0 0 16-3584 chrM 7790 0 0 0 0 0 0 0 16-3584 chrM 7791 0 0 0 0 0 0 0 16-3584 chrM 7792 0 0 0 0 0 0 0 16-3584 chrM 7793 0 0 0 0 0 0 0 16-3584 chrM 7794 0 0 0 0 0 0 0 16-3584 chrM 7795 0 0 0 0 0 0 0 16-3584 chrM 7796 0 0 0 0 0 0 0 16-3584 chrM 7797 0 0 0 0 0 0 0 16-3584 chrM 7798 0 0 0 0 0 0 0 16-3584 chrM 7799 0 0 0 0 0 0 0 16-3584 chrM 7800 0 0 0 0 0 0 0 16-3584 chrM 7801 0 0 0 0 0 0 0 16-3584 chrM 7802 0 0 0 0 0 0 0 16-3584 chrM 7803 0 0 0 0 0 0 0 16-3584 chrM 7804 0 0 0 0 0 0 0 16-3584 chrM 7805 0 0 0 0 0 0 0 16-3584 chrM 7806 0 0 0 0 0 0 0 16-3584 chrM 7807 0 0 0 0 0 0 0 16-3584 chrM 7808 0 0 0 0 0 0 0 16-3584 chrM 7809 0 0 0 0 0 0 0 16-3584 chrM 7810 0 0 0 0 0 0 0 16-3584 chrM 7811 0 0 0 0 0 0 0 16-3584 chrM 7812 0 0 0 0 0 0 0 16-3584 chrM 7813 0 0 0 0 0 0 0 16-3584 chrM 7814 0 0 0 0 0 0 0 16-3584 chrM 7815 0 0 0 0 0 0 0 16-3584 chrM 7816 0 0 0 0 0 0 0 16-3584 chrM 7817 0 0 0 0 0 0 0 16-3584 chrM 7818 0 0 0 0 0 0 0 16-3584 chrM 7819 0 0 0 0 0 0 0 16-3584 chrM 7820 0 0 0 0 0 0 0 16-3584 chrM 7821 0 0 0 0 0 0 0 16-3584 chrM 7822 0 0 0 0 0 0 0 16-3584 chrM 7823 0 0 0 0 0 0 0 16-3584 chrM 7824 0 0 0 0 0 0 0 16-3584 chrM 7825 0 0 0 0 0 0 0 16-3584 chrM 7826 0 0 0 0 0 0 0 16-3584 chrM 7827 0 0 0 0 0 0 0 16-3584 chrM 7828 0 0 0 0 0 0 0 16-3584 chrM 7829 0 0 0 0 0 0 0 16-3584 chrM 7830 0 0 0 0 0 0 0 16-3584 chrM 7831 0 0 0 0 0 0 0 16-3584 chrM 7832 0 0 0 0 0 0 0 16-3584 chrM 7833 0 0 0 0 0 0 0 16-3584 chrM 7834 0 0 0 0 0 0 0 16-3584 chrM 7835 0 0 0 0 0 0 0 16-3584 chrM 7836 0 0 0 0 0 0 0 16-3584 chrM 7837 0 0 0 0 0 0 0 16-3584 chrM 7838 0 0 0 0 0 0 0 16-3584 chrM 7839 0 0 0 0 0 0 0 16-3584 chrM 7840 0 0 0 0 0 0 0 16-3584 chrM 7841 0 0 0 0 0 0 0 16-3584 chrM 7842 0 0 0 0 0 0 0 16-3584 chrM 7843 0 0 0 0 0 0 0 16-3584 chrM 7844 0 0 0 0 0 0 0 16-3584 chrM 7845 0 0 0 0 0 0 0 16-3584 chrM 7846 0 0 0 0 0 0 0 16-3584 chrM 7847 0 0 0 0 0 0 0 16-3584 chrM 7848 0 0 0 0 0 0 0 16-3584 chrM 7849 0 0 0 0 0 0 0 16-3584 chrM 7850 0 0 0 0 0 0 0 16-3584 chrM 7851 0 0 0 0 0 0 0 16-3584 chrM 7852 0 0 0 0 0 0 0 16-3584 chrM 7853 0 0 0 0 0 0 0 16-3584 chrM 7854 0 0 0 0 0 0 0 16-3584 chrM 7855 0 0 0 0 0 0 0 16-3584 chrM 7856 0 0 0 0 0 0 0 16-3584 chrM 7857 0 0 0 0 0 0 0 16-3584 chrM 7858 0 0 0 0 0 0 0 16-3584 chrM 7859 0 0 0 0 0 0 0 16-3584 chrM 7860 0 0 0 0 0 0 0 16-3584 chrM 7861 0 0 0 0 0 0 0 16-3584 chrM 7862 0 0 0 0 0 0 0 16-3584 chrM 7863 0 0 0 0 0 0 0 16-3584 chrM 7864 0 0 0 0 0 0 0 16-3584 chrM 7865 0 0 0 0 0 0 0 16-3584 chrM 7866 0 0 0 0 0 0 0 16-3584 chrM 7867 0 0 0 0 0 0 0 16-3584 chrM 7868 0 0 0 0 0 0 0 16-3584 chrM 7869 0 0 0 0 0 0 0 16-3584 chrM 7870 0 0 0 0 0 0 0 16-3584 chrM 7871 0 0 0 0 0 0 0 16-3584 chrM 7872 0 0 0 0 0 0 0 16-3584 chrM 7873 0 0 0 0 0 0 0 16-3584 chrM 7874 0 0 0 0 0 0 0 16-3584 chrM 7875 0 0 0 0 0 0 0 16-3584 chrM 7876 0 0 0 0 0 0 0 16-3584 chrM 7877 0 0 0 0 0 0 0 16-3584 chrM 7878 0 0 0 0 0 0 0 16-3584 chrM 7879 0 0 0 0 0 0 0 16-3584 chrM 7880 0 0 0 0 0 0 0 16-3584 chrM 7881 0 0 0 0 0 0 0 16-3584 chrM 7882 0 0 0 0 0 0 0 16-3584 chrM 7883 0 0 0 0 0 0 0 16-3584 chrM 7884 0 0 0 0 0 0 0 16-3584 chrM 7885 0 0 0 0 0 0 0 16-3584 chrM 7886 0 0 0 0 0 0 0 16-3584 chrM 7887 0 0 0 0 0 0 0 16-3584 chrM 7888 0 0 0 0 0 0 0 16-3584 chrM 7889 0 0 0 0 0 0 0 16-3584 chrM 7890 0 0 0 0 0 0 0 16-3584 chrM 7891 0 0 0 0 0 0 0 16-3584 chrM 7892 0 0 0 0 0 0 0 16-3584 chrM 7893 0 0 0 0 0 0 0 16-3584 chrM 7894 0 0 0 0 0 0 0 16-3584 chrM 7895 0 0 0 0 0 0 0 16-3584 chrM 7896 0 0 0 0 0 0 0 16-3584 chrM 7897 0 0 0 0 0 0 0 16-3584 chrM 7898 0 0 0 0 0 0 0 16-3584 chrM 7899 0 0 0 0 0 0 0 16-3584 chrM 7900 0 0 0 0 0 0 0 16-3584 chrM 7901 0 0 0 0 0 0 0 16-3584 chrM 7902 0 0 0 0 0 0 0 16-3584 chrM 7903 0 0 0 0 0 0 0 16-3584 chrM 7904 0 0 0 0 0 0 0 16-3584 chrM 7905 0 0 0 0 0 0 0 16-3584 chrM 7906 0 0 0 0 0 0 0 16-3584 chrM 7907 0 0 0 0 0 0 0 16-3584 chrM 7908 0 0 0 0 0 0 0 16-3584 chrM 7909 0 0 0 0 0 0 0 16-3584 chrM 7910 0 0 0 0 0 0 0 16-3584 chrM 7911 0 0 0 0 0 0 0 16-3584 chrM 7912 0 0 0 0 0 0 0 16-3584 chrM 7913 0 0 0 0 0 0 0 16-3584 chrM 7914 0 0 0 0 0 0 0 16-3584 chrM 7915 0 0 0 0 0 0 0 16-3584 chrM 7916 0 0 0 0 0 0 0 16-3584 chrM 7917 0 0 0 0 0 0 0 16-3584 chrM 7918 0 0 0 0 0 0 0 16-3584 chrM 7919 0 0 0 0 0 0 0 16-3584 chrM 7920 0 0 0 0 0 0 0 16-3584 chrM 7921 0 0 0 0 0 0 0 16-3584 chrM 7922 0 0 0 0 0 0 0 16-3584 chrM 7923 0 0 0 0 0 0 0 16-3584 chrM 7924 0 0 0 0 0 0 0 16-3584 chrM 7925 0 0 0 0 0 0 0 16-3584 chrM 7926 0 0 0 0 0 0 0 16-3584 chrM 7927 0 0 0 0 0 0 0 16-3584 chrM 7928 0 0 0 0 0 0 0 16-3584 chrM 7929 0 0 0 0 0 0 0 16-3584 chrM 7930 0 0 0 0 0 0 0 16-3584 chrM 7931 0 0 0 0 0 0 0 16-3584 chrM 7932 0 0 0 0 0 0 0 16-3584 chrM 7933 0 0 0 0 0 0 0 16-3584 chrM 7934 0 0 0 0 0 0 0 16-3584 chrM 7935 0 0 0 0 0 0 0 16-3584 chrM 7936 0 0 0 0 0 0 0 16-3584 chrM 7937 0 0 0 0 0 0 0 16-3584 chrM 7938 0 0 0 0 0 0 0 16-3584 chrM 7939 0 0 0 0 0 0 0 16-3584 chrM 7940 0 0 0 0 0 0 0 16-3584 chrM 7941 0 0 0 0 0 0 0 16-3584 chrM 7942 0 0 0 0 0 0 0 16-3584 chrM 7943 0 0 0 0 0 0 0 16-3584 chrM 7944 0 0 0 0 0 0 0 16-3584 chrM 7945 0 0 0 0 0 0 0 16-3584 chrM 7946 0 0 0 0 0 0 0 16-3584 chrM 7947 0 0 0 0 0 0 0 16-3584 chrM 7948 0 0 0 0 0 0 0 16-3584 chrM 7949 0 0 0 0 0 0 0 16-3584 chrM 7950 0 0 0 0 0 0 0 16-3584 chrM 7951 0 0 0 0 0 0 0 16-3584 chrM 7952 0 0 0 0 0 0 0 16-3584 chrM 7953 0 0 0 0 0 0 0 16-3584 chrM 7954 0 0 0 0 0 0 0 16-3584 chrM 7955 0 0 0 0 0 0 0 16-3584 chrM 7956 0 0 0 0 0 0 0 16-3584 chrM 7957 0 0 0 0 0 0 0 16-3584 chrM 7958 0 0 0 0 0 0 0 16-3584 chrM 7959 0 0 0 0 0 0 0 16-3584 chrM 7960 0 0 0 0 0 0 0 16-3584 chrM 7961 0 0 0 0 0 0 0 16-3584 chrM 7962 0 0 0 0 0 0 0 16-3584 chrM 7963 0 0 0 0 0 0 0 16-3584 chrM 7964 0 0 0 0 0 0 0 16-3584 chrM 7965 0 0 0 0 0 0 0 16-3584 chrM 7966 0 0 0 0 0 0 0 16-3584 chrM 7967 0 0 0 0 0 0 0 16-3584 chrM 7968 0 0 0 0 0 0 0 16-3584 chrM 7969 0 0 0 0 0 0 0 16-3584 chrM 7970 0 0 0 0 0 0 0 16-3584 chrM 7971 0 0 0 0 0 0 0 16-3584 chrM 7972 0 0 0 0 0 0 0 16-3584 chrM 7973 0 0 0 0 0 0 0 16-3584 chrM 7974 0 0 0 0 0 0 0 16-3584 chrM 7975 0 0 0 0 0 0 0 16-3584 chrM 7976 0 0 0 0 0 0 0 16-3584 chrM 7977 0 0 0 0 0 0 0 16-3584 chrM 7978 0 0 0 0 0 0 0 16-3584 chrM 7979 0 0 0 0 0 0 0 16-3584 chrM 7980 0 0 0 0 0 0 0 16-3584 chrM 7981 0 0 0 0 0 0 0 16-3584 chrM 7982 0 0 0 0 0 0 0 16-3584 chrM 7983 0 0 0 0 0 0 0 16-3584 chrM 7984 0 0 0 0 0 0 0 16-3584 chrM 7985 0 0 0 0 0 0 0 16-3584 chrM 7986 0 0 0 0 0 0 0 16-3584 chrM 7987 0 0 0 0 0 0 0 16-3584 chrM 7988 0 0 0 0 0 0 0 16-3584 chrM 7989 0 0 0 0 0 0 0 16-3584 chrM 7990 0 0 0 0 0 0 0 16-3584 chrM 7991 0 0 0 0 0 0 0 16-3584 chrM 7992 0 0 0 0 0 0 0 16-3584 chrM 7993 0 0 0 0 0 0 0 16-3584 chrM 7994 0 0 0 0 0 0 0 16-3584 chrM 7995 0 0 0 0 0 0 0 16-3584 chrM 7996 0 0 0 0 0 0 0 16-3584 chrM 7997 0 0 0 0 0 0 0 16-3584 chrM 7998 0 0 0 0 0 0 0 16-3584 chrM 7999 0 0 0 0 0 0 0 16-3584 chrM 8000 0 0 0 0 0 0 0 16-3584 chrM 8001 0 0 0 0 0 0 0 16-3584 chrM 8002 0 0 0 0 0 0 0 16-3584 chrM 8003 0 0 0 0 0 0 0 16-3584 chrM 8004 0 0 0 0 0 0 0 16-3584 chrM 8005 0 0 0 0 0 0 0 16-3584 chrM 8006 0 0 0 0 0 0 0 16-3584 chrM 8007 0 0 0 0 0 0 0 16-3584 chrM 8008 0 0 0 0 0 0 0 16-3584 chrM 8009 0 0 0 0 0 0 0 16-3584 chrM 8010 0 0 0 0 0 0 0 16-3584 chrM 8011 0 0 0 0 0 0 0 16-3584 chrM 8012 0 0 0 0 0 0 0 16-3584 chrM 8013 0 0 0 0 0 0 0 16-3584 chrM 8014 0 0 0 0 0 0 0 16-3584 chrM 8015 0 0 0 0 0 0 0 16-3584 chrM 8016 0 0 0 0 0 0 0 16-3584 chrM 8017 0 0 0 0 0 0 0 16-3584 chrM 8018 0 0 0 0 0 0 0 16-3584 chrM 8019 0 0 0 0 0 0 0 16-3584 chrM 8020 0 0 0 0 0 0 0 16-3584 chrM 8021 0 0 0 0 0 0 0 16-3584 chrM 8022 0 0 0 0 0 0 0 16-3584 chrM 8023 0 0 0 0 0 0 0 16-3584 chrM 8024 0 0 0 0 0 0 0 16-3584 chrM 8025 0 0 0 0 0 0 0 16-3584 chrM 8026 0 0 0 0 0 0 0 16-3584 chrM 8027 0 0 0 0 0 0 0 16-3584 chrM 8028 0 0 0 0 0 0 0 16-3584 chrM 8029 0 0 0 0 0 0 0 16-3584 chrM 8030 0 0 0 0 0 0 0 16-3584 chrM 8031 0 0 0 0 0 0 0 16-3584 chrM 8032 0 0 0 0 0 0 0 16-3584 chrM 8033 0 0 0 0 0 0 0 16-3584 chrM 8034 0 0 0 0 0 0 0 16-3584 chrM 8035 0 0 0 0 0 0 0 16-3584 chrM 8036 0 0 0 0 0 0 0 16-3584 chrM 8037 0 0 0 0 0 0 0 16-3584 chrM 8038 0 0 0 0 0 0 0 16-3584 chrM 8039 0 0 0 0 0 0 0 16-3584 chrM 8040 0 0 0 0 0 0 0 16-3584 chrM 8041 0 0 0 0 0 0 0 16-3584 chrM 8042 0 0 0 0 0 0 0 16-3584 chrM 8043 0 0 0 0 0 0 0 16-3584 chrM 8044 0 0 0 0 0 0 0 16-3584 chrM 8045 0 0 0 0 0 0 0 16-3584 chrM 8046 0 0 0 0 0 0 0 16-3584 chrM 8047 0 0 0 0 0 0 0 16-3584 chrM 8048 0 0 0 0 0 0 0 16-3584 chrM 8049 0 0 0 0 0 0 0 16-3584 chrM 8050 0 0 0 0 0 0 0 16-3584 chrM 8051 0 0 0 0 0 0 0 16-3584 chrM 8052 0 0 0 0 0 0 0 16-3584 chrM 8053 0 0 0 0 0 0 0 16-3584 chrM 8054 0 0 0 0 0 0 0 16-3584 chrM 8055 0 0 0 0 0 0 0 16-3584 chrM 8056 0 0 0 0 0 0 0 16-3584 chrM 8057 0 0 0 0 0 0 0 16-3584 chrM 8058 0 0 0 0 0 0 0 16-3584 chrM 8059 0 0 0 0 0 0 0 16-3584 chrM 8060 0 0 0 0 0 0 0 16-3584 chrM 8061 0 0 0 0 0 0 0 16-3584 chrM 8062 0 0 0 0 0 0 0 16-3584 chrM 8063 0 0 0 0 0 0 0 16-3584 chrM 8064 0 0 0 0 0 0 0 16-3584 chrM 8065 0 0 0 0 0 0 0 16-3584 chrM 8066 0 0 0 0 0 0 0 16-3584 chrM 8067 0 0 0 0 0 0 0 16-3584 chrM 8068 0 0 0 0 0 0 0 16-3584 chrM 8069 0 0 0 0 0 0 0 16-3584 chrM 8070 0 0 0 0 0 0 0 16-3584 chrM 8071 0 0 0 0 0 0 0 16-3584 chrM 8072 0 0 0 0 0 0 0 16-3584 chrM 8073 0 0 0 0 0 0 0 16-3584 chrM 8074 0 0 0 0 0 0 0 16-3584 chrM 8075 0 0 0 0 0 0 0 16-3584 chrM 8076 0 0 0 0 0 0 0 16-3584 chrM 8077 0 0 0 0 0 0 0 16-3584 chrM 8078 0 0 0 0 0 0 0 16-3584 chrM 8079 0 0 0 0 0 0 0 16-3584 chrM 8080 0 0 0 0 0 0 0 16-3584 chrM 8081 0 0 0 0 0 0 0 16-3584 chrM 8082 0 0 0 0 0 0 0 16-3584 chrM 8083 0 0 0 0 0 0 0 16-3584 chrM 8084 0 0 0 0 0 0 0 16-3584 chrM 8085 0 0 0 0 0 0 0 16-3584 chrM 8086 0 0 0 0 0 0 0 16-3584 chrM 8087 0 0 0 0 0 0 0 16-3584 chrM 8088 0 0 0 0 0 0 0 16-3584 chrM 8089 0 0 0 0 0 0 0 16-3584 chrM 8090 0 0 0 0 0 0 0 16-3584 chrM 8091 0 0 0 0 0 0 0 16-3584 chrM 8092 0 0 0 0 0 0 0 16-3584 chrM 8093 0 0 0 0 0 0 0 16-3584 chrM 8094 0 0 0 0 0 0 0 16-3584 chrM 8095 0 0 0 0 0 0 0 16-3584 chrM 8096 0 0 0 0 0 0 0 16-3584 chrM 8097 0 0 0 0 0 0 0 16-3584 chrM 8098 0 0 0 0 0 0 0 16-3584 chrM 8099 0 0 0 0 0 0 0 16-3584 chrM 8100 0 0 0 0 0 0 0 16-3584 chrM 8101 0 0 0 0 0 0 0 16-3584 chrM 8102 0 0 0 0 0 0 0 16-3584 chrM 8103 0 0 0 0 0 0 0 16-3584 chrM 8104 0 0 0 0 0 0 0 16-3584 chrM 8105 0 0 0 0 0 0 0 16-3584 chrM 8106 0 0 0 0 0 0 0 16-3584 chrM 8107 0 0 0 0 0 0 0 16-3584 chrM 8108 0 0 0 0 0 0 0 16-3584 chrM 8109 0 0 0 0 0 0 0 16-3584 chrM 8110 0 0 0 0 0 0 0 16-3584 chrM 8111 0 0 0 0 0 0 0 16-3584 chrM 8112 0 0 0 0 0 0 0 16-3584 chrM 8113 0 0 0 0 0 0 0 16-3584 chrM 8114 0 0 0 0 0 0 0 16-3584 chrM 8115 0 0 0 0 0 0 0 16-3584 chrM 8116 0 0 0 0 0 0 0 16-3584 chrM 8117 0 0 0 0 0 0 0 16-3584 chrM 8118 0 0 0 0 0 0 0 16-3584 chrM 8119 0 0 0 0 0 0 0 16-3584 chrM 8120 0 0 0 0 0 0 0 16-3584 chrM 8121 0 0 0 0 0 0 0 16-3584 chrM 8122 0 0 0 0 0 0 0 16-3584 chrM 8123 0 0 0 0 0 0 0 16-3584 chrM 8124 0 0 0 0 0 0 0 16-3584 chrM 8125 0 0 0 0 0 0 0 16-3584 chrM 8126 0 0 0 0 0 0 0 16-3584 chrM 8127 0 0 0 0 0 0 0 16-3584 chrM 8128 0 0 0 0 0 0 0 16-3584 chrM 8129 0 0 0 0 0 0 0 16-3584 chrM 8130 0 0 0 0 0 0 0 16-3584 chrM 8131 0 0 0 0 0 0 0 16-3584 chrM 8132 0 0 0 0 0 0 0 16-3584 chrM 8133 0 0 0 0 0 0 0 16-3584 chrM 8134 0 0 0 0 0 0 0 16-3584 chrM 8135 0 0 0 0 0 0 0 16-3584 chrM 8136 0 0 0 0 0 0 0 16-3584 chrM 8137 0 0 0 0 0 0 0 16-3584 chrM 8138 0 0 0 0 0 0 0 16-3584 chrM 8139 0 0 0 0 0 0 0 16-3584 chrM 8140 0 0 0 0 0 0 0 16-3584 chrM 8141 0 0 0 0 0 0 0 16-3584 chrM 8142 0 0 0 0 0 0 0 16-3584 chrM 8143 0 0 0 0 0 0 0 16-3584 chrM 8144 0 0 0 0 0 0 0 16-3584 chrM 8145 0 0 0 0 0 0 0 16-3584 chrM 8146 0 0 0 0 0 0 0 16-3584 chrM 8147 0 0 0 0 0 0 0 16-3584 chrM 8148 0 0 0 0 0 0 0 16-3584 chrM 8149 0 0 0 0 0 0 0 16-3584 chrM 8150 0 0 0 0 0 0 0 16-3584 chrM 8151 0 0 0 0 0 0 0 16-3584 chrM 8152 0 0 0 0 0 0 0 16-3584 chrM 8153 0 0 0 0 0 0 0 16-3584 chrM 8154 0 0 0 0 0 0 0 16-3584 chrM 8155 0 0 0 0 0 0 0 16-3584 chrM 8156 0 0 0 0 0 0 0 16-3584 chrM 8157 0 0 0 0 0 0 0 16-3584 chrM 8158 0 0 0 0 0 0 0 16-3584 chrM 8159 0 0 0 0 0 0 0 16-3584 chrM 8160 0 0 0 0 0 0 0 16-3584 chrM 8161 0 0 0 0 0 0 0 16-3584 chrM 8162 0 0 0 0 0 0 0 16-3584 chrM 8163 0 0 0 0 0 0 0 16-3584 chrM 8164 0 0 0 0 0 0 0 16-3584 chrM 8165 0 0 0 0 0 0 0 16-3584 chrM 8166 0 0 0 0 0 0 0 16-3584 chrM 8167 0 0 0 0 0 0 0 16-3584 chrM 8168 0 0 0 0 0 0 0 16-3584 chrM 8169 0 0 0 0 0 0 0 16-3584 chrM 8170 0 0 0 0 0 0 0 16-3584 chrM 8171 0 0 0 0 0 0 0 16-3584 chrM 8172 0 0 0 0 0 0 0 16-3584 chrM 8173 0 0 0 0 0 0 0 16-3584 chrM 8174 0 0 0 0 0 0 0 16-3584 chrM 8175 0 0 0 0 0 0 0 16-3584 chrM 8176 0 0 0 0 0 0 0 16-3584 chrM 8177 0 0 0 0 0 0 0 16-3584 chrM 8178 0 0 0 0 0 0 0 16-3584 chrM 8179 0 0 0 0 0 0 0 16-3584 chrM 8180 0 0 0 0 0 0 0 16-3584 chrM 8181 0 0 0 0 0 0 0 16-3584 chrM 8182 0 0 0 0 0 0 0 16-3584 chrM 8183 0 0 0 0 0 0 0 16-3584 chrM 8184 0 0 0 0 0 0 0 16-3584 chrM 8185 0 0 0 0 0 0 0 16-3584 chrM 8186 0 0 0 0 0 0 0 16-3584 chrM 8187 0 0 0 0 0 0 0 16-3584 chrM 8188 0 0 0 0 0 0 0 16-3584 chrM 8189 0 0 0 0 0 0 0 16-3584 chrM 8190 0 0 0 0 0 0 0 16-3584 chrM 8191 0 0 0 0 0 0 0 16-3584 chrM 8192 0 0 0 0 0 0 0 16-3584 chrM 8193 0 0 0 0 0 0 0 16-3584 chrM 8194 0 0 0 0 0 0 0 16-3584 chrM 8195 0 0 0 0 0 0 0 16-3584 chrM 8196 0 0 0 0 0 0 0 16-3584 chrM 8197 0 0 0 0 0 0 0 16-3584 chrM 8198 0 0 0 0 0 0 0 16-3584 chrM 8199 0 0 0 0 0 0 0 16-3584 chrM 8200 0 0 0 0 0 0 0 16-3584 chrM 8201 0 0 0 0 0 0 0 16-3584 chrM 8202 0 0 0 0 0 0 0 16-3584 chrM 8203 0 0 0 0 0 0 0 16-3584 chrM 8204 0 0 0 0 0 0 0 16-3584 chrM 8205 0 0 0 0 0 0 0 16-3584 chrM 8206 0 0 0 0 0 0 0 16-3584 chrM 8207 0 0 0 0 0 0 0 16-3584 chrM 8208 0 0 0 0 0 0 0 16-3584 chrM 8209 0 0 0 0 0 0 0 16-3584 chrM 8210 0 0 0 0 0 0 0 16-3584 chrM 8211 0 0 0 0 0 0 0 16-3584 chrM 8212 0 0 0 0 0 0 0 16-3584 chrM 8213 0 0 0 0 0 0 0 16-3584 chrM 8214 0 0 0 0 0 0 0 16-3584 chrM 8215 0 0 0 0 0 0 0 16-3584 chrM 8216 0 0 0 0 0 0 0 16-3584 chrM 8217 0 0 0 0 0 0 0 16-3584 chrM 8218 0 0 0 0 0 0 0 16-3584 chrM 8219 0 0 0 0 0 0 0 16-3584 chrM 8220 0 0 0 0 0 0 0 16-3584 chrM 8221 0 0 0 0 0 0 0 16-3584 chrM 8222 0 0 0 0 0 0 0 16-3584 chrM 8223 0 0 0 0 0 0 0 16-3584 chrM 8224 0 0 0 0 0 0 0 16-3584 chrM 8225 0 0 0 0 0 0 0 16-3584 chrM 8226 0 0 0 0 0 0 0 16-3584 chrM 8227 0 0 0 0 0 0 0 16-3584 chrM 8228 0 0 0 0 0 0 0 16-3584 chrM 8229 0 0 0 0 0 0 0 16-3584 chrM 8230 0 0 0 0 0 0 0 16-3584 chrM 8231 0 0 0 0 0 0 0 16-3584 chrM 8232 0 0 0 0 0 0 0 16-3584 chrM 8233 0 0 0 0 0 0 0 16-3584 chrM 8234 0 0 0 0 0 0 0 16-3584 chrM 8235 0 0 0 0 0 0 0 16-3584 chrM 8236 0 0 0 0 0 0 0 16-3584 chrM 8237 0 0 0 0 0 0 0 16-3584 chrM 8238 0 0 0 0 0 0 0 16-3584 chrM 8239 0 0 0 0 0 0 0 16-3584 chrM 8240 0 0 0 0 0 0 0 16-3584 chrM 8241 0 0 0 0 0 0 0 16-3584 chrM 8242 0 0 0 0 0 0 0 16-3584 chrM 8243 0 0 0 0 0 0 0 16-3584 chrM 8244 0 0 0 0 0 0 0 16-3584 chrM 8245 0 0 0 0 0 0 0 16-3584 chrM 8246 0 0 0 0 0 0 0 16-3584 chrM 8247 0 0 0 0 0 0 0 16-3584 chrM 8248 0 0 0 0 0 0 0 16-3584 chrM 8249 0 0 0 0 0 0 0 16-3584 chrM 8250 0 0 0 0 0 0 0 16-3584 chrM 8251 0 0 0 0 0 0 0 16-3584 chrM 8252 0 0 0 0 0 0 0 16-3584 chrM 8253 0 0 0 0 0 0 0 16-3584 chrM 8254 0 0 0 0 0 0 0 16-3584 chrM 8255 0 0 0 0 0 0 0 16-3584 chrM 8256 0 0 0 0 0 0 0 16-3584 chrM 8257 0 0 0 0 0 0 0 16-3584 chrM 8258 0 0 0 0 0 0 0 16-3584 chrM 8259 0 0 0 0 0 0 0 16-3584 chrM 8260 0 0 0 0 0 0 0 16-3584 chrM 8261 0 0 0 0 0 0 0 16-3584 chrM 8262 0 0 0 0 0 0 0 16-3584 chrM 8263 0 0 0 0 0 0 0 16-3584 chrM 8264 0 0 0 0 0 0 0 16-3584 chrM 8265 0 0 0 0 0 0 0 16-3584 chrM 8266 0 0 0 0 0 0 0 16-3584 chrM 8267 0 0 0 0 0 0 0 16-3584 chrM 8268 0 0 0 0 0 0 0 16-3584 chrM 8269 0 0 0 0 0 0 0 16-3584 chrM 8270 0 0 0 0 0 0 0 16-3584 chrM 8271 0 0 0 0 0 0 0 16-3584 chrM 8272 0 0 0 0 0 0 0 16-3584 chrM 8273 0 0 0 0 0 0 0 16-3584 chrM 8274 0 0 0 0 0 0 0 16-3584 chrM 8275 0 0 0 0 0 0 0 16-3584 chrM 8276 0 0 0 0 0 0 0 16-3584 chrM 8277 0 0 0 0 0 0 0 16-3584 chrM 8278 0 0 0 0 0 0 0 16-3584 chrM 8279 0 0 0 0 0 0 0 16-3584 chrM 8280 0 0 0 0 0 0 0 16-3584 chrM 8281 0 0 0 0 0 0 0 16-3584 chrM 8282 0 0 0 0 0 0 0 16-3584 chrM 8283 0 0 0 0 0 0 0 16-3584 chrM 8284 0 0 0 0 0 0 0 16-3584 chrM 8285 0 0 0 0 0 0 0 16-3584 chrM 8286 0 0 0 0 0 0 0 16-3584 chrM 8287 0 0 0 0 0 0 0 16-3584 chrM 8288 0 0 0 0 0 0 0 16-3584 chrM 8289 0 0 0 0 0 0 0 16-3584 chrM 8290 0 0 0 0 0 0 0 16-3584 chrM 8291 0 0 0 0 0 0 0 16-3584 chrM 8292 0 0 0 0 0 0 0 16-3584 chrM 8293 0 0 0 0 0 0 0 16-3584 chrM 8294 0 0 0 0 0 0 0 16-3584 chrM 8295 0 0 0 0 0 0 0 16-3584 chrM 8296 0 0 0 0 0 0 0 16-3584 chrM 8297 0 0 0 0 0 0 0 16-3584 chrM 8298 0 0 0 0 0 0 0 16-3584 chrM 8299 0 0 0 0 0 0 0 16-3584 chrM 8300 0 0 0 0 0 0 0 16-3584 chrM 8301 0 0 0 0 0 0 0 16-3584 chrM 8302 0 0 0 0 0 0 0 16-3584 chrM 8303 0 0 0 0 0 0 0 16-3584 chrM 8304 0 0 0 0 0 0 0 16-3584 chrM 8305 0 0 0 0 0 0 0 16-3584 chrM 8306 0 0 0 0 0 0 0 16-3584 chrM 8307 0 0 0 0 0 0 0 16-3584 chrM 8308 0 0 0 0 0 0 0 16-3584 chrM 8309 0 0 0 0 0 0 0 16-3584 chrM 8310 0 0 0 0 0 0 0 16-3584 chrM 8311 0 0 0 0 0 0 0 16-3584 chrM 8312 0 0 0 0 0 0 0 16-3584 chrM 8313 0 0 0 0 0 0 0 16-3584 chrM 8314 0 0 0 0 0 0 0 16-3584 chrM 8315 0 0 0 0 0 0 0 16-3584 chrM 8316 0 0 0 0 0 0 0 16-3584 chrM 8317 0 0 0 0 0 0 0 16-3584 chrM 8318 0 0 0 0 0 0 0 16-3584 chrM 8319 0 0 0 0 0 0 0 16-3584 chrM 8320 0 0 0 0 0 0 0 16-3584 chrM 8321 0 0 0 0 0 0 0 16-3584 chrM 8322 0 0 0 0 0 0 0 16-3584 chrM 8323 0 0 0 0 0 0 0 16-3584 chrM 8324 0 0 0 0 0 0 0 16-3584 chrM 8325 0 0 0 0 0 0 0 16-3584 chrM 8326 0 0 0 0 0 0 0 16-3584 chrM 8327 0 0 0 0 0 0 0 16-3584 chrM 8328 0 0 0 0 0 0 0 16-3584 chrM 8329 0 0 0 0 0 0 0 16-3584 chrM 8330 0 0 0 0 0 0 0 16-3584 chrM 8331 0 0 0 0 0 0 0 16-3584 chrM 8332 0 0 0 0 0 0 0 16-3584 chrM 8333 0 0 0 0 0 0 0 16-3584 chrM 8334 0 0 0 0 0 0 0 16-3584 chrM 8335 0 0 0 0 0 0 0 16-3584 chrM 8336 0 0 0 0 0 0 0 16-3584 chrM 8337 0 0 0 0 0 0 0 16-3584 chrM 8338 0 0 0 0 0 0 0 16-3584 chrM 8339 0 0 0 0 0 0 0 16-3584 chrM 8340 0 0 0 0 0 0 0 16-3584 chrM 8341 0 0 0 0 0 0 0 16-3584 chrM 8342 0 0 0 0 0 0 0 16-3584 chrM 8343 0 0 0 0 0 0 0 16-3584 chrM 8344 0 0 0 0 0 0 0 16-3584 chrM 8345 0 0 0 0 0 0 0 16-3584 chrM 8346 0 0 0 0 0 0 0 16-3584 chrM 8347 0 0 0 0 0 0 0 16-3584 chrM 8348 0 0 0 0 0 0 0 16-3584 chrM 8349 0 0 0 0 0 0 0 16-3584 chrM 8350 0 0 0 0 0 0 0 16-3584 chrM 8351 0 0 0 0 0 0 0 16-3584 chrM 8352 0 0 0 0 0 0 0 16-3584 chrM 8353 0 0 0 0 0 0 0 16-3584 chrM 8354 0 0 0 0 0 0 0 16-3584 chrM 8355 0 0 0 0 0 0 0 16-3584 chrM 8356 0 0 0 0 0 0 0 16-3584 chrM 8357 0 0 0 0 0 0 0 16-3584 chrM 8358 0 0 0 0 0 0 0 16-3584 chrM 8359 0 0 0 0 0 0 0 16-3584 chrM 8360 0 0 0 0 0 0 0 16-3584 chrM 8361 0 0 0 0 0 0 0 16-3584 chrM 8362 0 0 0 0 0 0 0 16-3584 chrM 8363 0 0 0 0 0 0 0 16-3584 chrM 8364 0 0 0 0 0 0 0 16-3584 chrM 8365 0 0 0 0 0 0 0 16-3584 chrM 8366 0 0 0 0 0 0 0 16-3584 chrM 8367 0 0 0 0 0 0 0 16-3584 chrM 8368 0 0 0 0 0 0 0 16-3584 chrM 8369 0 0 0 0 0 0 0 16-3584 chrM 8370 0 0 0 0 0 0 0 16-3584 chrM 8371 0 0 0 0 0 0 0 16-3584 chrM 8372 0 0 0 0 0 0 0 16-3584 chrM 8373 0 0 0 0 0 0 0 16-3584 chrM 8374 0 0 0 0 0 0 0 16-3584 chrM 8375 0 0 0 0 0 0 0 16-3584 chrM 8376 0 0 0 0 0 0 0 16-3584 chrM 8377 0 0 0 0 0 0 0 16-3584 chrM 8378 0 0 0 0 0 0 0 16-3584 chrM 8379 0 0 0 0 0 0 0 16-3584 chrM 8380 0 0 0 0 0 0 0 16-3584 chrM 8381 0 0 0 0 0 0 0 16-3584 chrM 8382 0 0 0 0 0 0 0 16-3584 chrM 8383 0 0 0 0 0 0 0 16-3584 chrM 8384 0 0 0 0 0 0 0 16-3584 chrM 8385 0 0 0 0 0 0 0 16-3584 chrM 8386 0 0 0 0 0 0 0 16-3584 chrM 8387 0 0 0 0 0 0 0 16-3584 chrM 8388 0 0 0 0 0 0 0 16-3584 chrM 8389 0 0 0 0 0 0 0 16-3584 chrM 8390 0 0 0 0 0 0 0 16-3584 chrM 8391 0 0 0 0 0 0 0 16-3584 chrM 8392 0 0 0 0 0 0 0 16-3584 chrM 8393 0 0 0 0 0 0 0 16-3584 chrM 8394 0 0 0 0 0 0 0 16-3584 chrM 8395 0 0 0 0 0 0 0 16-3584 chrM 8396 0 0 0 0 0 0 0 16-3584 chrM 8397 0 0 0 0 0 0 0 16-3584 chrM 8398 0 0 0 0 0 0 0 16-3584 chrM 8399 0 0 0 0 0 0 0 16-3584 chrM 8400 0 0 0 0 0 0 0 16-3584 chrM 8401 0 0 0 0 0 0 0 16-3584 chrM 8402 0 0 0 0 0 0 0 16-3584 chrM 8403 0 0 0 0 0 0 0 16-3584 chrM 8404 0 0 0 0 0 0 0 16-3584 chrM 8405 0 0 0 0 0 0 0 16-3584 chrM 8406 0 0 0 0 0 0 0 16-3584 chrM 8407 0 0 0 0 0 0 0 16-3584 chrM 8408 0 0 0 0 0 0 0 16-3584 chrM 8409 0 0 0 0 0 0 0 16-3584 chrM 8410 0 0 0 0 0 0 0 16-3584 chrM 8411 0 0 0 0 0 0 0 16-3584 chrM 8412 0 0 0 0 0 0 0 16-3584 chrM 8413 0 0 0 0 0 0 0 16-3584 chrM 8414 0 0 0 0 0 0 0 16-3584 chrM 8415 0 0 0 0 0 0 0 16-3584 chrM 8416 0 0 0 0 0 0 0 16-3584 chrM 8417 0 0 0 0 0 0 0 16-3584 chrM 8418 0 0 0 0 0 0 0 16-3584 chrM 8419 0 0 0 0 0 0 0 16-3584 chrM 8420 0 0 0 0 0 0 0 16-3584 chrM 8421 0 0 0 0 0 0 0 16-3584 chrM 8422 0 0 0 0 0 0 0 16-3584 chrM 8423 0 0 0 0 0 0 0 16-3584 chrM 8424 0 0 0 0 0 0 0 16-3584 chrM 8425 0 0 0 0 0 0 0 16-3584 chrM 8426 0 0 0 0 0 0 0 16-3584 chrM 8427 0 0 0 0 0 0 0 16-3584 chrM 8428 0 0 0 0 0 0 0 16-3584 chrM 8429 0 0 0 0 0 0 0 16-3584 chrM 8430 0 0 0 0 0 0 0 16-3584 chrM 8431 0 0 0 0 0 0 0 16-3584 chrM 8432 0 0 0 0 0 0 0 16-3584 chrM 8433 0 0 0 0 0 0 0 16-3584 chrM 8434 0 0 0 0 0 0 0 16-3584 chrM 8435 0 0 0 0 0 0 0 16-3584 chrM 8436 0 0 0 0 0 0 0 16-3584 chrM 8437 0 0 0 0 0 0 0 16-3584 chrM 8438 0 0 0 0 0 0 0 16-3584 chrM 8439 0 0 0 0 0 0 0 16-3584 chrM 8440 0 0 0 0 0 0 0 16-3584 chrM 8441 0 0 0 0 0 0 0 16-3584 chrM 8442 0 0 0 0 0 0 0 16-3584 chrM 8443 0 0 0 0 0 0 0 16-3584 chrM 8444 0 0 0 0 0 0 0 16-3584 chrM 8445 0 0 0 0 0 0 0 16-3584 chrM 8446 0 0 0 0 0 0 0 16-3584 chrM 8447 0 0 0 0 0 0 0 16-3584 chrM 8448 0 0 0 0 0 0 0 16-3584 chrM 8449 0 0 0 0 0 0 0 16-3584 chrM 8450 0 0 0 0 0 0 0 16-3584 chrM 8451 0 0 0 0 0 0 0 16-3584 chrM 8452 0 0 0 0 0 0 0 16-3584 chrM 8453 0 0 0 0 0 0 0 16-3584 chrM 8454 0 0 0 0 0 0 0 16-3584 chrM 8455 0 0 0 0 0 0 0 16-3584 chrM 8456 0 0 0 0 0 0 0 16-3584 chrM 8457 0 0 0 0 0 0 0 16-3584 chrM 8458 0 0 0 0 0 0 0 16-3584 chrM 8459 0 0 0 0 0 0 0 16-3584 chrM 8460 0 0 0 0 0 0 0 16-3584 chrM 8461 0 0 0 0 0 0 0 16-3584 chrM 8462 0 0 0 0 0 0 0 16-3584 chrM 8463 0 0 0 0 0 0 0 16-3584 chrM 8464 0 0 0 0 0 0 0 16-3584 chrM 8465 0 0 0 0 0 0 0 16-3584 chrM 8466 0 0 0 0 0 0 0 16-3584 chrM 8467 0 0 0 0 0 0 0 16-3584 chrM 8468 0 0 0 0 0 0 0 16-3584 chrM 8469 0 0 0 0 0 0 0 16-3584 chrM 8470 0 0 0 0 0 0 0 16-3584 chrM 8471 0 0 0 0 0 0 0 16-3584 chrM 8472 0 0 0 0 0 0 0 16-3584 chrM 8473 0 0 0 0 0 0 0 16-3584 chrM 8474 0 0 0 0 0 0 0 16-3584 chrM 8475 0 0 0 0 0 0 0 16-3584 chrM 8476 0 0 0 0 0 0 0 16-3584 chrM 8477 0 0 0 0 0 0 0 16-3584 chrM 8478 0 0 0 0 0 0 0 16-3584 chrM 8479 0 0 0 0 0 0 0 16-3584 chrM 8480 0 0 0 0 0 0 0 16-3584 chrM 8481 0 0 0 0 0 0 0 16-3584 chrM 8482 0 0 0 0 0 0 0 16-3584 chrM 8483 0 0 0 0 0 0 0 16-3584 chrM 8484 0 0 0 0 0 0 0 16-3584 chrM 8485 0 0 0 0 0 0 0 16-3584 chrM 8486 0 0 0 0 0 0 0 16-3584 chrM 8487 0 0 0 0 0 0 0 16-3584 chrM 8488 0 0 0 0 0 0 0 16-3584 chrM 8489 0 0 0 0 0 0 0 16-3584 chrM 8490 0 0 0 0 0 0 0 16-3584 chrM 8491 0 0 0 0 0 0 0 16-3584 chrM 8492 0 0 0 0 0 0 0 16-3584 chrM 8493 0 0 0 0 0 0 0 16-3584 chrM 8494 0 0 0 0 0 0 0 16-3584 chrM 8495 0 0 0 0 0 0 0 16-3584 chrM 8496 0 0 0 0 0 0 0 16-3584 chrM 8497 0 0 0 0 0 0 0 16-3584 chrM 8498 0 0 0 0 0 0 0 16-3584 chrM 8499 0 0 0 0 0 0 0 16-3584 chrM 8500 0 0 0 0 0 0 0 16-3584 chrM 8501 0 0 0 0 0 0 0 16-3584 chrM 8502 0 0 0 0 0 0 0 16-3584 chrM 8503 0 0 0 0 0 0 0 16-3584 chrM 8504 0 0 0 0 0 0 0 16-3584 chrM 8505 0 0 0 0 0 0 0 16-3584 chrM 8506 0 0 0 0 0 0 0 16-3584 chrM 8507 0 0 0 0 0 0 0 16-3584 chrM 8508 0 0 0 0 0 0 0 16-3584 chrM 8509 0 0 0 0 0 0 0 16-3584 chrM 8510 0 0 0 0 0 0 0 16-3584 chrM 8511 0 0 0 0 0 0 0 16-3584 chrM 8512 0 0 0 0 0 0 0 16-3584 chrM 8513 0 0 0 0 0 0 0 16-3584 chrM 8514 0 0 0 0 0 0 0 16-3584 chrM 8515 0 0 0 0 0 0 0 16-3584 chrM 8516 0 0 0 0 0 0 0 16-3584 chrM 8517 0 0 0 0 0 0 0 16-3584 chrM 8518 0 0 0 0 0 0 0 16-3584 chrM 8519 0 0 0 0 0 0 0 16-3584 chrM 8520 0 0 0 0 0 0 0 16-3584 chrM 8521 0 0 0 0 0 0 0 16-3584 chrM 8522 0 0 0 0 0 0 0 16-3584 chrM 8523 0 0 0 0 0 0 0 16-3584 chrM 8524 0 0 0 0 0 0 0 16-3584 chrM 8525 0 0 0 0 0 0 0 16-3584 chrM 8526 0 0 0 0 0 0 0 16-3584 chrM 8527 0 0 0 0 0 0 0 16-3584 chrM 8528 0 0 0 0 0 0 0 16-3584 chrM 8529 0 0 0 0 0 0 0 16-3584 chrM 8530 0 0 0 0 0 0 0 16-3584 chrM 8531 0 0 0 0 0 0 0 16-3584 chrM 8532 0 0 0 0 0 0 0 16-3584 chrM 8533 0 0 0 0 0 0 0 16-3584 chrM 8534 0 0 0 0 0 0 0 16-3584 chrM 8535 0 0 0 0 0 0 0 16-3584 chrM 8536 0 0 0 0 0 0 0 16-3584 chrM 8537 0 0 0 0 0 0 0 16-3584 chrM 8538 0 0 0 0 0 0 0 16-3584 chrM 8539 0 0 0 0 0 0 0 16-3584 chrM 8540 0 0 0 0 0 0 0 16-3584 chrM 8541 0 0 0 0 0 0 0 16-3584 chrM 8542 0 0 0 0 0 0 0 16-3584 chrM 8543 0 0 0 0 0 0 0 16-3584 chrM 8544 0 0 0 0 0 0 0 16-3584 chrM 8545 0 0 0 0 0 0 0 16-3584 chrM 8546 0 0 0 0 0 0 0 16-3584 chrM 8547 0 0 0 0 0 0 0 16-3584 chrM 8548 0 0 0 0 0 0 0 16-3584 chrM 8549 0 0 0 0 0 0 0 16-3584 chrM 8550 0 0 0 0 0 0 0 16-3584 chrM 8551 0 0 0 0 0 0 0 16-3584 chrM 8552 0 0 0 0 0 0 0 16-3584 chrM 8553 0 0 0 0 0 0 0 16-3584 chrM 8554 0 0 0 0 0 0 0 16-3584 chrM 8555 0 0 0 0 0 0 0 16-3584 chrM 8556 0 0 0 0 0 0 0 16-3584 chrM 8557 0 0 0 0 0 0 0 16-3584 chrM 8558 0 0 0 0 0 0 0 16-3584 chrM 8559 0 0 0 0 0 0 0 16-3584 chrM 8560 0 0 0 0 0 0 0 16-3584 chrM 8561 0 0 0 0 0 0 0 16-3584 chrM 8562 0 0 0 0 0 0 0 16-3584 chrM 8563 0 0 0 0 0 0 0 16-3584 chrM 8564 0 0 0 0 0 0 0 16-3584 chrM 8565 0 0 0 0 0 0 0 16-3584 chrM 8566 0 0 0 0 0 0 0 16-3584 chrM 8567 0 0 0 0 0 0 0 16-3584 chrM 8568 0 0 0 0 0 0 0 16-3584 chrM 8569 0 0 0 0 0 0 0 16-3584 chrM 8570 0 0 0 0 0 0 0 16-3584 chrM 8571 0 0 0 0 0 0 0 16-3584 chrM 8572 0 0 0 0 0 0 0 16-3584 chrM 8573 0 0 0 0 0 0 0 16-3584 chrM 8574 0 0 0 0 0 0 0 16-3584 chrM 8575 0 0 0 0 0 0 0 16-3584 chrM 8576 0 0 0 0 0 0 0 16-3584 chrM 8577 0 0 0 0 0 0 0 16-3584 chrM 8578 0 0 0 0 0 0 0 16-3584 chrM 8579 0 0 0 0 0 0 0 16-3584 chrM 8580 0 0 0 0 0 0 0 16-3584 chrM 8581 0 0 0 0 0 0 0 16-3584 chrM 8582 0 0 0 0 0 0 0 16-3584 chrM 8583 0 0 0 0 0 0 0 16-3584 chrM 8584 0 0 0 0 0 0 0 16-3584 chrM 8585 0 0 0 0 0 0 0 16-3584 chrM 8586 0 0 0 0 0 0 0 16-3584 chrM 8587 0 0 0 0 0 0 0 16-3584 chrM 8588 0 0 0 0 0 0 0 16-3584 chrM 8589 0 0 0 0 0 0 0 16-3584 chrM 8590 0 0 0 0 0 0 0 16-3584 chrM 8591 0 0 0 0 0 0 0 16-3584 chrM 8592 0 0 0 0 0 0 0 16-3584 chrM 8593 0 0 0 0 0 0 0 16-3584 chrM 8594 0 0 0 0 0 0 0 16-3584 chrM 8595 0 0 0 0 0 0 0 16-3584 chrM 8596 0 0 0 0 0 0 0 16-3584 chrM 8597 0 0 0 0 0 0 0 16-3584 chrM 8598 0 0 0 0 0 0 0 16-3584 chrM 8599 0 0 0 0 0 0 0 16-3584 chrM 8600 0 0 0 0 0 0 0 16-3584 chrM 8601 0 0 0 0 0 0 0 16-3584 chrM 8602 0 0 0 0 0 0 0 16-3584 chrM 8603 0 0 0 0 0 0 0 16-3584 chrM 8604 0 0 0 0 0 0 0 16-3584 chrM 8605 0 0 0 0 0 0 0 16-3584 chrM 8606 0 0 0 0 0 0 0 16-3584 chrM 8607 0 0 0 0 0 0 0 16-3584 chrM 8608 0 0 0 0 0 0 0 16-3584 chrM 8609 0 0 0 0 0 0 0 16-3584 chrM 8610 0 0 0 0 0 0 0 16-3584 chrM 8611 0 0 0 0 0 0 0 16-3584 chrM 8612 0 0 0 0 0 0 0 16-3584 chrM 8613 0 0 0 0 0 0 0 16-3584 chrM 8614 0 0 0 0 0 0 0 16-3584 chrM 8615 0 0 0 0 0 0 0 16-3584 chrM 8616 0 0 0 0 0 0 0 16-3584 chrM 8617 0 0 0 0 0 0 0 16-3584 chrM 8618 0 0 0 0 0 0 0 16-3584 chrM 8619 0 0 0 0 0 0 0 16-3584 chrM 8620 0 0 0 0 0 0 0 16-3584 chrM 8621 0 0 0 0 0 0 0 16-3584 chrM 8622 0 0 0 0 0 0 0 16-3584 chrM 8623 0 0 0 0 0 0 0 16-3584 chrM 8624 0 0 0 0 0 0 0 16-3584 chrM 8625 0 0 0 0 0 0 0 16-3584 chrM 8626 0 0 0 0 0 0 0 16-3584 chrM 8627 0 0 0 0 0 0 0 16-3584 chrM 8628 0 0 0 0 0 0 0 16-3584 chrM 8629 0 0 0 0 0 0 0 16-3584 chrM 8630 0 0 0 0 0 0 0 16-3584 chrM 8631 0 0 0 0 0 0 0 16-3584 chrM 8632 0 0 0 0 0 0 0 16-3584 chrM 8633 0 0 0 0 0 0 0 16-3584 chrM 8634 0 0 0 0 0 0 0 16-3584 chrM 8635 0 0 0 0 0 0 0 16-3584 chrM 8636 0 0 0 0 0 0 0 16-3584 chrM 8637 0 0 0 0 0 0 0 16-3584 chrM 8638 0 0 0 0 0 0 0 16-3584 chrM 8639 0 0 0 0 0 0 0 16-3584 chrM 8640 0 0 0 0 0 0 0 16-3584 chrM 8641 0 0 0 0 0 0 0 16-3584 chrM 8642 0 0 0 0 0 0 0 16-3584 chrM 8643 0 0 0 0 0 0 0 16-3584 chrM 8644 0 0 0 0 0 0 0 16-3584 chrM 8645 0 0 0 0 0 0 0 16-3584 chrM 8646 0 0 0 0 0 0 0 16-3584 chrM 8647 0 0 0 0 0 0 0 16-3584 chrM 8648 0 0 0 0 0 0 0 16-3584 chrM 8649 0 0 0 0 0 0 0 16-3584 chrM 8650 0 0 0 0 0 0 0 16-3584 chrM 8651 0 0 0 0 0 0 0 16-3584 chrM 8652 0 0 0 0 0 0 0 16-3584 chrM 8653 0 0 0 0 0 0 0 16-3584 chrM 8654 0 0 0 0 0 0 0 16-3584 chrM 8655 0 0 0 0 0 0 0 16-3584 chrM 8656 0 0 0 0 0 0 0 16-3584 chrM 8657 0 0 0 0 0 0 0 16-3584 chrM 8658 0 0 0 0 0 0 0 16-3584 chrM 8659 0 0 0 0 0 0 0 16-3584 chrM 8660 0 0 0 0 0 0 0 16-3584 chrM 8661 0 0 0 0 0 0 0 16-3584 chrM 8662 0 0 0 0 0 0 0 16-3584 chrM 8663 0 0 0 0 0 0 0 16-3584 chrM 8664 0 0 0 0 0 0 0 16-3584 chrM 8665 0 0 0 0 0 0 0 16-3584 chrM 8666 0 0 0 0 0 0 0 16-3584 chrM 8667 0 0 0 0 0 0 0 16-3584 chrM 8668 0 0 0 0 0 0 0 16-3584 chrM 8669 0 0 0 0 0 0 0 16-3584 chrM 8670 0 0 0 0 0 0 0 16-3584 chrM 8671 0 0 0 0 0 0 0 16-3584 chrM 8672 0 0 0 0 0 0 0 16-3584 chrM 8673 0 0 0 0 0 0 0 16-3584 chrM 8674 0 0 0 0 0 0 0 16-3584 chrM 8675 0 0 0 0 0 0 0 16-3584 chrM 8676 0 0 0 0 0 0 0 16-3584 chrM 8677 0 0 0 0 0 0 0 16-3584 chrM 8678 0 0 0 0 0 0 0 16-3584 chrM 8679 0 0 0 0 0 0 0 16-3584 chrM 8680 0 0 0 0 0 0 0 16-3584 chrM 8681 0 0 0 0 0 0 0 16-3584 chrM 8682 0 0 0 0 0 0 0 16-3584 chrM 8683 0 0 0 0 0 0 0 16-3584 chrM 8684 0 0 0 0 0 0 0 16-3584 chrM 8685 0 0 0 0 0 0 0 16-3584 chrM 8686 0 0 0 0 0 0 0 16-3584 chrM 8687 0 0 0 0 0 0 0 16-3584 chrM 8688 0 0 0 0 0 0 0 16-3584 chrM 8689 0 0 0 0 0 0 0 16-3584 chrM 8690 0 0 0 0 0 0 0 16-3584 chrM 8691 0 0 0 0 0 0 0 16-3584 chrM 8692 0 0 0 0 0 0 0 16-3584 chrM 8693 0 0 0 0 0 0 0 16-3584 chrM 8694 0 0 0 0 0 0 0 16-3584 chrM 8695 0 0 0 0 0 0 0 16-3584 chrM 8696 0 0 0 0 0 0 0 16-3584 chrM 8697 0 0 0 0 0 0 0 16-3584 chrM 8698 0 0 0 0 0 0 0 16-3584 chrM 8699 0 0 0 0 0 0 0 16-3584 chrM 8700 0 0 0 0 0 0 0 16-3584 chrM 8701 0 0 0 0 0 0 0 16-3584 chrM 8702 0 0 0 0 0 0 0 16-3584 chrM 8703 0 0 0 0 0 0 0 16-3584 chrM 8704 0 0 0 0 0 0 0 16-3584 chrM 8705 0 0 0 0 0 0 0 16-3584 chrM 8706 0 0 0 0 0 0 0 16-3584 chrM 8707 0 0 0 0 0 0 0 16-3584 chrM 8708 0 0 0 0 0 0 0 16-3584 chrM 8709 0 0 0 0 0 0 0 16-3584 chrM 8710 0 0 0 0 0 0 0 16-3584 chrM 8711 0 0 0 0 0 0 0 16-3584 chrM 8712 0 0 0 0 0 0 0 16-3584 chrM 8713 0 0 0 0 0 0 0 16-3584 chrM 8714 0 0 0 0 0 0 0 16-3584 chrM 8715 0 0 0 0 0 0 0 16-3584 chrM 8716 0 0 0 0 0 0 0 16-3584 chrM 8717 0 0 0 0 0 0 0 16-3584 chrM 8718 0 0 0 0 0 0 0 16-3584 chrM 8719 0 0 0 0 0 0 0 16-3584 chrM 8720 0 0 0 0 0 0 0 16-3584 chrM 8721 0 0 0 0 0 0 0 16-3584 chrM 8722 0 0 0 0 0 0 0 16-3584 chrM 8723 0 0 0 0 0 0 0 16-3584 chrM 8724 0 0 0 0 0 0 0 16-3584 chrM 8725 0 0 0 0 0 0 0 16-3584 chrM 8726 0 0 0 0 0 0 0 16-3584 chrM 8727 0 0 0 0 0 0 0 16-3584 chrM 8728 0 0 0 0 0 0 0 16-3584 chrM 8729 0 0 0 0 0 0 0 16-3584 chrM 8730 0 0 0 0 0 0 0 16-3584 chrM 8731 0 0 0 0 0 0 0 16-3584 chrM 8732 0 0 0 0 0 0 0 16-3584 chrM 8733 0 0 0 0 0 0 0 16-3584 chrM 8734 0 0 0 0 0 0 0 16-3584 chrM 8735 0 0 0 0 0 0 0 16-3584 chrM 8736 0 0 0 0 0 0 0 16-3584 chrM 8737 0 0 0 0 0 0 0 16-3584 chrM 8738 0 0 0 0 0 0 0 16-3584 chrM 8739 0 0 0 0 0 0 0 16-3584 chrM 8740 0 0 0 0 0 0 0 16-3584 chrM 8741 0 0 0 0 0 0 0 16-3584 chrM 8742 0 0 0 0 0 0 0 16-3584 chrM 8743 0 0 0 0 0 0 0 16-3584 chrM 8744 0 0 0 0 0 0 0 16-3584 chrM 8745 0 0 0 0 0 0 0 16-3584 chrM 8746 0 0 0 0 0 0 0 16-3584 chrM 8747 0 0 0 0 0 0 0 16-3584 chrM 8748 0 0 0 0 0 0 0 16-3584 chrM 8749 0 0 0 0 0 0 0 16-3584 chrM 8750 0 0 0 0 0 0 0 16-3584 chrM 8751 0 0 0 0 0 0 0 16-3584 chrM 8752 0 0 0 0 0 0 0 16-3584 chrM 8753 0 0 0 0 0 0 0 16-3584 chrM 8754 0 0 0 0 0 0 0 16-3584 chrM 8755 0 0 0 0 0 0 0 16-3584 chrM 8756 0 0 0 0 0 0 0 16-3584 chrM 8757 0 0 0 0 0 0 0 16-3584 chrM 8758 0 0 0 0 0 0 0 16-3584 chrM 8759 0 0 0 0 0 0 0 16-3584 chrM 8760 0 0 0 0 0 0 0 16-3584 chrM 8761 0 0 0 0 0 0 0 16-3584 chrM 8762 0 0 0 0 0 0 0 16-3584 chrM 8763 0 0 0 0 0 0 0 16-3584 chrM 8764 0 0 0 0 0 0 0 16-3584 chrM 8765 0 0 0 0 0 0 0 16-3584 chrM 8766 0 0 0 0 0 0 0 16-3584 chrM 8767 0 0 0 0 0 0 0 16-3584 chrM 8768 0 0 0 0 0 0 0 16-3584 chrM 8769 0 0 0 0 0 0 0 16-3584 chrM 8770 0 0 0 0 0 0 0 16-3584 chrM 8771 0 0 0 0 0 0 0 16-3584 chrM 8772 0 0 0 0 0 0 0 16-3584 chrM 8773 0 0 0 0 0 0 0 16-3584 chrM 8774 0 0 0 0 0 0 0 16-3584 chrM 8775 0 0 0 0 0 0 0 16-3584 chrM 8776 0 0 0 0 0 0 0 16-3584 chrM 8777 0 0 0 0 0 0 0 16-3584 chrM 8778 0 0 0 0 0 0 0 16-3584 chrM 8779 0 0 0 0 0 0 0 16-3584 chrM 8780 0 0 0 0 0 0 0 16-3584 chrM 8781 0 0 0 0 0 0 0 16-3584 chrM 8782 0 0 0 0 0 0 0 16-3584 chrM 8783 0 0 0 0 0 0 0 16-3584 chrM 8784 0 0 0 0 0 0 0 16-3584 chrM 8785 0 0 0 0 0 0 0 16-3584 chrM 8786 0 0 0 0 0 0 0 16-3584 chrM 8787 0 0 0 0 0 0 0 16-3584 chrM 8788 0 0 0 0 0 0 0 16-3584 chrM 8789 0 0 0 0 0 0 0 16-3584 chrM 8790 0 0 0 0 0 0 0 16-3584 chrM 8791 0 0 0 0 0 0 0 16-3584 chrM 8792 0 0 0 0 0 0 0 16-3584 chrM 8793 0 0 0 0 0 0 0 16-3584 chrM 8794 0 0 0 0 0 0 0 16-3584 chrM 8795 0 0 0 0 0 0 0 16-3584 chrM 8796 0 0 0 0 0 0 0 16-3584 chrM 8797 0 0 0 0 0 0 0 16-3584 chrM 8798 0 0 0 0 0 0 0 16-3584 chrM 8799 0 0 0 0 0 0 0 16-3584 chrM 8800 0 0 0 0 0 0 0 16-3584 chrM 8801 0 0 0 0 0 0 0 16-3584 chrM 8802 0 0 0 0 0 0 0 16-3584 chrM 8803 0 0 0 0 0 0 0 16-3584 chrM 8804 0 0 0 0 0 0 0 16-3584 chrM 8805 0 0 0 0 0 0 0 16-3584 chrM 8806 0 0 0 0 0 0 0 16-3584 chrM 8807 0 0 0 0 0 0 0 16-3584 chrM 8808 0 0 0 0 0 0 0 16-3584 chrM 8809 0 0 0 0 0 0 0 16-3584 chrM 8810 0 0 0 0 0 0 0 16-3584 chrM 8811 0 0 0 0 0 0 0 16-3584 chrM 8812 0 0 0 0 0 0 0 16-3584 chrM 8813 0 0 0 0 0 0 0 16-3584 chrM 8814 0 0 0 0 0 0 0 16-3584 chrM 8815 0 0 0 0 0 0 0 16-3584 chrM 8816 0 0 0 0 0 0 0 16-3584 chrM 8817 0 0 0 0 0 0 0 16-3584 chrM 8818 0 0 0 0 0 0 0 16-3584 chrM 8819 0 0 0 0 0 0 0 16-3584 chrM 8820 0 0 0 0 0 0 0 16-3584 chrM 8821 0 0 0 0 0 0 0 16-3584 chrM 8822 0 0 0 0 0 0 0 16-3584 chrM 8823 0 0 0 0 0 0 0 16-3584 chrM 8824 0 0 0 0 0 0 0 16-3584 chrM 8825 0 0 0 0 0 0 0 16-3584 chrM 8826 0 0 0 0 0 0 0 16-3584 chrM 8827 0 0 0 0 0 0 0 16-3584 chrM 8828 0 0 0 0 0 0 0 16-3584 chrM 8829 0 0 0 0 0 0 0 16-3584 chrM 8830 0 0 0 0 0 0 0 16-3584 chrM 8831 0 0 0 0 0 0 0 16-3584 chrM 8832 0 0 0 0 0 0 0 16-3584 chrM 8833 0 0 0 0 0 0 0 16-3584 chrM 8834 0 0 0 0 0 0 0 16-3584 chrM 8835 0 0 0 0 0 0 0 16-3584 chrM 8836 0 0 0 0 0 0 0 16-3584 chrM 8837 0 0 0 0 0 0 0 16-3584 chrM 8838 0 0 0 0 0 0 0 16-3584 chrM 8839 0 0 0 0 0 0 0 16-3584 chrM 8840 0 0 0 0 0 0 0 16-3584 chrM 8841 0 0 0 0 0 0 0 16-3584 chrM 8842 0 0 0 0 0 0 0 16-3584 chrM 8843 0 0 0 0 0 0 0 16-3584 chrM 8844 0 0 0 0 0 0 0 16-3584 chrM 8845 0 0 0 0 0 0 0 16-3584 chrM 8846 0 0 0 0 0 0 0 16-3584 chrM 8847 0 0 0 0 0 0 0 16-3584 chrM 8848 0 0 0 0 0 0 0 16-3584 chrM 8849 0 0 0 0 0 0 0 16-3584 chrM 8850 0 0 0 0 0 0 0 16-3584 chrM 8851 0 0 0 0 0 0 0 16-3584 chrM 8852 0 0 0 0 0 0 0 16-3584 chrM 8853 0 0 0 0 0 0 0 16-3584 chrM 8854 0 0 0 0 0 0 0 16-3584 chrM 8855 0 0 0 0 0 0 0 16-3584 chrM 8856 0 0 0 0 0 0 0 16-3584 chrM 8857 0 0 0 0 0 0 0 16-3584 chrM 8858 0 0 0 0 0 0 0 16-3584 chrM 8859 0 0 0 0 0 0 0 16-3584 chrM 8860 0 0 0 0 0 0 0 16-3584 chrM 8861 0 0 0 0 0 0 0 16-3584 chrM 8862 0 0 0 0 0 0 0 16-3584 chrM 8863 0 0 0 0 0 0 0 16-3584 chrM 8864 0 0 0 0 0 0 0 16-3584 chrM 8865 0 0 0 0 0 0 0 16-3584 chrM 8866 0 0 0 0 0 0 0 16-3584 chrM 8867 0 0 0 0 0 0 0 16-3584 chrM 8868 0 0 0 0 0 0 0 16-3584 chrM 8869 0 0 0 0 0 0 0 16-3584 chrM 8870 0 0 0 0 0 0 0 16-3584 chrM 8871 0 0 0 0 0 0 0 16-3584 chrM 8872 0 0 0 0 0 0 0 16-3584 chrM 8873 0 0 0 0 0 0 0 16-3584 chrM 8874 0 0 0 0 0 0 0 16-3584 chrM 8875 0 0 0 0 0 0 0 16-3584 chrM 8876 0 0 0 0 0 0 0 16-3584 chrM 8877 0 0 0 0 0 0 0 16-3584 chrM 8878 0 0 0 0 0 0 0 16-3584 chrM 8879 0 0 0 0 0 0 0 16-3584 chrM 8880 0 0 0 0 0 0 0 16-3584 chrM 8881 0 0 0 0 0 0 0 16-3584 chrM 8882 0 0 0 0 0 0 0 16-3584 chrM 8883 0 0 0 0 0 0 0 16-3584 chrM 8884 0 0 0 0 0 0 0 16-3584 chrM 8885 0 0 0 0 0 0 0 16-3584 chrM 8886 0 0 0 0 0 0 0 16-3584 chrM 8887 0 0 0 0 0 0 0 16-3584 chrM 8888 0 0 0 0 0 0 0 16-3584 chrM 8889 0 0 0 0 0 0 0 16-3584 chrM 8890 0 0 0 0 0 0 0 16-3584 chrM 8891 0 0 0 0 0 0 0 16-3584 chrM 8892 0 0 0 0 0 0 0 16-3584 chrM 8893 0 0 0 0 0 0 0 16-3584 chrM 8894 0 0 0 0 0 0 0 16-3584 chrM 8895 0 0 0 0 0 0 0 16-3584 chrM 8896 0 0 0 0 0 0 0 16-3584 chrM 8897 0 0 0 0 0 0 0 16-3584 chrM 8898 0 0 0 0 0 0 0 16-3584 chrM 8899 0 0 0 0 0 0 0 16-3584 chrM 8900 0 0 0 0 0 0 0 16-3584 chrM 8901 0 0 0 0 0 0 0 16-3584 chrM 8902 0 0 0 0 0 0 0 16-3584 chrM 8903 0 0 0 0 0 0 0 16-3584 chrM 8904 0 0 0 0 0 0 0 16-3584 chrM 8905 0 0 0 0 0 0 0 16-3584 chrM 8906 0 0 0 0 0 0 0 16-3584 chrM 8907 0 0 0 0 0 0 0 16-3584 chrM 8908 0 0 0 0 0 0 0 16-3584 chrM 8909 0 0 0 0 0 0 0 16-3584 chrM 8910 0 0 0 0 0 0 0 16-3584 chrM 8911 0 0 0 0 0 0 0 16-3584 chrM 8912 0 0 0 0 0 0 0 16-3584 chrM 8913 0 0 0 0 0 0 0 16-3584 chrM 8914 0 0 0 0 0 0 0 16-3584 chrM 8915 0 0 0 0 0 0 0 16-3584 chrM 8916 0 0 0 0 0 0 0 16-3584 chrM 8917 0 0 0 0 0 0 0 16-3584 chrM 8918 0 0 0 0 0 0 0 16-3584 chrM 8919 0 0 0 0 0 0 0 16-3584 chrM 8920 0 0 0 0 0 0 0 16-3584 chrM 8921 0 0 0 0 0 0 0 16-3584 chrM 8922 0 0 0 0 0 0 0 16-3584 chrM 8923 0 0 0 0 0 0 0 16-3584 chrM 8924 0 0 0 0 0 0 0 16-3584 chrM 8925 0 0 0 0 0 0 0 16-3584 chrM 8926 0 0 0 0 0 0 0 16-3584 chrM 8927 0 0 0 0 0 0 0 16-3584 chrM 8928 0 0 0 0 0 0 0 16-3584 chrM 8929 0 0 0 0 0 0 0 16-3584 chrM 8930 0 0 0 0 0 0 0 16-3584 chrM 8931 0 0 0 0 0 0 0 16-3584 chrM 8932 0 0 0 0 0 0 0 16-3584 chrM 8933 0 0 0 0 0 0 0 16-3584 chrM 8934 0 0 0 0 0 0 0 16-3584 chrM 8935 0 0 0 0 0 0 0 16-3584 chrM 8936 0 0 0 0 0 0 0 16-3584 chrM 8937 0 0 0 0 0 0 0 16-3584 chrM 8938 0 0 0 0 0 0 0 16-3584 chrM 8939 0 0 0 0 0 0 0 16-3584 chrM 8940 0 0 0 0 0 0 0 16-3584 chrM 8941 0 0 0 0 0 0 0 16-3584 chrM 8942 0 0 0 0 0 0 0 16-3584 chrM 8943 0 0 0 0 0 0 0 16-3584 chrM 8944 0 0 0 0 0 0 0 16-3584 chrM 8945 0 0 0 0 0 0 0 16-3584 chrM 8946 0 0 0 0 0 0 0 16-3584 chrM 8947 0 0 0 0 0 0 0 16-3584 chrM 8948 0 0 0 0 0 0 0 16-3584 chrM 8949 0 0 0 0 0 0 0 16-3584 chrM 8950 0 0 0 0 0 0 0 16-3584 chrM 8951 0 0 0 0 0 0 0 16-3584 chrM 8952 0 0 0 0 0 0 0 16-3584 chrM 8953 0 0 0 0 0 0 0 16-3584 chrM 8954 0 0 0 0 0 0 0 16-3584 chrM 8955 0 0 0 0 0 0 0 16-3584 chrM 8956 0 0 0 0 0 0 0 16-3584 chrM 8957 0 0 0 0 0 0 0 16-3584 chrM 8958 0 0 0 0 0 0 0 16-3584 chrM 8959 0 0 0 0 0 0 0 16-3584 chrM 8960 0 0 0 0 0 0 0 16-3584 chrM 8961 0 0 0 0 0 0 0 16-3584 chrM 8962 0 0 0 0 0 0 0 16-3584 chrM 8963 0 0 0 0 0 0 0 16-3584 chrM 8964 0 0 0 0 0 0 0 16-3584 chrM 8965 0 0 0 0 0 0 0 16-3584 chrM 8966 0 0 0 0 0 0 0 16-3584 chrM 8967 0 0 0 0 0 0 0 16-3584 chrM 8968 0 0 0 0 0 0 0 16-3584 chrM 8969 0 0 0 0 0 0 0 16-3584 chrM 8970 0 0 0 0 0 0 0 16-3584 chrM 8971 0 0 0 0 0 0 0 16-3584 chrM 8972 0 0 0 0 0 0 0 16-3584 chrM 8973 0 0 0 0 0 0 0 16-3584 chrM 8974 0 0 0 0 0 0 0 16-3584 chrM 8975 0 0 0 0 0 0 0 16-3584 chrM 8976 0 0 0 0 0 0 0 16-3584 chrM 8977 0 0 0 0 0 0 0 16-3584 chrM 8978 0 0 0 0 0 0 0 16-3584 chrM 8979 0 0 0 0 0 0 0 16-3584 chrM 8980 0 0 0 0 0 0 0 16-3584 chrM 8981 0 0 0 0 0 0 0 16-3584 chrM 8982 0 0 0 0 0 0 0 16-3584 chrM 8983 0 0 0 0 0 0 0 16-3584 chrM 8984 0 0 0 0 0 0 0 16-3584 chrM 8985 0 0 0 0 0 0 0 16-3584 chrM 8986 0 0 0 0 0 0 0 16-3584 chrM 8987 0 0 0 0 0 0 0 16-3584 chrM 8988 0 0 0 0 0 0 0 16-3584 chrM 8989 0 0 0 0 0 0 0 16-3584 chrM 8990 0 0 0 0 0 0 0 16-3584 chrM 8991 0 0 0 0 0 0 0 16-3584 chrM 8992 0 0 0 0 0 0 0 16-3584 chrM 8993 0 0 0 0 0 0 0 16-3584 chrM 8994 0 0 0 0 0 0 0 16-3584 chrM 8995 0 0 0 0 0 0 0 16-3584 chrM 8996 0 0 0 0 0 0 0 16-3584 chrM 8997 0 0 0 0 0 0 0 16-3584 chrM 8998 0 0 0 0 0 0 0 16-3584 chrM 8999 0 0 0 0 0 0 0 16-3584 chrM 9000 0 0 0 0 0 0 0 16-3584 chrM 9001 0 0 0 0 0 0 0 16-3584 chrM 9002 0 0 0 0 0 0 0 16-3584 chrM 9003 0 0 0 0 0 0 0 16-3584 chrM 9004 0 0 0 0 0 0 0 16-3584 chrM 9005 0 0 0 0 0 0 0 16-3584 chrM 9006 0 0 0 0 0 0 0 16-3584 chrM 9007 0 0 0 0 0 0 0 16-3584 chrM 9008 0 0 0 0 0 0 0 16-3584 chrM 9009 0 0 0 0 0 0 0 16-3584 chrM 9010 0 0 0 0 0 0 0 16-3584 chrM 9011 0 0 0 0 0 0 0 16-3584 chrM 9012 0 0 0 0 0 0 0 16-3584 chrM 9013 0 0 0 0 0 0 0 16-3584 chrM 9014 0 0 0 0 0 0 0 16-3584 chrM 9015 0 0 0 0 0 0 0 16-3584 chrM 9016 0 0 0 0 0 0 0 16-3584 chrM 9017 0 0 0 0 0 0 0 16-3584 chrM 9018 0 0 0 0 0 0 0 16-3584 chrM 9019 0 0 0 0 0 0 0 16-3584 chrM 9020 0 0 0 0 0 0 0 16-3584 chrM 9021 0 0 0 0 0 0 0 16-3584 chrM 9022 0 0 0 0 0 0 0 16-3584 chrM 9023 0 0 0 0 0 0 0 16-3584 chrM 9024 0 0 0 0 0 0 0 16-3584 chrM 9025 0 0 0 0 0 0 0 16-3584 chrM 9026 0 0 0 0 0 0 0 16-3584 chrM 9027 2 1 1 0 0 0 0 16-3584 chrM 9028 2 0 0 0 2 0 0 16-3584 chrM 9029 2 2 0 0 0 0 0 16-3584 chrM 9030 2 1 0 0 1 0 0 16-3584 chrM 9031 2 0 0 2 0 0 0 16-3584 chrM 9032 4 0 2 0 2 0 0 16-3584 chrM 9033 4 2 0 2 0 0 0 16-3584 chrM 9034 4 1 1 1 1 0 0 16-3584 chrM 9035 4 0 1 2 1 0 0 16-3584 chrM 9036 4 1 2 0 1 0 0 16-3584 chrM 9037 4 1 1 1 1 0 0 16-3584 chrM 9038 4 1 0 2 1 0 0 16-3584 chrM 9039 4 0 2 2 0 0 0 16-3584 chrM 9040 4 0 3 0 1 0 0 16-3584 chrM 9041 4 0 0 1 3 0 0 16-3584 chrM 9042 4 1 2 0 1 0 0 16-3584 chrM 9043 4 1 0 3 0 0 0 16-3584 chrM 9044 4 2 1 1 0 0 0 16-3584 chrM 9045 4 0 1 2 1 0 0 16-3584 chrM 9046 4 0 2 1 1 0 0 16-3584 chrM 9047 4 2 2 0 0 0 0 16-3584 chrM 9048 4 0 1 2 1 0 0 16-3584 chrM 9049 4 0 1 0 3 0 0 16-3584 chrM 9050 4 1 1 2 0 0 0 16-3584 chrM 9051 4 0 0 0 4 0 0 16-3584 chrM 9052 4 1 0 2 1 0 0 16-3584 chrM 9053 4 2 0 1 1 0 0 16-3584 chrM 9054 4 0 2 0 2 0 0 16-3584 chrM 9055 4 0 2 2 0 0 0 16-3584 chrM 9056 4 2 0 1 1 0 0 16-3584 chrM 9057 4 0 0 1 3 0 0 16-3584 chrM 9058 4 2 1 0 1 0 0 16-3584 chrM 9059 4 1 1 0 2 0 0 16-3584 chrM 9060 4 0 2 0 2 0 0 16-3584 chrM 9061 4 1 0 2 1 0 0 16-3584 chrM 9062 4 1 1 1 1 0 0 16-3584 chrM 9063 4 2 1 0 1 0 0 16-3584 chrM 9064 4 1 1 2 0 0 0 16-3584 chrM 9065 4 0 3 1 0 0 0 16-3584 chrM 9066 4 1 0 1 2 0 0 16-3584 chrM 9067 4 2 0 1 1 0 0 16-3584 chrM 9068 4 0 1 1 2 0 0 16-3584 chrM 9069 4 1 1 0 2 0 0 16-3584 chrM 9070 4 0 0 4 0 0 0 16-3584 chrM 9071 4 1 1 2 0 0 0 16-3584 chrM 9072 4 3 1 0 0 0 0 16-3584 chrM 9073 4 2 1 1 0 0 0 16-3584 chrM 9074 4 1 1 1 1 0 0 16-3584 chrM 9075 2 0 0 2 0 0 0 16-3584 chrM 9076 2 0 1 1 0 0 0 16-3584 chrM 9077 2 0 1 0 1 0 0 16-3584 chrM 9078 2 0 1 1 0 0 0 16-3584 chrM 9079 2 0 1 0 1 0 0 16-3584 chrM 9080 0 0 0 0 0 0 0 16-3584 chrM 9081 0 0 0 0 0 0 0 16-3584 chrM 9082 0 0 0 0 0 0 0 16-3584 chrM 9083 0 0 0 0 0 0 0 16-3584 chrM 9084 0 0 0 0 0 0 0 16-3584 chrM 9085 0 0 0 0 0 0 0 16-3584 chrM 9086 0 0 0 0 0 0 0 16-3584 chrM 9087 0 0 0 0 0 0 0 16-3584 chrM 9088 0 0 0 0 0 0 0 16-3584 chrM 9089 0 0 0 0 0 0 0 16-3584 chrM 9090 0 0 0 0 0 0 0 16-3584 chrM 9091 0 0 0 0 0 0 0 16-3584 chrM 9092 0 0 0 0 0 0 0 16-3584 chrM 9093 0 0 0 0 0 0 0 16-3584 chrM 9094 0 0 0 0 0 0 0 16-3584 chrM 9095 0 0 0 0 0 0 0 16-3584 chrM 9096 0 0 0 0 0 0 0 16-3584 chrM 9097 0 0 0 0 0 0 0 16-3584 chrM 9098 0 0 0 0 0 0 0 16-3584 chrM 9099 0 0 0 0 0 0 0 16-3584 chrM 9100 0 0 0 0 0 0 0 16-3584 chrM 9101 0 0 0 0 0 0 0 16-3584 chrM 9102 0 0 0 0 0 0 0 16-3584 chrM 9103 0 0 0 0 0 0 0 16-3584 chrM 9104 0 0 0 0 0 0 0 16-3584 chrM 9105 0 0 0 0 0 0 0 16-3584 chrM 9106 0 0 0 0 0 0 0 16-3584 chrM 9107 0 0 0 0 0 0 0 16-3584 chrM 9108 0 0 0 0 0 0 0 16-3584 chrM 9109 0 0 0 0 0 0 0 16-3584 chrM 9110 0 0 0 0 0 0 0 16-3584 chrM 9111 0 0 0 0 0 0 0 16-3584 chrM 9112 0 0 0 0 0 0 0 16-3584 chrM 9113 0 0 0 0 0 0 0 16-3584 chrM 9114 0 0 0 0 0 0 0 16-3584 chrM 9115 0 0 0 0 0 0 0 16-3584 chrM 9116 0 0 0 0 0 0 0 16-3584 chrM 9117 0 0 0 0 0 0 0 16-3584 chrM 9118 0 0 0 0 0 0 0 16-3584 chrM 9119 0 0 0 0 0 0 0 16-3584 chrM 9120 0 0 0 0 0 0 0 16-3584 chrM 9121 0 0 0 0 0 0 0 16-3584 chrM 9122 0 0 0 0 0 0 0 16-3584 chrM 9123 0 0 0 0 0 0 0 16-3584 chrM 9124 0 0 0 0 0 0 0 16-3584 chrM 9125 0 0 0 0 0 0 0 16-3584 chrM 9126 0 0 0 0 0 0 0 16-3584 chrM 9127 0 0 0 0 0 0 0 16-3584 chrM 9128 0 0 0 0 0 0 0 16-3584 chrM 9129 0 0 0 0 0 0 0 16-3584 chrM 9130 0 0 0 0 0 0 0 16-3584 chrM 9131 0 0 0 0 0 0 0 16-3584 chrM 9132 0 0 0 0 0 0 0 16-3584 chrM 9133 0 0 0 0 0 0 0 16-3584 chrM 9134 0 0 0 0 0 0 0 16-3584 chrM 9135 0 0 0 0 0 0 0 16-3584 chrM 9136 0 0 0 0 0 0 0 16-3584 chrM 9137 0 0 0 0 0 0 0 16-3584 chrM 9138 0 0 0 0 0 0 0 16-3584 chrM 9139 0 0 0 0 0 0 0 16-3584 chrM 9140 0 0 0 0 0 0 0 16-3584 chrM 9141 0 0 0 0 0 0 0 16-3584 chrM 9142 0 0 0 0 0 0 0 16-3584 chrM 9143 0 0 0 0 0 0 0 16-3584 chrM 9144 0 0 0 0 0 0 0 16-3584 chrM 9145 0 0 0 0 0 0 0 16-3584 chrM 9146 0 0 0 0 0 0 0 16-3584 chrM 9147 0 0 0 0 0 0 0 16-3584 chrM 9148 0 0 0 0 0 0 0 16-3584 chrM 9149 0 0 0 0 0 0 0 16-3584 chrM 9150 0 0 0 0 0 0 0 16-3584 chrM 9151 0 0 0 0 0 0 0 16-3584 chrM 9152 0 0 0 0 0 0 0 16-3584 chrM 9153 0 0 0 0 0 0 0 16-3584 chrM 9154 0 0 0 0 0 0 0 16-3584 chrM 9155 0 0 0 0 0 0 0 16-3584 chrM 9156 0 0 0 0 0 0 0 16-3584 chrM 9157 0 0 0 0 0 0 0 16-3584 chrM 9158 0 0 0 0 0 0 0 16-3584 chrM 9159 0 0 0 0 0 0 0 16-3584 chrM 9160 0 0 0 0 0 0 0 16-3584 chrM 9161 0 0 0 0 0 0 0 16-3584 chrM 9162 0 0 0 0 0 0 0 16-3584 chrM 9163 0 0 0 0 0 0 0 16-3584 chrM 9164 0 0 0 0 0 0 0 16-3584 chrM 9165 0 0 0 0 0 0 0 16-3584 chrM 9166 0 0 0 0 0 0 0 16-3584 chrM 9167 0 0 0 0 0 0 0 16-3584 chrM 9168 0 0 0 0 0 0 0 16-3584 chrM 9169 0 0 0 0 0 0 0 16-3584 chrM 9170 0 0 0 0 0 0 0 16-3584 chrM 9171 0 0 0 0 0 0 0 16-3584 chrM 9172 0 0 0 0 0 0 0 16-3584 chrM 9173 0 0 0 0 0 0 0 16-3584 chrM 9174 0 0 0 0 0 0 0 16-3584 chrM 9175 0 0 0 0 0 0 0 16-3584 chrM 9176 0 0 0 0 0 0 0 16-3584 chrM 9177 0 0 0 0 0 0 0 16-3584 chrM 9178 0 0 0 0 0 0 0 16-3584 chrM 9179 0 0 0 0 0 0 0 16-3584 chrM 9180 0 0 0 0 0 0 0 16-3584 chrM 9181 0 0 0 0 0 0 0 16-3584 chrM 9182 0 0 0 0 0 0 0 16-3584 chrM 9183 0 0 0 0 0 0 0 16-3584 chrM 9184 0 0 0 0 0 0 0 16-3584 chrM 9185 0 0 0 0 0 0 0 16-3584 chrM 9186 0 0 0 0 0 0 0 16-3584 chrM 9187 0 0 0 0 0 0 0 16-3584 chrM 9188 0 0 0 0 0 0 0 16-3584 chrM 9189 0 0 0 0 0 0 0 16-3584 chrM 9190 0 0 0 0 0 0 0 16-3584 chrM 9191 0 0 0 0 0 0 0 16-3584 chrM 9192 0 0 0 0 0 0 0 16-3584 chrM 9193 0 0 0 0 0 0 0 16-3584 chrM 9194 0 0 0 0 0 0 0 16-3584 chrM 9195 0 0 0 0 0 0 0 16-3584 chrM 9196 0 0 0 0 0 0 0 16-3584 chrM 9197 0 0 0 0 0 0 0 16-3584 chrM 9198 0 0 0 0 0 0 0 16-3584 chrM 9199 0 0 0 0 0 0 0 16-3584 chrM 9200 0 0 0 0 0 0 0 16-3584 chrM 9201 0 0 0 0 0 0 0 16-3584 chrM 9202 0 0 0 0 0 0 0 16-3584 chrM 9203 0 0 0 0 0 0 0 16-3584 chrM 9204 0 0 0 0 0 0 0 16-3584 chrM 9205 0 0 0 0 0 0 0 16-3584 chrM 9206 0 0 0 0 0 0 0 16-3584 chrM 9207 0 0 0 0 0 0 0 16-3584 chrM 9208 0 0 0 0 0 0 0 16-3584 chrM 9209 0 0 0 0 0 0 0 16-3584 chrM 9210 0 0 0 0 0 0 0 16-3584 chrM 9211 0 0 0 0 0 0 0 16-3584 chrM 9212 0 0 0 0 0 0 0 16-3584 chrM 9213 0 0 0 0 0 0 0 16-3584 chrM 9214 0 0 0 0 0 0 0 16-3584 chrM 9215 0 0 0 0 0 0 0 16-3584 chrM 9216 0 0 0 0 0 0 0 16-3584 chrM 9217 0 0 0 0 0 0 0 16-3584 chrM 9218 0 0 0 0 0 0 0 16-3584 chrM 9219 0 0 0 0 0 0 0 16-3584 chrM 9220 0 0 0 0 0 0 0 16-3584 chrM 9221 0 0 0 0 0 0 0 16-3584 chrM 9222 0 0 0 0 0 0 0 16-3584 chrM 9223 0 0 0 0 0 0 0 16-3584 chrM 9224 0 0 0 0 0 0 0 16-3584 chrM 9225 0 0 0 0 0 0 0 16-3584 chrM 9226 0 0 0 0 0 0 0 16-3584 chrM 9227 0 0 0 0 0 0 0 16-3584 chrM 9228 0 0 0 0 0 0 0 16-3584 chrM 9229 0 0 0 0 0 0 0 16-3584 chrM 9230 0 0 0 0 0 0 0 16-3584 chrM 9231 0 0 0 0 0 0 0 16-3584 chrM 9232 0 0 0 0 0 0 0 16-3584 chrM 9233 0 0 0 0 0 0 0 16-3584 chrM 9234 0 0 0 0 0 0 0 16-3584 chrM 9235 0 0 0 0 0 0 0 16-3584 chrM 9236 0 0 0 0 0 0 0 16-3584 chrM 9237 0 0 0 0 0 0 0 16-3584 chrM 9238 0 0 0 0 0 0 0 16-3584 chrM 9239 0 0 0 0 0 0 0 16-3584 chrM 9240 0 0 0 0 0 0 0 16-3584 chrM 9241 0 0 0 0 0 0 0 16-3584 chrM 9242 0 0 0 0 0 0 0 16-3584 chrM 9243 0 0 0 0 0 0 0 16-3584 chrM 9244 0 0 0 0 0 0 0 16-3584 chrM 9245 0 0 0 0 0 0 0 16-3584 chrM 9246 0 0 0 0 0 0 0 16-3584 chrM 9247 0 0 0 0 0 0 0 16-3584 chrM 9248 0 0 0 0 0 0 0 16-3584 chrM 9249 0 0 0 0 0 0 0 16-3584 chrM 9250 0 0 0 0 0 0 0 16-3584 chrM 9251 0 0 0 0 0 0 0 16-3584 chrM 9252 0 0 0 0 0 0 0 16-3584 chrM 9253 0 0 0 0 0 0 0 16-3584 chrM 9254 0 0 0 0 0 0 0 16-3584 chrM 9255 0 0 0 0 0 0 0 16-3584 chrM 9256 0 0 0 0 0 0 0 16-3584 chrM 9257 0 0 0 0 0 0 0 16-3584 chrM 9258 0 0 0 0 0 0 0 16-3584 chrM 9259 0 0 0 0 0 0 0 16-3584 chrM 9260 0 0 0 0 0 0 0 16-3584 chrM 9261 0 0 0 0 0 0 0 16-3584 chrM 9262 0 0 0 0 0 0 0 16-3584 chrM 9263 0 0 0 0 0 0 0 16-3584 chrM 9264 0 0 0 0 0 0 0 16-3584 chrM 9265 0 0 0 0 0 0 0 16-3584 chrM 9266 0 0 0 0 0 0 0 16-3584 chrM 9267 0 0 0 0 0 0 0 16-3584 chrM 9268 0 0 0 0 0 0 0 16-3584 chrM 9269 0 0 0 0 0 0 0 16-3584 chrM 9270 0 0 0 0 0 0 0 16-3584 chrM 9271 0 0 0 0 0 0 0 16-3584 chrM 9272 0 0 0 0 0 0 0 16-3584 chrM 9273 0 0 0 0 0 0 0 16-3584 chrM 9274 0 0 0 0 0 0 0 16-3584 chrM 9275 0 0 0 0 0 0 0 16-3584 chrM 9276 0 0 0 0 0 0 0 16-3584 chrM 9277 0 0 0 0 0 0 0 16-3584 chrM 9278 2 1 0 1 0 0 0 16-3584 chrM 9279 2 0 2 0 0 0 0 16-3584 chrM 9280 2 0 1 0 1 0 0 16-3584 chrM 9281 2 0 2 0 0 0 0 16-3584 chrM 9282 2 0 0 2 0 0 0 16-3584 chrM 9283 2 0 1 1 0 0 0 16-3584 chrM 9284 2 0 0 1 1 0 0 16-3584 chrM 9285 2 0 0 0 2 0 0 16-3584 chrM 9286 2 2 0 0 0 0 0 16-3584 chrM 9287 2 1 1 0 0 0 0 16-3584 chrM 9288 2 0 1 1 0 0 0 16-3584 chrM 9289 2 1 0 0 1 0 0 16-3584 chrM 9290 2 0 0 0 2 0 0 16-3584 chrM 9291 2 1 0 0 1 0 0 16-3584 chrM 9292 2 1 1 0 0 0 0 16-3584 chrM 9293 2 1 0 1 0 0 0 16-3584 chrM 9294 2 2 0 0 0 0 0 16-3584 chrM 9295 2 1 0 1 0 0 0 16-3584 chrM 9296 2 1 0 1 0 0 0 16-3584 chrM 9297 2 1 0 1 0 0 0 16-3584 chrM 9298 2 1 0 0 1 0 0 16-3584 chrM 9299 2 1 0 1 0 0 0 16-3584 chrM 9300 2 1 1 0 0 0 0 16-3584 chrM 9301 2 1 0 0 1 0 0 16-3584 chrM 9302 2 0 1 0 1 0 0 16-3584 chrM 9303 2 0 1 0 1 0 0 16-3584 chrM 9304 2 1 0 0 1 0 0 16-3584 chrM 9305 2 0 1 0 1 0 0 16-3584 chrM 9306 2 0 1 0 1 0 0 16-3584 chrM 9307 2 0 1 1 0 0 0 16-3584 chrM 9308 2 1 0 0 1 0 0 16-3584 chrM 9309 2 1 0 1 0 0 0 16-3584 chrM 9310 2 2 0 0 0 0 0 16-3584 chrM 9311 2 0 1 1 0 0 0 16-3584 chrM 9312 2 1 0 0 1 0 0 16-3584 chrM 9313 2 0 1 1 0 0 0 16-3584 chrM 9314 2 0 2 0 0 0 0 16-3584 chrM 9315 2 1 1 0 0 0 0 16-3584 chrM 9316 2 0 1 1 0 0 0 16-3584 chrM 9317 2 0 1 0 1 0 0 16-3584 chrM 9318 2 1 0 1 0 0 0 16-3584 chrM 9319 2 1 0 1 0 0 0 16-3584 chrM 9320 2 2 0 0 0 0 0 16-3584 chrM 9321 2 1 1 0 0 0 0 16-3584 chrM 9322 4 1 0 0 3 0 0 16-3584 chrM 9323 4 1 1 1 1 0 0 16-3584 chrM 9324 4 1 0 1 2 0 0 16-3584 chrM 9325 4 0 1 3 0 0 0 16-3584 chrM 9326 4 2 1 1 0 0 0 16-3584 chrM 9327 4 2 0 2 0 0 0 16-3584 chrM 9328 4 1 0 1 2 0 0 16-3584 chrM 9329 4 1 2 1 0 0 0 16-3584 chrM 9330 4 2 1 0 1 0 0 16-3584 chrM 9331 4 2 1 1 0 0 0 16-3584 chrM 9332 4 2 1 0 1 0 0 16-3584 chrM 9333 4 0 1 1 2 0 0 16-3584 chrM 9334 4 1 2 0 1 0 0 16-3584 chrM 9335 4 0 1 0 3 0 0 16-3584 chrM 9336 4 1 0 1 2 0 0 16-3584 chrM 9337 4 1 0 1 2 0 0 16-3584 chrM 9338 4 2 0 0 2 0 0 16-3584 chrM 9339 4 2 0 1 1 0 0 16-3584 chrM 9340 4 3 0 1 0 0 0 16-3584 chrM 9341 4 1 1 1 1 0 0 16-3584 chrM 9342 4 0 1 0 3 0 0 16-3584 chrM 9343 4 0 1 1 2 0 0 16-3584 chrM 9344 4 0 1 2 1 0 0 16-3584 chrM 9345 4 2 1 0 1 0 0 16-3584 chrM 9346 4 1 3 0 0 0 0 16-3584 chrM 9347 4 1 1 0 2 0 0 16-3584 chrM 9348 4 2 1 1 0 0 0 16-3584 chrM 9349 4 2 1 1 0 0 0 16-3584 chrM 9350 4 0 0 2 2 0 0 16-3584 chrM 9351 4 0 2 0 2 0 0 16-3584 chrM 9352 4 1 1 2 0 0 0 16-3584 chrM 9353 4 1 0 2 1 0 0 16-3584 chrM 9354 4 1 0 2 1 0 0 16-3584 chrM 9355 4 4 0 0 0 0 0 16-3584 chrM 9356 4 2 0 1 1 0 0 16-3584 chrM 9357 4 0 0 1 3 0 0 16-3584 chrM 9358 4 2 1 0 1 0 0 16-3584 chrM 9359 4 2 2 0 0 0 0 16-3584 chrM 9360 4 2 1 0 1 0 0 16-3584 chrM 9361 4 0 2 2 0 0 0 16-3584 chrM 9362 4 1 1 0 2 0 0 16-3584 chrM 9363 4 1 1 0 2 0 0 16-3584 chrM 9364 4 2 0 1 1 0 0 16-3584 chrM 9365 4 1 2 0 1 0 0 16-3584 chrM 9366 4 1 2 1 0 0 0 16-3584 chrM 9367 4 0 0 1 3 0 0 16-3584 chrM 9368 4 3 0 1 0 0 0 16-3584 chrM 9369 4 0 1 1 2 0 0 16-3584 chrM 9370 4 0 0 3 1 0 0 16-3584 chrM 9371 4 0 2 1 1 0 0 16-3584 chrM 9372 4 1 2 1 0 0 0 16-3584 chrM 9373 4 1 1 1 1 0 0 16-3584 chrM 9374 4 1 0 1 2 0 0 16-3584 chrM 9375 4 2 0 0 2 0 0 16-3584 chrM 9376 4 0 1 3 0 0 0 16-3584 chrM 9377 4 0 1 0 3 0 0 16-3584 chrM 9378 4 1 1 0 2 0 0 16-3584 chrM 9379 4 0 1 2 1 0 0 16-3584 chrM 9380 4 2 1 0 1 0 0 16-3584 chrM 9381 4 2 2 0 0 0 0 16-3584 chrM 9382 4 0 1 1 2 0 0 16-3584 chrM 9383 4 0 0 3 1 0 0 16-3584 chrM 9384 4 0 1 2 1 0 0 16-3584 chrM 9385 4 2 0 0 2 0 0 16-3584 chrM 9386 4 2 0 2 0 0 0 16-3584 chrM 9387 4 0 1 2 1 0 0 16-3584 chrM 9388 4 1 0 1 2 0 0 16-3584 chrM 9389 4 1 1 2 0 0 0 16-3584 chrM 9390 4 1 1 1 1 0 0 16-3584 chrM 9391 4 2 0 1 1 0 0 16-3584 chrM 9392 4 0 1 1 2 0 0 16-3584 chrM 9393 4 3 0 0 1 0 0 16-3584 chrM 9394 4 1 1 1 1 0 0 16-3584 chrM 9395 4 0 0 3 1 0 0 16-3584 chrM 9396 4 2 1 0 1 0 0 16-3584 chrM 9397 4 0 0 2 2 0 0 16-3584 chrM 9398 4 2 1 1 0 0 0 16-3584 chrM 9399 4 0 2 0 2 0 0 16-3584 chrM 9400 4 1 2 0 1 0 0 16-3584 chrM 9401 4 0 1 2 1 0 0 16-3584 chrM 9402 4 1 2 0 1 0 0 16-3584 chrM 9403 4 1 1 0 2 0 0 16-3584 chrM 9404 4 2 2 0 0 0 0 16-3584 chrM 9405 4 1 1 0 2 0 0 16-3584 chrM 9406 4 0 1 3 0 0 0 16-3584 chrM 9407 4 0 1 1 2 0 0 16-3584 chrM 9408 4 1 2 0 1 0 0 16-3584 chrM 9409 4 1 1 1 1 0 0 16-3584 chrM 9410 4 1 1 1 1 0 0 16-3584 chrM 9411 4 1 1 2 0 0 0 16-3584 chrM 9412 4 1 0 1 2 0 0 16-3584 chrM 9413 4 3 0 0 1 0 0 16-3584 chrM 9414 4 1 2 0 1 0 0 16-3584 chrM 9415 4 1 1 1 1 0 0 16-3584 chrM 9416 4 1 0 2 1 0 0 16-3584 chrM 9417 4 1 0 1 2 0 0 16-3584 chrM 9418 4 2 0 1 1 0 0 16-3584 chrM 9419 4 2 1 1 0 0 0 16-3584 chrM 9420 4 1 2 0 1 0 0 16-3584 chrM 9421 4 0 2 2 0 0 0 16-3584 chrM 9422 4 0 0 4 0 0 0 16-3584 chrM 9423 4 0 1 1 2 0 0 16-3584 chrM 9424 2 1 0 0 1 0 0 16-3584 chrM 9425 2 1 1 0 0 0 0 16-3584 chrM 9426 2 1 1 0 0 0 0 16-3584 chrM 9427 2 2 0 0 0 0 0 16-3584 chrM 9428 2 0 1 1 0 0 0 16-3584 chrM 9429 2 0 0 1 1 0 0 16-3584 chrM 9430 2 2 0 0 0 0 0 16-3584 chrM 9431 2 2 0 0 0 0 0 16-3584 chrM 9432 2 0 0 1 1 0 0 16-3584 chrM 9433 2 0 1 1 0 0 0 16-3584 chrM 9434 2 0 0 0 2 0 0 16-3584 chrM 9435 2 1 0 0 1 0 0 16-3584 chrM 9436 2 0 1 1 0 0 0 16-3584 chrM 9437 2 0 0 1 1 0 0 16-3584 chrM 9438 2 0 0 0 2 0 0 16-3584 chrM 9439 2 0 1 0 1 0 0 16-3584 chrM 9440 2 0 0 1 1 0 0 16-3584 chrM 9441 2 0 0 1 1 0 0 16-3584 chrM 9442 2 0 1 0 1 0 0 16-3584 chrM 9443 2 0 1 1 0 0 0 16-3584 chrM 9444 2 0 0 1 1 0 0 16-3584 chrM 9445 2 1 0 1 0 0 0 16-3584 chrM 9446 2 1 0 1 0 0 0 16-3584 chrM 9447 2 0 1 1 0 0 0 16-3584 chrM 9448 2 0 0 0 2 0 0 16-3584 chrM 9449 2 1 0 0 1 0 0 16-3584 chrM 9450 2 1 0 1 0 0 0 16-3584 chrM 9451 2 1 0 0 1 0 0 16-3584 chrM 9452 2 0 1 1 0 0 0 16-3584 chrM 9453 2 1 1 0 0 0 0 16-3584 chrM 9454 2 1 1 0 0 0 0 16-3584 chrM 9455 2 1 1 0 0 0 0 16-3584 chrM 9456 2 2 0 0 0 0 0 16-3584 chrM 9457 2 1 0 0 1 0 0 16-3584 chrM 9458 2 2 0 0 0 0 0 16-3584 chrM 9459 2 0 0 1 1 0 0 16-3584 chrM 9460 2 0 1 0 1 0 0 16-3584 chrM 9461 2 0 1 1 0 0 0 16-3584 chrM 9462 2 0 1 1 0 0 0 16-3584 chrM 9463 2 2 0 0 0 0 0 16-3584 chrM 9464 2 1 1 0 0 0 0 16-3584 chrM 9465 2 1 1 0 0 0 0 16-3584 chrM 9466 0 0 0 0 0 0 0 16-3584 chrM 9467 0 0 0 0 0 0 0 16-3584 chrM 9468 0 0 0 0 0 0 0 16-3584 chrM 9469 0 0 0 0 0 0 0 16-3584 chrM 9470 0 0 0 0 0 0 0 16-3584 chrM 9471 0 0 0 0 0 0 0 16-3584 chrM 9472 0 0 0 0 0 0 0 16-3584 chrM 9473 0 0 0 0 0 0 0 16-3584 chrM 9474 0 0 0 0 0 0 0 16-3584 chrM 9475 0 0 0 0 0 0 0 16-3584 chrM 9476 0 0 0 0 0 0 0 16-3584 chrM 9477 0 0 0 0 0 0 0 16-3584 chrM 9478 0 0 0 0 0 0 0 16-3584 chrM 9479 0 0 0 0 0 0 0 16-3584 chrM 9480 0 0 0 0 0 0 0 16-3584 chrM 9481 0 0 0 0 0 0 0 16-3584 chrM 9482 0 0 0 0 0 0 0 16-3584 chrM 9483 0 0 0 0 0 0 0 16-3584 chrM 9484 0 0 0 0 0 0 0 16-3584 chrM 9485 0 0 0 0 0 0 0 16-3584 chrM 9486 0 0 0 0 0 0 0 16-3584 chrM 9487 0 0 0 0 0 0 0 16-3584 chrM 9488 0 0 0 0 0 0 0 16-3584 chrM 9489 0 0 0 0 0 0 0 16-3584 chrM 9490 0 0 0 0 0 0 0 16-3584 chrM 9491 0 0 0 0 0 0 0 16-3584 chrM 9492 0 0 0 0 0 0 0 16-3584 chrM 9493 0 0 0 0 0 0 0 16-3584 chrM 9494 0 0 0 0 0 0 0 16-3584 chrM 9495 0 0 0 0 0 0 0 16-3584 chrM 9496 0 0 0 0 0 0 0 16-3584 chrM 9497 0 0 0 0 0 0 0 16-3584 chrM 9498 0 0 0 0 0 0 0 16-3584 chrM 9499 0 0 0 0 0 0 0 16-3584 chrM 9500 0 0 0 0 0 0 0 16-3584 chrM 9501 0 0 0 0 0 0 0 16-3584 chrM 9502 0 0 0 0 0 0 0 16-3584 chrM 9503 0 0 0 0 0 0 0 16-3584 chrM 9504 0 0 0 0 0 0 0 16-3584 chrM 9505 0 0 0 0 0 0 0 16-3584 chrM 9506 0 0 0 0 0 0 0 16-3584 chrM 9507 0 0 0 0 0 0 0 16-3584 chrM 9508 0 0 0 0 0 0 0 16-3584 chrM 9509 0 0 0 0 0 0 0 16-3584 chrM 9510 0 0 0 0 0 0 0 16-3584 chrM 9511 0 0 0 0 0 0 0 16-3584 chrM 9512 0 0 0 0 0 0 0 16-3584 chrM 9513 0 0 0 0 0 0 0 16-3584 chrM 9514 0 0 0 0 0 0 0 16-3584 chrM 9515 0 0 0 0 0 0 0 16-3584 chrM 9516 0 0 0 0 0 0 0 16-3584 chrM 9517 0 0 0 0 0 0 0 16-3584 chrM 9518 0 0 0 0 0 0 0 16-3584 chrM 9519 0 0 0 0 0 0 0 16-3584 chrM 9520 0 0 0 0 0 0 0 16-3584 chrM 9521 0 0 0 0 0 0 0 16-3584 chrM 9522 0 0 0 0 0 0 0 16-3584 chrM 9523 0 0 0 0 0 0 0 16-3584 chrM 9524 0 0 0 0 0 0 0 16-3584 chrM 9525 0 0 0 0 0 0 0 16-3584 chrM 9526 0 0 0 0 0 0 0 16-3584 chrM 9527 0 0 0 0 0 0 0 16-3584 chrM 9528 0 0 0 0 0 0 0 16-3584 chrM 9529 0 0 0 0 0 0 0 16-3584 chrM 9530 0 0 0 0 0 0 0 16-3584 chrM 9531 0 0 0 0 0 0 0 16-3584 chrM 9532 0 0 0 0 0 0 0 16-3584 chrM 9533 0 0 0 0 0 0 0 16-3584 chrM 9534 0 0 0 0 0 0 0 16-3584 chrM 9535 0 0 0 0 0 0 0 16-3584 chrM 9536 0 0 0 0 0 0 0 16-3584 chrM 9537 0 0 0 0 0 0 0 16-3584 chrM 9538 0 0 0 0 0 0 0 16-3584 chrM 9539 0 0 0 0 0 0 0 16-3584 chrM 9540 0 0 0 0 0 0 0 16-3584 chrM 9541 0 0 0 0 0 0 0 16-3584 chrM 9542 0 0 0 0 0 0 0 16-3584 chrM 9543 0 0 0 0 0 0 0 16-3584 chrM 9544 0 0 0 0 0 0 0 16-3584 chrM 9545 0 0 0 0 0 0 0 16-3584 chrM 9546 0 0 0 0 0 0 0 16-3584 chrM 9547 0 0 0 0 0 0 0 16-3584 chrM 9548 0 0 0 0 0 0 0 16-3584 chrM 9549 0 0 0 0 0 0 0 16-3584 chrM 9550 0 0 0 0 0 0 0 16-3584 chrM 9551 0 0 0 0 0 0 0 16-3584 chrM 9552 0 0 0 0 0 0 0 16-3584 chrM 9553 0 0 0 0 0 0 0 16-3584 chrM 9554 0 0 0 0 0 0 0 16-3584 chrM 9555 0 0 0 0 0 0 0 16-3584 chrM 9556 0 0 0 0 0 0 0 16-3584 chrM 9557 0 0 0 0 0 0 0 16-3584 chrM 9558 0 0 0 0 0 0 0 16-3584 chrM 9559 0 0 0 0 0 0 0 16-3584 chrM 9560 0 0 0 0 0 0 0 16-3584 chrM 9561 0 0 0 0 0 0 0 16-3584 chrM 9562 0 0 0 0 0 0 0 16-3584 chrM 9563 0 0 0 0 0 0 0 16-3584 chrM 9564 0 0 0 0 0 0 0 16-3584 chrM 9565 0 0 0 0 0 0 0 16-3584 chrM 9566 0 0 0 0 0 0 0 16-3584 chrM 9567 0 0 0 0 0 0 0 16-3584 chrM 9568 0 0 0 0 0 0 0 16-3584 chrM 9569 0 0 0 0 0 0 0 16-3584 chrM 9570 0 0 0 0 0 0 0 16-3584 chrM 9571 0 0 0 0 0 0 0 16-3584 chrM 9572 0 0 0 0 0 0 0 16-3584 chrM 9573 0 0 0 0 0 0 0 16-3584 chrM 9574 0 0 0 0 0 0 0 16-3584 chrM 9575 0 0 0 0 0 0 0 16-3584 chrM 9576 0 0 0 0 0 0 0 16-3584 chrM 9577 0 0 0 0 0 0 0 16-3584 chrM 9578 0 0 0 0 0 0 0 16-3584 chrM 9579 0 0 0 0 0 0 0 16-3584 chrM 9580 0 0 0 0 0 0 0 16-3584 chrM 9581 0 0 0 0 0 0 0 16-3584 chrM 9582 0 0 0 0 0 0 0 16-3584 chrM 9583 0 0 0 0 0 0 0 16-3584 chrM 9584 0 0 0 0 0 0 0 16-3584 chrM 9585 0 0 0 0 0 0 0 16-3584 chrM 9586 0 0 0 0 0 0 0 16-3584 chrM 9587 0 0 0 0 0 0 0 16-3584 chrM 9588 0 0 0 0 0 0 0 16-3584 chrM 9589 0 0 0 0 0 0 0 16-3584 chrM 9590 0 0 0 0 0 0 0 16-3584 chrM 9591 0 0 0 0 0 0 0 16-3584 chrM 9592 0 0 0 0 0 0 0 16-3584 chrM 9593 0 0 0 0 0 0 0 16-3584 chrM 9594 0 0 0 0 0 0 0 16-3584 chrM 9595 0 0 0 0 0 0 0 16-3584 chrM 9596 0 0 0 0 0 0 0 16-3584 chrM 9597 0 0 0 0 0 0 0 16-3584 chrM 9598 0 0 0 0 0 0 0 16-3584 chrM 9599 0 0 0 0 0 0 0 16-3584 chrM 9600 0 0 0 0 0 0 0 16-3584 chrM 9601 0 0 0 0 0 0 0 16-3584 chrM 9602 0 0 0 0 0 0 0 16-3584 chrM 9603 0 0 0 0 0 0 0 16-3584 chrM 9604 0 0 0 0 0 0 0 16-3584 chrM 9605 0 0 0 0 0 0 0 16-3584 chrM 9606 0 0 0 0 0 0 0 16-3584 chrM 9607 0 0 0 0 0 0 0 16-3584 chrM 9608 0 0 0 0 0 0 0 16-3584 chrM 9609 0 0 0 0 0 0 0 16-3584 chrM 9610 0 0 0 0 0 0 0 16-3584 chrM 9611 0 0 0 0 0 0 0 16-3584 chrM 9612 0 0 0 0 0 0 0 16-3584 chrM 9613 0 0 0 0 0 0 0 16-3584 chrM 9614 0 0 0 0 0 0 0 16-3584 chrM 9615 0 0 0 0 0 0 0 16-3584 chrM 9616 0 0 0 0 0 0 0 16-3584 chrM 9617 0 0 0 0 0 0 0 16-3584 chrM 9618 0 0 0 0 0 0 0 16-3584 chrM 9619 0 0 0 0 0 0 0 16-3584 chrM 9620 0 0 0 0 0 0 0 16-3584 chrM 9621 0 0 0 0 0 0 0 16-3584 chrM 9622 0 0 0 0 0 0 0 16-3584 chrM 9623 0 0 0 0 0 0 0 16-3584 chrM 9624 0 0 0 0 0 0 0 16-3584 chrM 9625 0 0 0 0 0 0 0 16-3584 chrM 9626 0 0 0 0 0 0 0 16-3584 chrM 9627 0 0 0 0 0 0 0 16-3584 chrM 9628 0 0 0 0 0 0 0 16-3584 chrM 9629 0 0 0 0 0 0 0 16-3584 chrM 9630 0 0 0 0 0 0 0 16-3584 chrM 9631 0 0 0 0 0 0 0 16-3584 chrM 9632 0 0 0 0 0 0 0 16-3584 chrM 9633 0 0 0 0 0 0 0 16-3584 chrM 9634 0 0 0 0 0 0 0 16-3584 chrM 9635 0 0 0 0 0 0 0 16-3584 chrM 9636 0 0 0 0 0 0 0 16-3584 chrM 9637 0 0 0 0 0 0 0 16-3584 chrM 9638 0 0 0 0 0 0 0 16-3584 chrM 9639 0 0 0 0 0 0 0 16-3584 chrM 9640 0 0 0 0 0 0 0 16-3584 chrM 9641 0 0 0 0 0 0 0 16-3584 chrM 9642 0 0 0 0 0 0 0 16-3584 chrM 9643 0 0 0 0 0 0 0 16-3584 chrM 9644 0 0 0 0 0 0 0 16-3584 chrM 9645 0 0 0 0 0 0 0 16-3584 chrM 9646 0 0 0 0 0 0 0 16-3584 chrM 9647 0 0 0 0 0 0 0 16-3584 chrM 9648 0 0 0 0 0 0 0 16-3584 chrM 9649 0 0 0 0 0 0 0 16-3584 chrM 9650 0 0 0 0 0 0 0 16-3584 chrM 9651 0 0 0 0 0 0 0 16-3584 chrM 9652 0 0 0 0 0 0 0 16-3584 chrM 9653 0 0 0 0 0 0 0 16-3584 chrM 9654 0 0 0 0 0 0 0 16-3584 chrM 9655 0 0 0 0 0 0 0 16-3584 chrM 9656 0 0 0 0 0 0 0 16-3584 chrM 9657 0 0 0 0 0 0 0 16-3584 chrM 9658 0 0 0 0 0 0 0 16-3584 chrM 9659 0 0 0 0 0 0 0 16-3584 chrM 9660 0 0 0 0 0 0 0 16-3584 chrM 9661 0 0 0 0 0 0 0 16-3584 chrM 9662 0 0 0 0 0 0 0 16-3584 chrM 9663 0 0 0 0 0 0 0 16-3584 chrM 9664 0 0 0 0 0 0 0 16-3584 chrM 9665 0 0 0 0 0 0 0 16-3584 chrM 9666 0 0 0 0 0 0 0 16-3584 chrM 9667 0 0 0 0 0 0 0 16-3584 chrM 9668 0 0 0 0 0 0 0 16-3584 chrM 9669 0 0 0 0 0 0 0 16-3584 chrM 9670 0 0 0 0 0 0 0 16-3584 chrM 9671 0 0 0 0 0 0 0 16-3584 chrM 9672 0 0 0 0 0 0 0 16-3584 chrM 9673 0 0 0 0 0 0 0 16-3584 chrM 9674 0 0 0 0 0 0 0 16-3584 chrM 9675 0 0 0 0 0 0 0 16-3584 chrM 9676 0 0 0 0 0 0 0 16-3584 chrM 9677 0 0 0 0 0 0 0 16-3584 chrM 9678 0 0 0 0 0 0 0 16-3584 chrM 9679 0 0 0 0 0 0 0 16-3584 chrM 9680 0 0 0 0 0 0 0 16-3584 chrM 9681 0 0 0 0 0 0 0 16-3584 chrM 9682 0 0 0 0 0 0 0 16-3584 chrM 9683 0 0 0 0 0 0 0 16-3584 chrM 9684 0 0 0 0 0 0 0 16-3584 chrM 9685 0 0 0 0 0 0 0 16-3584 chrM 9686 0 0 0 0 0 0 0 16-3584 chrM 9687 0 0 0 0 0 0 0 16-3584 chrM 9688 0 0 0 0 0 0 0 16-3584 chrM 9689 0 0 0 0 0 0 0 16-3584 chrM 9690 0 0 0 0 0 0 0 16-3584 chrM 9691 0 0 0 0 0 0 0 16-3584 chrM 9692 0 0 0 0 0 0 0 16-3584 chrM 9693 0 0 0 0 0 0 0 16-3584 chrM 9694 0 0 0 0 0 0 0 16-3584 chrM 9695 0 0 0 0 0 0 0 16-3584 chrM 9696 0 0 0 0 0 0 0 16-3584 chrM 9697 0 0 0 0 0 0 0 16-3584 chrM 9698 0 0 0 0 0 0 0 16-3584 chrM 9699 0 0 0 0 0 0 0 16-3584 chrM 9700 0 0 0 0 0 0 0 16-3584 chrM 9701 0 0 0 0 0 0 0 16-3584 chrM 9702 0 0 0 0 0 0 0 16-3584 chrM 9703 0 0 0 0 0 0 0 16-3584 chrM 9704 0 0 0 0 0 0 0 16-3584 chrM 9705 0 0 0 0 0 0 0 16-3584 chrM 9706 0 0 0 0 0 0 0 16-3584 chrM 9707 0 0 0 0 0 0 0 16-3584 chrM 9708 0 0 0 0 0 0 0 16-3584 chrM 9709 0 0 0 0 0 0 0 16-3584 chrM 9710 0 0 0 0 0 0 0 16-3584 chrM 9711 0 0 0 0 0 0 0 16-3584 chrM 9712 0 0 0 0 0 0 0 16-3584 chrM 9713 0 0 0 0 0 0 0 16-3584 chrM 9714 0 0 0 0 0 0 0 16-3584 chrM 9715 0 0 0 0 0 0 0 16-3584 chrM 9716 0 0 0 0 0 0 0 16-3584 chrM 9717 0 0 0 0 0 0 0 16-3584 chrM 9718 0 0 0 0 0 0 0 16-3584 chrM 9719 0 0 0 0 0 0 0 16-3584 chrM 9720 0 0 0 0 0 0 0 16-3584 chrM 9721 0 0 0 0 0 0 0 16-3584 chrM 9722 0 0 0 0 0 0 0 16-3584 chrM 9723 0 0 0 0 0 0 0 16-3584 chrM 9724 0 0 0 0 0 0 0 16-3584 chrM 9725 0 0 0 0 0 0 0 16-3584 chrM 9726 0 0 0 0 0 0 0 16-3584 chrM 9727 0 0 0 0 0 0 0 16-3584 chrM 9728 0 0 0 0 0 0 0 16-3584 chrM 9729 0 0 0 0 0 0 0 16-3584 chrM 9730 0 0 0 0 0 0 0 16-3584 chrM 9731 0 0 0 0 0 0 0 16-3584 chrM 9732 0 0 0 0 0 0 0 16-3584 chrM 9733 0 0 0 0 0 0 0 16-3584 chrM 9734 0 0 0 0 0 0 0 16-3584 chrM 9735 0 0 0 0 0 0 0 16-3584 chrM 9736 0 0 0 0 0 0 0 16-3584 chrM 9737 0 0 0 0 0 0 0 16-3584 chrM 9738 0 0 0 0 0 0 0 16-3584 chrM 9739 0 0 0 0 0 0 0 16-3584 chrM 9740 0 0 0 0 0 0 0 16-3584 chrM 9741 0 0 0 0 0 0 0 16-3584 chrM 9742 0 0 0 0 0 0 0 16-3584 chrM 9743 0 0 0 0 0 0 0 16-3584 chrM 9744 0 0 0 0 0 0 0 16-3584 chrM 9745 0 0 0 0 0 0 0 16-3584 chrM 9746 0 0 0 0 0 0 0 16-3584 chrM 9747 0 0 0 0 0 0 0 16-3584 chrM 9748 0 0 0 0 0 0 0 16-3584 chrM 9749 0 0 0 0 0 0 0 16-3584 chrM 9750 0 0 0 0 0 0 0 16-3584 chrM 9751 0 0 0 0 0 0 0 16-3584 chrM 9752 0 0 0 0 0 0 0 16-3584 chrM 9753 0 0 0 0 0 0 0 16-3584 chrM 9754 0 0 0 0 0 0 0 16-3584 chrM 9755 0 0 0 0 0 0 0 16-3584 chrM 9756 0 0 0 0 0 0 0 16-3584 chrM 9757 0 0 0 0 0 0 0 16-3584 chrM 9758 0 0 0 0 0 0 0 16-3584 chrM 9759 0 0 0 0 0 0 0 16-3584 chrM 9760 0 0 0 0 0 0 0 16-3584 chrM 9761 0 0 0 0 0 0 0 16-3584 chrM 9762 0 0 0 0 0 0 0 16-3584 chrM 9763 0 0 0 0 0 0 0 16-3584 chrM 9764 0 0 0 0 0 0 0 16-3584 chrM 9765 0 0 0 0 0 0 0 16-3584 chrM 9766 0 0 0 0 0 0 0 16-3584 chrM 9767 0 0 0 0 0 0 0 16-3584 chrM 9768 0 0 0 0 0 0 0 16-3584 chrM 9769 0 0 0 0 0 0 0 16-3584 chrM 9770 0 0 0 0 0 0 0 16-3584 chrM 9771 0 0 0 0 0 0 0 16-3584 chrM 9772 0 0 0 0 0 0 0 16-3584 chrM 9773 0 0 0 0 0 0 0 16-3584 chrM 9774 0 0 0 0 0 0 0 16-3584 chrM 9775 0 0 0 0 0 0 0 16-3584 chrM 9776 0 0 0 0 0 0 0 16-3584 chrM 9777 0 0 0 0 0 0 0 16-3584 chrM 9778 0 0 0 0 0 0 0 16-3584 chrM 9779 0 0 0 0 0 0 0 16-3584 chrM 9780 0 0 0 0 0 0 0 16-3584 chrM 9781 0 0 0 0 0 0 0 16-3584 chrM 9782 0 0 0 0 0 0 0 16-3584 chrM 9783 0 0 0 0 0 0 0 16-3584 chrM 9784 0 0 0 0 0 0 0 16-3584 chrM 9785 0 0 0 0 0 0 0 16-3584 chrM 9786 0 0 0 0 0 0 0 16-3584 chrM 9787 0 0 0 0 0 0 0 16-3584 chrM 9788 0 0 0 0 0 0 0 16-3584 chrM 9789 0 0 0 0 0 0 0 16-3584 chrM 9790 0 0 0 0 0 0 0 16-3584 chrM 9791 0 0 0 0 0 0 0 16-3584 chrM 9792 0 0 0 0 0 0 0 16-3584 chrM 9793 0 0 0 0 0 0 0 16-3584 chrM 9794 0 0 0 0 0 0 0 16-3584 chrM 9795 0 0 0 0 0 0 0 16-3584 chrM 9796 0 0 0 0 0 0 0 16-3584 chrM 9797 0 0 0 0 0 0 0 16-3584 chrM 9798 0 0 0 0 0 0 0 16-3584 chrM 9799 0 0 0 0 0 0 0 16-3584 chrM 9800 0 0 0 0 0 0 0 16-3584 chrM 9801 0 0 0 0 0 0 0 16-3584 chrM 9802 0 0 0 0 0 0 0 16-3584 chrM 9803 0 0 0 0 0 0 0 16-3584 chrM 9804 0 0 0 0 0 0 0 16-3584 chrM 9805 0 0 0 0 0 0 0 16-3584 chrM 9806 0 0 0 0 0 0 0 16-3584 chrM 9807 0 0 0 0 0 0 0 16-3584 chrM 9808 0 0 0 0 0 0 0 16-3584 chrM 9809 0 0 0 0 0 0 0 16-3584 chrM 9810 0 0 0 0 0 0 0 16-3584 chrM 9811 0 0 0 0 0 0 0 16-3584 chrM 9812 0 0 0 0 0 0 0 16-3584 chrM 9813 0 0 0 0 0 0 0 16-3584 chrM 9814 0 0 0 0 0 0 0 16-3584 chrM 9815 0 0 0 0 0 0 0 16-3584 chrM 9816 0 0 0 0 0 0 0 16-3584 chrM 9817 0 0 0 0 0 0 0 16-3584 chrM 9818 0 0 0 0 0 0 0 16-3584 chrM 9819 0 0 0 0 0 0 0 16-3584 chrM 9820 0 0 0 0 0 0 0 16-3584 chrM 9821 0 0 0 0 0 0 0 16-3584 chrM 9822 0 0 0 0 0 0 0 16-3584 chrM 9823 0 0 0 0 0 0 0 16-3584 chrM 9824 0 0 0 0 0 0 0 16-3584 chrM 9825 0 0 0 0 0 0 0 16-3584 chrM 9826 0 0 0 0 0 0 0 16-3584 chrM 9827 0 0 0 0 0 0 0 16-3584 chrM 9828 0 0 0 0 0 0 0 16-3584 chrM 9829 0 0 0 0 0 0 0 16-3584 chrM 9830 0 0 0 0 0 0 0 16-3584 chrM 9831 0 0 0 0 0 0 0 16-3584 chrM 9832 0 0 0 0 0 0 0 16-3584 chrM 9833 0 0 0 0 0 0 0 16-3584 chrM 9834 0 0 0 0 0 0 0 16-3584 chrM 9835 0 0 0 0 0 0 0 16-3584 chrM 9836 0 0 0 0 0 0 0 16-3584 chrM 9837 0 0 0 0 0 0 0 16-3584 chrM 9838 0 0 0 0 0 0 0 16-3584 chrM 9839 0 0 0 0 0 0 0 16-3584 chrM 9840 0 0 0 0 0 0 0 16-3584 chrM 9841 0 0 0 0 0 0 0 16-3584 chrM 9842 0 0 0 0 0 0 0 16-3584 chrM 9843 0 0 0 0 0 0 0 16-3584 chrM 9844 0 0 0 0 0 0 0 16-3584 chrM 9845 0 0 0 0 0 0 0 16-3584 chrM 9846 0 0 0 0 0 0 0 16-3584 chrM 9847 0 0 0 0 0 0 0 16-3584 chrM 9848 0 0 0 0 0 0 0 16-3584 chrM 9849 0 0 0 0 0 0 0 16-3584 chrM 9850 0 0 0 0 0 0 0 16-3584 chrM 9851 0 0 0 0 0 0 0 16-3584 chrM 9852 0 0 0 0 0 0 0 16-3584 chrM 9853 0 0 0 0 0 0 0 16-3584 chrM 9854 0 0 0 0 0 0 0 16-3584 chrM 9855 0 0 0 0 0 0 0 16-3584 chrM 9856 0 0 0 0 0 0 0 16-3584 chrM 9857 0 0 0 0 0 0 0 16-3584 chrM 9858 0 0 0 0 0 0 0 16-3584 chrM 9859 0 0 0 0 0 0 0 16-3584 chrM 9860 0 0 0 0 0 0 0 16-3584 chrM 9861 0 0 0 0 0 0 0 16-3584 chrM 9862 0 0 0 0 0 0 0 16-3584 chrM 9863 0 0 0 0 0 0 0 16-3584 chrM 9864 0 0 0 0 0 0 0 16-3584 chrM 9865 0 0 0 0 0 0 0 16-3584 chrM 9866 0 0 0 0 0 0 0 16-3584 chrM 9867 0 0 0 0 0 0 0 16-3584 chrM 9868 0 0 0 0 0 0 0 16-3584 chrM 9869 0 0 0 0 0 0 0 16-3584 chrM 9870 0 0 0 0 0 0 0 16-3584 chrM 9871 0 0 0 0 0 0 0 16-3584 chrM 9872 0 0 0 0 0 0 0 16-3584 chrM 9873 0 0 0 0 0 0 0 16-3584 chrM 9874 0 0 0 0 0 0 0 16-3584 chrM 9875 0 0 0 0 0 0 0 16-3584 chrM 9876 0 0 0 0 0 0 0 16-3584 chrM 9877 0 0 0 0 0 0 0 16-3584 chrM 9878 0 0 0 0 0 0 0 16-3584 chrM 9879 0 0 0 0 0 0 0 16-3584 chrM 9880 0 0 0 0 0 0 0 16-3584 chrM 9881 0 0 0 0 0 0 0 16-3584 chrM 9882 0 0 0 0 0 0 0 16-3584 chrM 9883 0 0 0 0 0 0 0 16-3584 chrM 9884 0 0 0 0 0 0 0 16-3584 chrM 9885 0 0 0 0 0 0 0 16-3584 chrM 9886 0 0 0 0 0 0 0 16-3584 chrM 9887 0 0 0 0 0 0 0 16-3584 chrM 9888 0 0 0 0 0 0 0 16-3584 chrM 9889 0 0 0 0 0 0 0 16-3584 chrM 9890 0 0 0 0 0 0 0 16-3584 chrM 9891 0 0 0 0 0 0 0 16-3584 chrM 9892 0 0 0 0 0 0 0 16-3584 chrM 9893 0 0 0 0 0 0 0 16-3584 chrM 9894 0 0 0 0 0 0 0 16-3584 chrM 9895 0 0 0 0 0 0 0 16-3584 chrM 9896 0 0 0 0 0 0 0 16-3584 chrM 9897 0 0 0 0 0 0 0 16-3584 chrM 9898 0 0 0 0 0 0 0 16-3584 chrM 9899 0 0 0 0 0 0 0 16-3584 chrM 9900 0 0 0 0 0 0 0 16-3584 chrM 9901 0 0 0 0 0 0 0 16-3584 chrM 9902 0 0 0 0 0 0 0 16-3584 chrM 9903 0 0 0 0 0 0 0 16-3584 chrM 9904 0 0 0 0 0 0 0 16-3584 chrM 9905 0 0 0 0 0 0 0 16-3584 chrM 9906 0 0 0 0 0 0 0 16-3584 chrM 9907 0 0 0 0 0 0 0 16-3584 chrM 9908 0 0 0 0 0 0 0 16-3584 chrM 9909 0 0 0 0 0 0 0 16-3584 chrM 9910 0 0 0 0 0 0 0 16-3584 chrM 9911 0 0 0 0 0 0 0 16-3584 chrM 9912 0 0 0 0 0 0 0 16-3584 chrM 9913 0 0 0 0 0 0 0 16-3584 chrM 9914 0 0 0 0 0 0 0 16-3584 chrM 9915 0 0 0 0 0 0 0 16-3584 chrM 9916 0 0 0 0 0 0 0 16-3584 chrM 9917 0 0 0 0 0 0 0 16-3584 chrM 9918 0 0 0 0 0 0 0 16-3584 chrM 9919 0 0 0 0 0 0 0 16-3584 chrM 9920 0 0 0 0 0 0 0 16-3584 chrM 9921 0 0 0 0 0 0 0 16-3584 chrM 9922 0 0 0 0 0 0 0 16-3584 chrM 9923 0 0 0 0 0 0 0 16-3584 chrM 9924 0 0 0 0 0 0 0 16-3584 chrM 9925 0 0 0 0 0 0 0 16-3584 chrM 9926 0 0 0 0 0 0 0 16-3584 chrM 9927 0 0 0 0 0 0 0 16-3584 chrM 9928 0 0 0 0 0 0 0 16-3584 chrM 9929 0 0 0 0 0 0 0 16-3584 chrM 9930 0 0 0 0 0 0 0 16-3584 chrM 9931 0 0 0 0 0 0 0 16-3584 chrM 9932 0 0 0 0 0 0 0 16-3584 chrM 9933 0 0 0 0 0 0 0 16-3584 chrM 9934 0 0 0 0 0 0 0 16-3584 chrM 9935 0 0 0 0 0 0 0 16-3584 chrM 9936 0 0 0 0 0 0 0 16-3584 chrM 9937 0 0 0 0 0 0 0 16-3584 chrM 9938 0 0 0 0 0 0 0 16-3584 chrM 9939 0 0 0 0 0 0 0 16-3584 chrM 9940 0 0 0 0 0 0 0 16-3584 chrM 9941 0 0 0 0 0 0 0 16-3584 chrM 9942 0 0 0 0 0 0 0 16-3584 chrM 9943 0 0 0 0 0 0 0 16-3584 chrM 9944 0 0 0 0 0 0 0 16-3584 chrM 9945 0 0 0 0 0 0 0 16-3584 chrM 9946 0 0 0 0 0 0 0 16-3584 chrM 9947 0 0 0 0 0 0 0 16-3584 chrM 9948 0 0 0 0 0 0 0 16-3584 chrM 9949 0 0 0 0 0 0 0 16-3584 chrM 9950 0 0 0 0 0 0 0 16-3584 chrM 9951 0 0 0 0 0 0 0 16-3584 chrM 9952 0 0 0 0 0 0 0 16-3584 chrM 9953 0 0 0 0 0 0 0 16-3584 chrM 9954 0 0 0 0 0 0 0 16-3584 chrM 9955 0 0 0 0 0 0 0 16-3584 chrM 9956 0 0 0 0 0 0 0 16-3584 chrM 9957 0 0 0 0 0 0 0 16-3584 chrM 9958 0 0 0 0 0 0 0 16-3584 chrM 9959 0 0 0 0 0 0 0 16-3584 chrM 9960 0 0 0 0 0 0 0 16-3584 chrM 9961 0 0 0 0 0 0 0 16-3584 chrM 9962 0 0 0 0 0 0 0 16-3584 chrM 9963 0 0 0 0 0 0 0 16-3584 chrM 9964 0 0 0 0 0 0 0 16-3584 chrM 9965 0 0 0 0 0 0 0 16-3584 chrM 9966 0 0 0 0 0 0 0 16-3584 chrM 9967 0 0 0 0 0 0 0 16-3584 chrM 9968 0 0 0 0 0 0 0 16-3584 chrM 9969 0 0 0 0 0 0 0 16-3584 chrM 9970 0 0 0 0 0 0 0 16-3584 chrM 9971 0 0 0 0 0 0 0 16-3584 chrM 9972 0 0 0 0 0 0 0 16-3584 chrM 9973 0 0 0 0 0 0 0 16-3584 chrM 9974 0 0 0 0 0 0 0 16-3584 chrM 9975 0 0 0 0 0 0 0 16-3584 chrM 9976 0 0 0 0 0 0 0 16-3584 chrM 9977 0 0 0 0 0 0 0 16-3584 chrM 9978 0 0 0 0 0 0 0 16-3584 chrM 9979 0 0 0 0 0 0 0 16-3584 chrM 9980 0 0 0 0 0 0 0 16-3584 chrM 9981 0 0 0 0 0 0 0 16-3584 chrM 9982 0 0 0 0 0 0 0 16-3584 chrM 9983 0 0 0 0 0 0 0 16-3584 chrM 9984 0 0 0 0 0 0 0 16-3584 chrM 9985 0 0 0 0 0 0 0 16-3584 chrM 9986 0 0 0 0 0 0 0 16-3584 chrM 9987 0 0 0 0 0 0 0 16-3584 chrM 9988 0 0 0 0 0 0 0 16-3584 chrM 9989 0 0 0 0 0 0 0 16-3584 chrM 9990 0 0 0 0 0 0 0 16-3584 chrM 9991 0 0 0 0 0 0 0 16-3584 chrM 9992 0 0 0 0 0 0 0 16-3584 chrM 9993 0 0 0 0 0 0 0 16-3584 chrM 9994 0 0 0 0 0 0 0 16-3584 chrM 9995 0 0 0 0 0 0 0 16-3584 chrM 9996 0 0 0 0 0 0 0 16-3584 chrM 9997 0 0 0 0 0 0 0 16-3584 chrM 9998 0 0 0 0 0 0 0 16-3584 chrM 9999 0 0 0 0 0 0 0 16-3584 chrM 10000 0 0 0 0 0 0 0 16-3584 chrM 10001 0 0 0 0 0 0 0 16-3584 chrM 10002 0 0 0 0 0 0 0 16-3584 chrM 10003 0 0 0 0 0 0 0 16-3584 chrM 10004 0 0 0 0 0 0 0 16-3584 chrM 10005 0 0 0 0 0 0 0 16-3584 chrM 10006 0 0 0 0 0 0 0 16-3584 chrM 10007 0 0 0 0 0 0 0 16-3584 chrM 10008 0 0 0 0 0 0 0 16-3584 chrM 10009 0 0 0 0 0 0 0 16-3584 chrM 10010 0 0 0 0 0 0 0 16-3584 chrM 10011 0 0 0 0 0 0 0 16-3584 chrM 10012 0 0 0 0 0 0 0 16-3584 chrM 10013 0 0 0 0 0 0 0 16-3584 chrM 10014 0 0 0 0 0 0 0 16-3584 chrM 10015 0 0 0 0 0 0 0 16-3584 chrM 10016 0 0 0 0 0 0 0 16-3584 chrM 10017 0 0 0 0 0 0 0 16-3584 chrM 10018 0 0 0 0 0 0 0 16-3584 chrM 10019 0 0 0 0 0 0 0 16-3584 chrM 10020 0 0 0 0 0 0 0 16-3584 chrM 10021 0 0 0 0 0 0 0 16-3584 chrM 10022 0 0 0 0 0 0 0 16-3584 chrM 10023 0 0 0 0 0 0 0 16-3584 chrM 10024 0 0 0 0 0 0 0 16-3584 chrM 10025 0 0 0 0 0 0 0 16-3584 chrM 10026 0 0 0 0 0 0 0 16-3584 chrM 10027 0 0 0 0 0 0 0 16-3584 chrM 10028 0 0 0 0 0 0 0 16-3584 chrM 10029 0 0 0 0 0 0 0 16-3584 chrM 10030 0 0 0 0 0 0 0 16-3584 chrM 10031 0 0 0 0 0 0 0 16-3584 chrM 10032 0 0 0 0 0 0 0 16-3584 chrM 10033 0 0 0 0 0 0 0 16-3584 chrM 10034 0 0 0 0 0 0 0 16-3584 chrM 10035 0 0 0 0 0 0 0 16-3584 chrM 10036 0 0 0 0 0 0 0 16-3584 chrM 10037 0 0 0 0 0 0 0 16-3584 chrM 10038 0 0 0 0 0 0 0 16-3584 chrM 10039 0 0 0 0 0 0 0 16-3584 chrM 10040 0 0 0 0 0 0 0 16-3584 chrM 10041 0 0 0 0 0 0 0 16-3584 chrM 10042 0 0 0 0 0 0 0 16-3584 chrM 10043 0 0 0 0 0 0 0 16-3584 chrM 10044 0 0 0 0 0 0 0 16-3584 chrM 10045 0 0 0 0 0 0 0 16-3584 chrM 10046 0 0 0 0 0 0 0 16-3584 chrM 10047 0 0 0 0 0 0 0 16-3584 chrM 10048 0 0 0 0 0 0 0 16-3584 chrM 10049 0 0 0 0 0 0 0 16-3584 chrM 10050 0 0 0 0 0 0 0 16-3584 chrM 10051 0 0 0 0 0 0 0 16-3584 chrM 10052 0 0 0 0 0 0 0 16-3584 chrM 10053 0 0 0 0 0 0 0 16-3584 chrM 10054 0 0 0 0 0 0 0 16-3584 chrM 10055 0 0 0 0 0 0 0 16-3584 chrM 10056 0 0 0 0 0 0 0 16-3584 chrM 10057 0 0 0 0 0 0 0 16-3584 chrM 10058 0 0 0 0 0 0 0 16-3584 chrM 10059 0 0 0 0 0 0 0 16-3584 chrM 10060 0 0 0 0 0 0 0 16-3584 chrM 10061 0 0 0 0 0 0 0 16-3584 chrM 10062 0 0 0 0 0 0 0 16-3584 chrM 10063 0 0 0 0 0 0 0 16-3584 chrM 10064 0 0 0 0 0 0 0 16-3584 chrM 10065 0 0 0 0 0 0 0 16-3584 chrM 10066 0 0 0 0 0 0 0 16-3584 chrM 10067 0 0 0 0 0 0 0 16-3584 chrM 10068 0 0 0 0 0 0 0 16-3584 chrM 10069 0 0 0 0 0 0 0 16-3584 chrM 10070 0 0 0 0 0 0 0 16-3584 chrM 10071 0 0 0 0 0 0 0 16-3584 chrM 10072 0 0 0 0 0 0 0 16-3584 chrM 10073 0 0 0 0 0 0 0 16-3584 chrM 10074 0 0 0 0 0 0 0 16-3584 chrM 10075 0 0 0 0 0 0 0 16-3584 chrM 10076 0 0 0 0 0 0 0 16-3584 chrM 10077 0 0 0 0 0 0 0 16-3584 chrM 10078 0 0 0 0 0 0 0 16-3584 chrM 10079 0 0 0 0 0 0 0 16-3584 chrM 10080 0 0 0 0 0 0 0 16-3584 chrM 10081 0 0 0 0 0 0 0 16-3584 chrM 10082 0 0 0 0 0 0 0 16-3584 chrM 10083 0 0 0 0 0 0 0 16-3584 chrM 10084 0 0 0 0 0 0 0 16-3584 chrM 10085 0 0 0 0 0 0 0 16-3584 chrM 10086 0 0 0 0 0 0 0 16-3584 chrM 10087 0 0 0 0 0 0 0 16-3584 chrM 10088 0 0 0 0 0 0 0 16-3584 chrM 10089 0 0 0 0 0 0 0 16-3584 chrM 10090 0 0 0 0 0 0 0 16-3584 chrM 10091 0 0 0 0 0 0 0 16-3584 chrM 10092 0 0 0 0 0 0 0 16-3584 chrM 10093 0 0 0 0 0 0 0 16-3584 chrM 10094 0 0 0 0 0 0 0 16-3584 chrM 10095 0 0 0 0 0 0 0 16-3584 chrM 10096 0 0 0 0 0 0 0 16-3584 chrM 10097 0 0 0 0 0 0 0 16-3584 chrM 10098 0 0 0 0 0 0 0 16-3584 chrM 10099 0 0 0 0 0 0 0 16-3584 chrM 10100 0 0 0 0 0 0 0 16-3584 chrM 10101 0 0 0 0 0 0 0 16-3584 chrM 10102 0 0 0 0 0 0 0 16-3584 chrM 10103 0 0 0 0 0 0 0 16-3584 chrM 10104 0 0 0 0 0 0 0 16-3584 chrM 10105 0 0 0 0 0 0 0 16-3584 chrM 10106 0 0 0 0 0 0 0 16-3584 chrM 10107 0 0 0 0 0 0 0 16-3584 chrM 10108 0 0 0 0 0 0 0 16-3584 chrM 10109 0 0 0 0 0 0 0 16-3584 chrM 10110 0 0 0 0 0 0 0 16-3584 chrM 10111 0 0 0 0 0 0 0 16-3584 chrM 10112 0 0 0 0 0 0 0 16-3584 chrM 10113 0 0 0 0 0 0 0 16-3584 chrM 10114 0 0 0 0 0 0 0 16-3584 chrM 10115 0 0 0 0 0 0 0 16-3584 chrM 10116 0 0 0 0 0 0 0 16-3584 chrM 10117 0 0 0 0 0 0 0 16-3584 chrM 10118 0 0 0 0 0 0 0 16-3584 chrM 10119 0 0 0 0 0 0 0 16-3584 chrM 10120 0 0 0 0 0 0 0 16-3584 chrM 10121 0 0 0 0 0 0 0 16-3584 chrM 10122 0 0 0 0 0 0 0 16-3584 chrM 10123 0 0 0 0 0 0 0 16-3584 chrM 10124 0 0 0 0 0 0 0 16-3584 chrM 10125 0 0 0 0 0 0 0 16-3584 chrM 10126 0 0 0 0 0 0 0 16-3584 chrM 10127 0 0 0 0 0 0 0 16-3584 chrM 10128 0 0 0 0 0 0 0 16-3584 chrM 10129 0 0 0 0 0 0 0 16-3584 chrM 10130 0 0 0 0 0 0 0 16-3584 chrM 10131 0 0 0 0 0 0 0 16-3584 chrM 10132 0 0 0 0 0 0 0 16-3584 chrM 10133 0 0 0 0 0 0 0 16-3584 chrM 10134 0 0 0 0 0 0 0 16-3584 chrM 10135 0 0 0 0 0 0 0 16-3584 chrM 10136 0 0 0 0 0 0 0 16-3584 chrM 10137 0 0 0 0 0 0 0 16-3584 chrM 10138 0 0 0 0 0 0 0 16-3584 chrM 10139 0 0 0 0 0 0 0 16-3584 chrM 10140 0 0 0 0 0 0 0 16-3584 chrM 10141 0 0 0 0 0 0 0 16-3584 chrM 10142 0 0 0 0 0 0 0 16-3584 chrM 10143 0 0 0 0 0 0 0 16-3584 chrM 10144 0 0 0 0 0 0 0 16-3584 chrM 10145 0 0 0 0 0 0 0 16-3584 chrM 10146 0 0 0 0 0 0 0 16-3584 chrM 10147 0 0 0 0 0 0 0 16-3584 chrM 10148 0 0 0 0 0 0 0 16-3584 chrM 10149 0 0 0 0 0 0 0 16-3584 chrM 10150 0 0 0 0 0 0 0 16-3584 chrM 10151 0 0 0 0 0 0 0 16-3584 chrM 10152 0 0 0 0 0 0 0 16-3584 chrM 10153 0 0 0 0 0 0 0 16-3584 chrM 10154 0 0 0 0 0 0 0 16-3584 chrM 10155 0 0 0 0 0 0 0 16-3584 chrM 10156 0 0 0 0 0 0 0 16-3584 chrM 10157 0 0 0 0 0 0 0 16-3584 chrM 10158 0 0 0 0 0 0 0 16-3584 chrM 10159 0 0 0 0 0 0 0 16-3584 chrM 10160 0 0 0 0 0 0 0 16-3584 chrM 10161 0 0 0 0 0 0 0 16-3584 chrM 10162 0 0 0 0 0 0 0 16-3584 chrM 10163 0 0 0 0 0 0 0 16-3584 chrM 10164 0 0 0 0 0 0 0 16-3584 chrM 10165 0 0 0 0 0 0 0 16-3584 chrM 10166 0 0 0 0 0 0 0 16-3584 chrM 10167 0 0 0 0 0 0 0 16-3584 chrM 10168 0 0 0 0 0 0 0 16-3584 chrM 10169 0 0 0 0 0 0 0 16-3584 chrM 10170 0 0 0 0 0 0 0 16-3584 chrM 10171 0 0 0 0 0 0 0 16-3584 chrM 10172 0 0 0 0 0 0 0 16-3584 chrM 10173 0 0 0 0 0 0 0 16-3584 chrM 10174 0 0 0 0 0 0 0 16-3584 chrM 10175 0 0 0 0 0 0 0 16-3584 chrM 10176 0 0 0 0 0 0 0 16-3584 chrM 10177 0 0 0 0 0 0 0 16-3584 chrM 10178 0 0 0 0 0 0 0 16-3584 chrM 10179 0 0 0 0 0 0 0 16-3584 chrM 10180 0 0 0 0 0 0 0 16-3584 chrM 10181 0 0 0 0 0 0 0 16-3584 chrM 10182 0 0 0 0 0 0 0 16-3584 chrM 10183 0 0 0 0 0 0 0 16-3584 chrM 10184 0 0 0 0 0 0 0 16-3584 chrM 10185 0 0 0 0 0 0 0 16-3584 chrM 10186 0 0 0 0 0 0 0 16-3584 chrM 10187 0 0 0 0 0 0 0 16-3584 chrM 10188 0 0 0 0 0 0 0 16-3584 chrM 10189 0 0 0 0 0 0 0 16-3584 chrM 10190 0 0 0 0 0 0 0 16-3584 chrM 10191 0 0 0 0 0 0 0 16-3584 chrM 10192 0 0 0 0 0 0 0 16-3584 chrM 10193 0 0 0 0 0 0 0 16-3584 chrM 10194 0 0 0 0 0 0 0 16-3584 chrM 10195 0 0 0 0 0 0 0 16-3584 chrM 10196 0 0 0 0 0 0 0 16-3584 chrM 10197 0 0 0 0 0 0 0 16-3584 chrM 10198 0 0 0 0 0 0 0 16-3584 chrM 10199 0 0 0 0 0 0 0 16-3584 chrM 10200 0 0 0 0 0 0 0 16-3584 chrM 10201 0 0 0 0 0 0 0 16-3584 chrM 10202 0 0 0 0 0 0 0 16-3584 chrM 10203 0 0 0 0 0 0 0 16-3584 chrM 10204 0 0 0 0 0 0 0 16-3584 chrM 10205 0 0 0 0 0 0 0 16-3584 chrM 10206 0 0 0 0 0 0 0 16-3584 chrM 10207 0 0 0 0 0 0 0 16-3584 chrM 10208 0 0 0 0 0 0 0 16-3584 chrM 10209 0 0 0 0 0 0 0 16-3584 chrM 10210 0 0 0 0 0 0 0 16-3584 chrM 10211 0 0 0 0 0 0 0 16-3584 chrM 10212 0 0 0 0 0 0 0 16-3584 chrM 10213 0 0 0 0 0 0 0 16-3584 chrM 10214 0 0 0 0 0 0 0 16-3584 chrM 10215 0 0 0 0 0 0 0 16-3584 chrM 10216 0 0 0 0 0 0 0 16-3584 chrM 10217 0 0 0 0 0 0 0 16-3584 chrM 10218 0 0 0 0 0 0 0 16-3584 chrM 10219 0 0 0 0 0 0 0 16-3584 chrM 10220 0 0 0 0 0 0 0 16-3584 chrM 10221 0 0 0 0 0 0 0 16-3584 chrM 10222 0 0 0 0 0 0 0 16-3584 chrM 10223 0 0 0 0 0 0 0 16-3584 chrM 10224 0 0 0 0 0 0 0 16-3584 chrM 10225 0 0 0 0 0 0 0 16-3584 chrM 10226 0 0 0 0 0 0 0 16-3584 chrM 10227 0 0 0 0 0 0 0 16-3584 chrM 10228 0 0 0 0 0 0 0 16-3584 chrM 10229 0 0 0 0 0 0 0 16-3584 chrM 10230 0 0 0 0 0 0 0 16-3584 chrM 10231 0 0 0 0 0 0 0 16-3584 chrM 10232 0 0 0 0 0 0 0 16-3584 chrM 10233 0 0 0 0 0 0 0 16-3584 chrM 10234 0 0 0 0 0 0 0 16-3584 chrM 10235 0 0 0 0 0 0 0 16-3584 chrM 10236 0 0 0 0 0 0 0 16-3584 chrM 10237 0 0 0 0 0 0 0 16-3584 chrM 10238 0 0 0 0 0 0 0 16-3584 chrM 10239 0 0 0 0 0 0 0 16-3584 chrM 10240 0 0 0 0 0 0 0 16-3584 chrM 10241 0 0 0 0 0 0 0 16-3584 chrM 10242 0 0 0 0 0 0 0 16-3584 chrM 10243 0 0 0 0 0 0 0 16-3584 chrM 10244 0 0 0 0 0 0 0 16-3584 chrM 10245 0 0 0 0 0 0 0 16-3584 chrM 10246 0 0 0 0 0 0 0 16-3584 chrM 10247 0 0 0 0 0 0 0 16-3584 chrM 10248 0 0 0 0 0 0 0 16-3584 chrM 10249 0 0 0 0 0 0 0 16-3584 chrM 10250 0 0 0 0 0 0 0 16-3584 chrM 10251 0 0 0 0 0 0 0 16-3584 chrM 10252 0 0 0 0 0 0 0 16-3584 chrM 10253 0 0 0 0 0 0 0 16-3584 chrM 10254 0 0 0 0 0 0 0 16-3584 chrM 10255 0 0 0 0 0 0 0 16-3584 chrM 10256 0 0 0 0 0 0 0 16-3584 chrM 10257 0 0 0 0 0 0 0 16-3584 chrM 10258 0 0 0 0 0 0 0 16-3584 chrM 10259 0 0 0 0 0 0 0 16-3584 chrM 10260 0 0 0 0 0 0 0 16-3584 chrM 10261 0 0 0 0 0 0 0 16-3584 chrM 10262 0 0 0 0 0 0 0 16-3584 chrM 10263 0 0 0 0 0 0 0 16-3584 chrM 10264 0 0 0 0 0 0 0 16-3584 chrM 10265 0 0 0 0 0 0 0 16-3584 chrM 10266 0 0 0 0 0 0 0 16-3584 chrM 10267 0 0 0 0 0 0 0 16-3584 chrM 10268 0 0 0 0 0 0 0 16-3584 chrM 10269 0 0 0 0 0 0 0 16-3584 chrM 10270 0 0 0 0 0 0 0 16-3584 chrM 10271 0 0 0 0 0 0 0 16-3584 chrM 10272 0 0 0 0 0 0 0 16-3584 chrM 10273 0 0 0 0 0 0 0 16-3584 chrM 10274 0 0 0 0 0 0 0 16-3584 chrM 10275 0 0 0 0 0 0 0 16-3584 chrM 10276 0 0 0 0 0 0 0 16-3584 chrM 10277 0 0 0 0 0 0 0 16-3584 chrM 10278 0 0 0 0 0 0 0 16-3584 chrM 10279 0 0 0 0 0 0 0 16-3584 chrM 10280 0 0 0 0 0 0 0 16-3584 chrM 10281 0 0 0 0 0 0 0 16-3584 chrM 10282 0 0 0 0 0 0 0 16-3584 chrM 10283 0 0 0 0 0 0 0 16-3584 chrM 10284 0 0 0 0 0 0 0 16-3584 chrM 10285 0 0 0 0 0 0 0 16-3584 chrM 10286 0 0 0 0 0 0 0 16-3584 chrM 10287 0 0 0 0 0 0 0 16-3584 chrM 10288 0 0 0 0 0 0 0 16-3584 chrM 10289 0 0 0 0 0 0 0 16-3584 chrM 10290 0 0 0 0 0 0 0 16-3584 chrM 10291 0 0 0 0 0 0 0 16-3584 chrM 10292 0 0 0 0 0 0 0 16-3584 chrM 10293 0 0 0 0 0 0 0 16-3584 chrM 10294 0 0 0 0 0 0 0 16-3584 chrM 10295 0 0 0 0 0 0 0 16-3584 chrM 10296 0 0 0 0 0 0 0 16-3584 chrM 10297 0 0 0 0 0 0 0 16-3584 chrM 10298 0 0 0 0 0 0 0 16-3584 chrM 10299 0 0 0 0 0 0 0 16-3584 chrM 10300 0 0 0 0 0 0 0 16-3584 chrM 10301 0 0 0 0 0 0 0 16-3584 chrM 10302 0 0 0 0 0 0 0 16-3584 chrM 10303 0 0 0 0 0 0 0 16-3584 chrM 10304 0 0 0 0 0 0 0 16-3584 chrM 10305 0 0 0 0 0 0 0 16-3584 chrM 10306 0 0 0 0 0 0 0 16-3584 chrM 10307 0 0 0 0 0 0 0 16-3584 chrM 10308 0 0 0 0 0 0 0 16-3584 chrM 10309 0 0 0 0 0 0 0 16-3584 chrM 10310 0 0 0 0 0 0 0 16-3584 chrM 10311 0 0 0 0 0 0 0 16-3584 chrM 10312 0 0 0 0 0 0 0 16-3584 chrM 10313 0 0 0 0 0 0 0 16-3584 chrM 10314 0 0 0 0 0 0 0 16-3584 chrM 10315 0 0 0 0 0 0 0 16-3584 chrM 10316 0 0 0 0 0 0 0 16-3584 chrM 10317 0 0 0 0 0 0 0 16-3584 chrM 10318 0 0 0 0 0 0 0 16-3584 chrM 10319 0 0 0 0 0 0 0 16-3584 chrM 10320 0 0 0 0 0 0 0 16-3584 chrM 10321 0 0 0 0 0 0 0 16-3584 chrM 10322 0 0 0 0 0 0 0 16-3584 chrM 10323 0 0 0 0 0 0 0 16-3584 chrM 10324 0 0 0 0 0 0 0 16-3584 chrM 10325 0 0 0 0 0 0 0 16-3584 chrM 10326 0 0 0 0 0 0 0 16-3584 chrM 10327 0 0 0 0 0 0 0 16-3584 chrM 10328 0 0 0 0 0 0 0 16-3584 chrM 10329 0 0 0 0 0 0 0 16-3584 chrM 10330 0 0 0 0 0 0 0 16-3584 chrM 10331 0 0 0 0 0 0 0 16-3584 chrM 10332 0 0 0 0 0 0 0 16-3584 chrM 10333 0 0 0 0 0 0 0 16-3584 chrM 10334 0 0 0 0 0 0 0 16-3584 chrM 10335 0 0 0 0 0 0 0 16-3584 chrM 10336 0 0 0 0 0 0 0 16-3584 chrM 10337 0 0 0 0 0 0 0 16-3584 chrM 10338 0 0 0 0 0 0 0 16-3584 chrM 10339 0 0 0 0 0 0 0 16-3584 chrM 10340 0 0 0 0 0 0 0 16-3584 chrM 10341 0 0 0 0 0 0 0 16-3584 chrM 10342 0 0 0 0 0 0 0 16-3584 chrM 10343 0 0 0 0 0 0 0 16-3584 chrM 10344 0 0 0 0 0 0 0 16-3584 chrM 10345 0 0 0 0 0 0 0 16-3584 chrM 10346 0 0 0 0 0 0 0 16-3584 chrM 10347 0 0 0 0 0 0 0 16-3584 chrM 10348 0 0 0 0 0 0 0 16-3584 chrM 10349 0 0 0 0 0 0 0 16-3584 chrM 10350 0 0 0 0 0 0 0 16-3584 chrM 10351 0 0 0 0 0 0 0 16-3584 chrM 10352 0 0 0 0 0 0 0 16-3584 chrM 10353 0 0 0 0 0 0 0 16-3584 chrM 10354 0 0 0 0 0 0 0 16-3584 chrM 10355 0 0 0 0 0 0 0 16-3584 chrM 10356 0 0 0 0 0 0 0 16-3584 chrM 10357 0 0 0 0 0 0 0 16-3584 chrM 10358 0 0 0 0 0 0 0 16-3584 chrM 10359 0 0 0 0 0 0 0 16-3584 chrM 10360 0 0 0 0 0 0 0 16-3584 chrM 10361 0 0 0 0 0 0 0 16-3584 chrM 10362 0 0 0 0 0 0 0 16-3584 chrM 10363 0 0 0 0 0 0 0 16-3584 chrM 10364 0 0 0 0 0 0 0 16-3584 chrM 10365 0 0 0 0 0 0 0 16-3584 chrM 10366 0 0 0 0 0 0 0 16-3584 chrM 10367 0 0 0 0 0 0 0 16-3584 chrM 10368 0 0 0 0 0 0 0 16-3584 chrM 10369 0 0 0 0 0 0 0 16-3584 chrM 10370 0 0 0 0 0 0 0 16-3584 chrM 10371 0 0 0 0 0 0 0 16-3584 chrM 10372 0 0 0 0 0 0 0 16-3584 chrM 10373 0 0 0 0 0 0 0 16-3584 chrM 10374 0 0 0 0 0 0 0 16-3584 chrM 10375 0 0 0 0 0 0 0 16-3584 chrM 10376 0 0 0 0 0 0 0 16-3584 chrM 10377 0 0 0 0 0 0 0 16-3584 chrM 10378 0 0 0 0 0 0 0 16-3584 chrM 10379 0 0 0 0 0 0 0 16-3584 chrM 10380 0 0 0 0 0 0 0 16-3584 chrM 10381 0 0 0 0 0 0 0 16-3584 chrM 10382 0 0 0 0 0 0 0 16-3584 chrM 10383 0 0 0 0 0 0 0 16-3584 chrM 10384 0 0 0 0 0 0 0 16-3584 chrM 10385 0 0 0 0 0 0 0 16-3584 chrM 10386 0 0 0 0 0 0 0 16-3584 chrM 10387 0 0 0 0 0 0 0 16-3584 chrM 10388 0 0 0 0 0 0 0 16-3584 chrM 10389 0 0 0 0 0 0 0 16-3584 chrM 10390 0 0 0 0 0 0 0 16-3584 chrM 10391 0 0 0 0 0 0 0 16-3584 chrM 10392 0 0 0 0 0 0 0 16-3584 chrM 10393 0 0 0 0 0 0 0 16-3584 chrM 10394 0 0 0 0 0 0 0 16-3584 chrM 10395 0 0 0 0 0 0 0 16-3584 chrM 10396 0 0 0 0 0 0 0 16-3584 chrM 10397 0 0 0 0 0 0 0 16-3584 chrM 10398 0 0 0 0 0 0 0 16-3584 chrM 10399 0 0 0 0 0 0 0 16-3584 chrM 10400 0 0 0 0 0 0 0 16-3584 chrM 10401 0 0 0 0 0 0 0 16-3584 chrM 10402 0 0 0 0 0 0 0 16-3584 chrM 10403 0 0 0 0 0 0 0 16-3584 chrM 10404 0 0 0 0 0 0 0 16-3584 chrM 10405 0 0 0 0 0 0 0 16-3584 chrM 10406 0 0 0 0 0 0 0 16-3584 chrM 10407 0 0 0 0 0 0 0 16-3584 chrM 10408 0 0 0 0 0 0 0 16-3584 chrM 10409 0 0 0 0 0 0 0 16-3584 chrM 10410 0 0 0 0 0 0 0 16-3584 chrM 10411 0 0 0 0 0 0 0 16-3584 chrM 10412 0 0 0 0 0 0 0 16-3584 chrM 10413 0 0 0 0 0 0 0 16-3584 chrM 10414 0 0 0 0 0 0 0 16-3584 chrM 10415 0 0 0 0 0 0 0 16-3584 chrM 10416 0 0 0 0 0 0 0 16-3584 chrM 10417 0 0 0 0 0 0 0 16-3584 chrM 10418 0 0 0 0 0 0 0 16-3584 chrM 10419 0 0 0 0 0 0 0 16-3584 chrM 10420 0 0 0 0 0 0 0 16-3584 chrM 10421 0 0 0 0 0 0 0 16-3584 chrM 10422 0 0 0 0 0 0 0 16-3584 chrM 10423 0 0 0 0 0 0 0 16-3584 chrM 10424 0 0 0 0 0 0 0 16-3584 chrM 10425 0 0 0 0 0 0 0 16-3584 chrM 10426 0 0 0 0 0 0 0 16-3584 chrM 10427 0 0 0 0 0 0 0 16-3584 chrM 10428 0 0 0 0 0 0 0 16-3584 chrM 10429 0 0 0 0 0 0 0 16-3584 chrM 10430 0 0 0 0 0 0 0 16-3584 chrM 10431 0 0 0 0 0 0 0 16-3584 chrM 10432 0 0 0 0 0 0 0 16-3584 chrM 10433 0 0 0 0 0 0 0 16-3584 chrM 10434 0 0 0 0 0 0 0 16-3584 chrM 10435 0 0 0 0 0 0 0 16-3584 chrM 10436 0 0 0 0 0 0 0 16-3584 chrM 10437 0 0 0 0 0 0 0 16-3584 chrM 10438 0 0 0 0 0 0 0 16-3584 chrM 10439 0 0 0 0 0 0 0 16-3584 chrM 10440 0 0 0 0 0 0 0 16-3584 chrM 10441 0 0 0 0 0 0 0 16-3584 chrM 10442 0 0 0 0 0 0 0 16-3584 chrM 10443 0 0 0 0 0 0 0 16-3584 chrM 10444 0 0 0 0 0 0 0 16-3584 chrM 10445 0 0 0 0 0 0 0 16-3584 chrM 10446 0 0 0 0 0 0 0 16-3584 chrM 10447 0 0 0 0 0 0 0 16-3584 chrM 10448 0 0 0 0 0 0 0 16-3584 chrM 10449 0 0 0 0 0 0 0 16-3584 chrM 10450 0 0 0 0 0 0 0 16-3584 chrM 10451 0 0 0 0 0 0 0 16-3584 chrM 10452 0 0 0 0 0 0 0 16-3584 chrM 10453 0 0 0 0 0 0 0 16-3584 chrM 10454 0 0 0 0 0 0 0 16-3584 chrM 10455 0 0 0 0 0 0 0 16-3584 chrM 10456 0 0 0 0 0 0 0 16-3584 chrM 10457 0 0 0 0 0 0 0 16-3584 chrM 10458 0 0 0 0 0 0 0 16-3584 chrM 10459 0 0 0 0 0 0 0 16-3584 chrM 10460 0 0 0 0 0 0 0 16-3584 chrM 10461 0 0 0 0 0 0 0 16-3584 chrM 10462 0 0 0 0 0 0 0 16-3584 chrM 10463 0 0 0 0 0 0 0 16-3584 chrM 10464 0 0 0 0 0 0 0 16-3584 chrM 10465 0 0 0 0 0 0 0 16-3584 chrM 10466 0 0 0 0 0 0 0 16-3584 chrM 10467 0 0 0 0 0 0 0 16-3584 chrM 10468 0 0 0 0 0 0 0 16-3584 chrM 10469 0 0 0 0 0 0 0 16-3584 chrM 10470 0 0 0 0 0 0 0 16-3584 chrM 10471 0 0 0 0 0 0 0 16-3584 chrM 10472 0 0 0 0 0 0 0 16-3584 chrM 10473 0 0 0 0 0 0 0 16-3584 chrM 10474 0 0 0 0 0 0 0 16-3584 chrM 10475 0 0 0 0 0 0 0 16-3584 chrM 10476 0 0 0 0 0 0 0 16-3584 chrM 10477 0 0 0 0 0 0 0 16-3584 chrM 10478 0 0 0 0 0 0 0 16-3584 chrM 10479 0 0 0 0 0 0 0 16-3584 chrM 10480 0 0 0 0 0 0 0 16-3584 chrM 10481 0 0 0 0 0 0 0 16-3584 chrM 10482 0 0 0 0 0 0 0 16-3584 chrM 10483 0 0 0 0 0 0 0 16-3584 chrM 10484 0 0 0 0 0 0 0 16-3584 chrM 10485 0 0 0 0 0 0 0 16-3584 chrM 10486 0 0 0 0 0 0 0 16-3584 chrM 10487 0 0 0 0 0 0 0 16-3584 chrM 10488 0 0 0 0 0 0 0 16-3584 chrM 10489 0 0 0 0 0 0 0 16-3584 chrM 10490 0 0 0 0 0 0 0 16-3584 chrM 10491 0 0 0 0 0 0 0 16-3584 chrM 10492 0 0 0 0 0 0 0 16-3584 chrM 10493 0 0 0 0 0 0 0 16-3584 chrM 10494 0 0 0 0 0 0 0 16-3584 chrM 10495 0 0 0 0 0 0 0 16-3584 chrM 10496 0 0 0 0 0 0 0 16-3584 chrM 10497 0 0 0 0 0 0 0 16-3584 chrM 10498 0 0 0 0 0 0 0 16-3584 chrM 10499 0 0 0 0 0 0 0 16-3584 chrM 10500 0 0 0 0 0 0 0 16-3584 chrM 10501 0 0 0 0 0 0 0 16-3584 chrM 10502 0 0 0 0 0 0 0 16-3584 chrM 10503 0 0 0 0 0 0 0 16-3584 chrM 10504 0 0 0 0 0 0 0 16-3584 chrM 10505 0 0 0 0 0 0 0 16-3584 chrM 10506 0 0 0 0 0 0 0 16-3584 chrM 10507 0 0 0 0 0 0 0 16-3584 chrM 10508 0 0 0 0 0 0 0 16-3584 chrM 10509 0 0 0 0 0 0 0 16-3584 chrM 10510 0 0 0 0 0 0 0 16-3584 chrM 10511 0 0 0 0 0 0 0 16-3584 chrM 10512 0 0 0 0 0 0 0 16-3584 chrM 10513 0 0 0 0 0 0 0 16-3584 chrM 10514 0 0 0 0 0 0 0 16-3584 chrM 10515 0 0 0 0 0 0 0 16-3584 chrM 10516 0 0 0 0 0 0 0 16-3584 chrM 10517 0 0 0 0 0 0 0 16-3584 chrM 10518 0 0 0 0 0 0 0 16-3584 chrM 10519 0 0 0 0 0 0 0 16-3584 chrM 10520 0 0 0 0 0 0 0 16-3584 chrM 10521 0 0 0 0 0 0 0 16-3584 chrM 10522 0 0 0 0 0 0 0 16-3584 chrM 10523 0 0 0 0 0 0 0 16-3584 chrM 10524 0 0 0 0 0 0 0 16-3584 chrM 10525 0 0 0 0 0 0 0 16-3584 chrM 10526 0 0 0 0 0 0 0 16-3584 chrM 10527 0 0 0 0 0 0 0 16-3584 chrM 10528 0 0 0 0 0 0 0 16-3584 chrM 10529 0 0 0 0 0 0 0 16-3584 chrM 10530 0 0 0 0 0 0 0 16-3584 chrM 10531 0 0 0 0 0 0 0 16-3584 chrM 10532 0 0 0 0 0 0 0 16-3584 chrM 10533 0 0 0 0 0 0 0 16-3584 chrM 10534 0 0 0 0 0 0 0 16-3584 chrM 10535 0 0 0 0 0 0 0 16-3584 chrM 10536 0 0 0 0 0 0 0 16-3584 chrM 10537 0 0 0 0 0 0 0 16-3584 chrM 10538 0 0 0 0 0 0 0 16-3584 chrM 10539 0 0 0 0 0 0 0 16-3584 chrM 10540 0 0 0 0 0 0 0 16-3584 chrM 10541 0 0 0 0 0 0 0 16-3584 chrM 10542 0 0 0 0 0 0 0 16-3584 chrM 10543 0 0 0 0 0 0 0 16-3584 chrM 10544 0 0 0 0 0 0 0 16-3584 chrM 10545 0 0 0 0 0 0 0 16-3584 chrM 10546 0 0 0 0 0 0 0 16-3584 chrM 10547 0 0 0 0 0 0 0 16-3584 chrM 10548 0 0 0 0 0 0 0 16-3584 chrM 10549 0 0 0 0 0 0 0 16-3584 chrM 10550 0 0 0 0 0 0 0 16-3584 chrM 10551 0 0 0 0 0 0 0 16-3584 chrM 10552 0 0 0 0 0 0 0 16-3584 chrM 10553 0 0 0 0 0 0 0 16-3584 chrM 10554 0 0 0 0 0 0 0 16-3584 chrM 10555 0 0 0 0 0 0 0 16-3584 chrM 10556 0 0 0 0 0 0 0 16-3584 chrM 10557 0 0 0 0 0 0 0 16-3584 chrM 10558 0 0 0 0 0 0 0 16-3584 chrM 10559 0 0 0 0 0 0 0 16-3584 chrM 10560 0 0 0 0 0 0 0 16-3584 chrM 10561 0 0 0 0 0 0 0 16-3584 chrM 10562 0 0 0 0 0 0 0 16-3584 chrM 10563 0 0 0 0 0 0 0 16-3584 chrM 10564 0 0 0 0 0 0 0 16-3584 chrM 10565 0 0 0 0 0 0 0 16-3584 chrM 10566 0 0 0 0 0 0 0 16-3584 chrM 10567 0 0 0 0 0 0 0 16-3584 chrM 10568 0 0 0 0 0 0 0 16-3584 chrM 10569 0 0 0 0 0 0 0 16-3584 chrM 10570 0 0 0 0 0 0 0 16-3584 chrM 10571 0 0 0 0 0 0 0 16-3584 chrM 10572 0 0 0 0 0 0 0 16-3584 chrM 10573 0 0 0 0 0 0 0 16-3584 chrM 10574 0 0 0 0 0 0 0 16-3584 chrM 10575 0 0 0 0 0 0 0 16-3584 chrM 10576 0 0 0 0 0 0 0 16-3584 chrM 10577 0 0 0 0 0 0 0 16-3584 chrM 10578 0 0 0 0 0 0 0 16-3584 chrM 10579 0 0 0 0 0 0 0 16-3584 chrM 10580 0 0 0 0 0 0 0 16-3584 chrM 10581 0 0 0 0 0 0 0 16-3584 chrM 10582 0 0 0 0 0 0 0 16-3584 chrM 10583 0 0 0 0 0 0 0 16-3584 chrM 10584 0 0 0 0 0 0 0 16-3584 chrM 10585 0 0 0 0 0 0 0 16-3584 chrM 10586 0 0 0 0 0 0 0 16-3584 chrM 10587 0 0 0 0 0 0 0 16-3584 chrM 10588 0 0 0 0 0 0 0 16-3584 chrM 10589 0 0 0 0 0 0 0 16-3584 chrM 10590 0 0 0 0 0 0 0 16-3584 chrM 10591 0 0 0 0 0 0 0 16-3584 chrM 10592 0 0 0 0 0 0 0 16-3584 chrM 10593 0 0 0 0 0 0 0 16-3584 chrM 10594 0 0 0 0 0 0 0 16-3584 chrM 10595 0 0 0 0 0 0 0 16-3584 chrM 10596 0 0 0 0 0 0 0 16-3584 chrM 10597 0 0 0 0 0 0 0 16-3584 chrM 10598 0 0 0 0 0 0 0 16-3584 chrM 10599 0 0 0 0 0 0 0 16-3584 chrM 10600 0 0 0 0 0 0 0 16-3584 chrM 10601 0 0 0 0 0 0 0 16-3584 chrM 10602 0 0 0 0 0 0 0 16-3584 chrM 10603 0 0 0 0 0 0 0 16-3584 chrM 10604 0 0 0 0 0 0 0 16-3584 chrM 10605 0 0 0 0 0 0 0 16-3584 chrM 10606 0 0 0 0 0 0 0 16-3584 chrM 10607 0 0 0 0 0 0 0 16-3584 chrM 10608 0 0 0 0 0 0 0 16-3584 chrM 10609 0 0 0 0 0 0 0 16-3584 chrM 10610 0 0 0 0 0 0 0 16-3584 chrM 10611 0 0 0 0 0 0 0 16-3584 chrM 10612 0 0 0 0 0 0 0 16-3584 chrM 10613 0 0 0 0 0 0 0 16-3584 chrM 10614 0 0 0 0 0 0 0 16-3584 chrM 10615 0 0 0 0 0 0 0 16-3584 chrM 10616 0 0 0 0 0 0 0 16-3584 chrM 10617 0 0 0 0 0 0 0 16-3584 chrM 10618 0 0 0 0 0 0 0 16-3584 chrM 10619 0 0 0 0 0 0 0 16-3584 chrM 10620 0 0 0 0 0 0 0 16-3584 chrM 10621 0 0 0 0 0 0 0 16-3584 chrM 10622 0 0 0 0 0 0 0 16-3584 chrM 10623 0 0 0 0 0 0 0 16-3584 chrM 10624 0 0 0 0 0 0 0 16-3584 chrM 10625 0 0 0 0 0 0 0 16-3584 chrM 10626 0 0 0 0 0 0 0 16-3584 chrM 10627 0 0 0 0 0 0 0 16-3584 chrM 10628 0 0 0 0 0 0 0 16-3584 chrM 10629 0 0 0 0 0 0 0 16-3584 chrM 10630 0 0 0 0 0 0 0 16-3584 chrM 10631 0 0 0 0 0 0 0 16-3584 chrM 10632 0 0 0 0 0 0 0 16-3584 chrM 10633 0 0 0 0 0 0 0 16-3584 chrM 10634 0 0 0 0 0 0 0 16-3584 chrM 10635 0 0 0 0 0 0 0 16-3584 chrM 10636 0 0 0 0 0 0 0 16-3584 chrM 10637 0 0 0 0 0 0 0 16-3584 chrM 10638 0 0 0 0 0 0 0 16-3584 chrM 10639 0 0 0 0 0 0 0 16-3584 chrM 10640 0 0 0 0 0 0 0 16-3584 chrM 10641 0 0 0 0 0 0 0 16-3584 chrM 10642 0 0 0 0 0 0 0 16-3584 chrM 10643 0 0 0 0 0 0 0 16-3584 chrM 10644 0 0 0 0 0 0 0 16-3584 chrM 10645 0 0 0 0 0 0 0 16-3584 chrM 10646 0 0 0 0 0 0 0 16-3584 chrM 10647 0 0 0 0 0 0 0 16-3584 chrM 10648 0 0 0 0 0 0 0 16-3584 chrM 10649 0 0 0 0 0 0 0 16-3584 chrM 10650 0 0 0 0 0 0 0 16-3584 chrM 10651 0 0 0 0 0 0 0 16-3584 chrM 10652 0 0 0 0 0 0 0 16-3584 chrM 10653 0 0 0 0 0 0 0 16-3584 chrM 10654 0 0 0 0 0 0 0 16-3584 chrM 10655 0 0 0 0 0 0 0 16-3584 chrM 10656 0 0 0 0 0 0 0 16-3584 chrM 10657 0 0 0 0 0 0 0 16-3584 chrM 10658 0 0 0 0 0 0 0 16-3584 chrM 10659 0 0 0 0 0 0 0 16-3584 chrM 10660 0 0 0 0 0 0 0 16-3584 chrM 10661 0 0 0 0 0 0 0 16-3584 chrM 10662 0 0 0 0 0 0 0 16-3584 chrM 10663 0 0 0 0 0 0 0 16-3584 chrM 10664 0 0 0 0 0 0 0 16-3584 chrM 10665 0 0 0 0 0 0 0 16-3584 chrM 10666 0 0 0 0 0 0 0 16-3584 chrM 10667 0 0 0 0 0 0 0 16-3584 chrM 10668 0 0 0 0 0 0 0 16-3584 chrM 10669 0 0 0 0 0 0 0 16-3584 chrM 10670 0 0 0 0 0 0 0 16-3584 chrM 10671 0 0 0 0 0 0 0 16-3584 chrM 10672 0 0 0 0 0 0 0 16-3584 chrM 10673 0 0 0 0 0 0 0 16-3584 chrM 10674 0 0 0 0 0 0 0 16-3584 chrM 10675 0 0 0 0 0 0 0 16-3584 chrM 10676 0 0 0 0 0 0 0 16-3584 chrM 10677 0 0 0 0 0 0 0 16-3584 chrM 10678 0 0 0 0 0 0 0 16-3584 chrM 10679 0 0 0 0 0 0 0 16-3584 chrM 10680 0 0 0 0 0 0 0 16-3584 chrM 10681 0 0 0 0 0 0 0 16-3584 chrM 10682 0 0 0 0 0 0 0 16-3584 chrM 10683 0 0 0 0 0 0 0 16-3584 chrM 10684 0 0 0 0 0 0 0 16-3584 chrM 10685 0 0 0 0 0 0 0 16-3584 chrM 10686 0 0 0 0 0 0 0 16-3584 chrM 10687 0 0 0 0 0 0 0 16-3584 chrM 10688 0 0 0 0 0 0 0 16-3584 chrM 10689 0 0 0 0 0 0 0 16-3584 chrM 10690 0 0 0 0 0 0 0 16-3584 chrM 10691 0 0 0 0 0 0 0 16-3584 chrM 10692 0 0 0 0 0 0 0 16-3584 chrM 10693 0 0 0 0 0 0 0 16-3584 chrM 10694 0 0 0 0 0 0 0 16-3584 chrM 10695 0 0 0 0 0 0 0 16-3584 chrM 10696 0 0 0 0 0 0 0 16-3584 chrM 10697 0 0 0 0 0 0 0 16-3584 chrM 10698 0 0 0 0 0 0 0 16-3584 chrM 10699 0 0 0 0 0 0 0 16-3584 chrM 10700 0 0 0 0 0 0 0 16-3584 chrM 10701 0 0 0 0 0 0 0 16-3584 chrM 10702 0 0 0 0 0 0 0 16-3584 chrM 10703 0 0 0 0 0 0 0 16-3584 chrM 10704 0 0 0 0 0 0 0 16-3584 chrM 10705 0 0 0 0 0 0 0 16-3584 chrM 10706 0 0 0 0 0 0 0 16-3584 chrM 10707 0 0 0 0 0 0 0 16-3584 chrM 10708 0 0 0 0 0 0 0 16-3584 chrM 10709 0 0 0 0 0 0 0 16-3584 chrM 10710 0 0 0 0 0 0 0 16-3584 chrM 10711 0 0 0 0 0 0 0 16-3584 chrM 10712 0 0 0 0 0 0 0 16-3584 chrM 10713 0 0 0 0 0 0 0 16-3584 chrM 10714 0 0 0 0 0 0 0 16-3584 chrM 10715 0 0 0 0 0 0 0 16-3584 chrM 10716 0 0 0 0 0 0 0 16-3584 chrM 10717 0 0 0 0 0 0 0 16-3584 chrM 10718 0 0 0 0 0 0 0 16-3584 chrM 10719 0 0 0 0 0 0 0 16-3584 chrM 10720 0 0 0 0 0 0 0 16-3584 chrM 10721 0 0 0 0 0 0 0 16-3584 chrM 10722 0 0 0 0 0 0 0 16-3584 chrM 10723 0 0 0 0 0 0 0 16-3584 chrM 10724 0 0 0 0 0 0 0 16-3584 chrM 10725 0 0 0 0 0 0 0 16-3584 chrM 10726 0 0 0 0 0 0 0 16-3584 chrM 10727 0 0 0 0 0 0 0 16-3584 chrM 10728 0 0 0 0 0 0 0 16-3584 chrM 10729 0 0 0 0 0 0 0 16-3584 chrM 10730 0 0 0 0 0 0 0 16-3584 chrM 10731 0 0 0 0 0 0 0 16-3584 chrM 10732 0 0 0 0 0 0 0 16-3584 chrM 10733 0 0 0 0 0 0 0 16-3584 chrM 10734 0 0 0 0 0 0 0 16-3584 chrM 10735 0 0 0 0 0 0 0 16-3584 chrM 10736 0 0 0 0 0 0 0 16-3584 chrM 10737 0 0 0 0 0 0 0 16-3584 chrM 10738 0 0 0 0 0 0 0 16-3584 chrM 10739 0 0 0 0 0 0 0 16-3584 chrM 10740 0 0 0 0 0 0 0 16-3584 chrM 10741 0 0 0 0 0 0 0 16-3584 chrM 10742 0 0 0 0 0 0 0 16-3584 chrM 10743 0 0 0 0 0 0 0 16-3584 chrM 10744 0 0 0 0 0 0 0 16-3584 chrM 10745 0 0 0 0 0 0 0 16-3584 chrM 10746 0 0 0 0 0 0 0 16-3584 chrM 10747 0 0 0 0 0 0 0 16-3584 chrM 10748 0 0 0 0 0 0 0 16-3584 chrM 10749 0 0 0 0 0 0 0 16-3584 chrM 10750 0 0 0 0 0 0 0 16-3584 chrM 10751 0 0 0 0 0 0 0 16-3584 chrM 10752 0 0 0 0 0 0 0 16-3584 chrM 10753 0 0 0 0 0 0 0 16-3584 chrM 10754 0 0 0 0 0 0 0 16-3584 chrM 10755 0 0 0 0 0 0 0 16-3584 chrM 10756 0 0 0 0 0 0 0 16-3584 chrM 10757 0 0 0 0 0 0 0 16-3584 chrM 10758 0 0 0 0 0 0 0 16-3584 chrM 10759 0 0 0 0 0 0 0 16-3584 chrM 10760 0 0 0 0 0 0 0 16-3584 chrM 10761 0 0 0 0 0 0 0 16-3584 chrM 10762 0 0 0 0 0 0 0 16-3584 chrM 10763 0 0 0 0 0 0 0 16-3584 chrM 10764 0 0 0 0 0 0 0 16-3584 chrM 10765 0 0 0 0 0 0 0 16-3584 chrM 10766 0 0 0 0 0 0 0 16-3584 chrM 10767 0 0 0 0 0 0 0 16-3584 chrM 10768 0 0 0 0 0 0 0 16-3584 chrM 10769 0 0 0 0 0 0 0 16-3584 chrM 10770 0 0 0 0 0 0 0 16-3584 chrM 10771 0 0 0 0 0 0 0 16-3584 chrM 10772 0 0 0 0 0 0 0 16-3584 chrM 10773 0 0 0 0 0 0 0 16-3584 chrM 10774 0 0 0 0 0 0 0 16-3584 chrM 10775 0 0 0 0 0 0 0 16-3584 chrM 10776 0 0 0 0 0 0 0 16-3584 chrM 10777 0 0 0 0 0 0 0 16-3584 chrM 10778 0 0 0 0 0 0 0 16-3584 chrM 10779 0 0 0 0 0 0 0 16-3584 chrM 10780 0 0 0 0 0 0 0 16-3584 chrM 10781 0 0 0 0 0 0 0 16-3584 chrM 10782 0 0 0 0 0 0 0 16-3584 chrM 10783 0 0 0 0 0 0 0 16-3584 chrM 10784 0 0 0 0 0 0 0 16-3584 chrM 10785 0 0 0 0 0 0 0 16-3584 chrM 10786 0 0 0 0 0 0 0 16-3584 chrM 10787 0 0 0 0 0 0 0 16-3584 chrM 10788 0 0 0 0 0 0 0 16-3584 chrM 10789 0 0 0 0 0 0 0 16-3584 chrM 10790 0 0 0 0 0 0 0 16-3584 chrM 10791 0 0 0 0 0 0 0 16-3584 chrM 10792 0 0 0 0 0 0 0 16-3584 chrM 10793 0 0 0 0 0 0 0 16-3584 chrM 10794 0 0 0 0 0 0 0 16-3584 chrM 10795 0 0 0 0 0 0 0 16-3584 chrM 10796 0 0 0 0 0 0 0 16-3584 chrM 10797 0 0 0 0 0 0 0 16-3584 chrM 10798 0 0 0 0 0 0 0 16-3584 chrM 10799 0 0 0 0 0 0 0 16-3584 chrM 10800 0 0 0 0 0 0 0 16-3584 chrM 10801 0 0 0 0 0 0 0 16-3584 chrM 10802 0 0 0 0 0 0 0 16-3584 chrM 10803 0 0 0 0 0 0 0 16-3584 chrM 10804 0 0 0 0 0 0 0 16-3584 chrM 10805 0 0 0 0 0 0 0 16-3584 chrM 10806 0 0 0 0 0 0 0 16-3584 chrM 10807 0 0 0 0 0 0 0 16-3584 chrM 10808 0 0 0 0 0 0 0 16-3584 chrM 10809 0 0 0 0 0 0 0 16-3584 chrM 10810 0 0 0 0 0 0 0 16-3584 chrM 10811 0 0 0 0 0 0 0 16-3584 chrM 10812 0 0 0 0 0 0 0 16-3584 chrM 10813 0 0 0 0 0 0 0 16-3584 chrM 10814 0 0 0 0 0 0 0 16-3584 chrM 10815 0 0 0 0 0 0 0 16-3584 chrM 10816 0 0 0 0 0 0 0 16-3584 chrM 10817 0 0 0 0 0 0 0 16-3584 chrM 10818 0 0 0 0 0 0 0 16-3584 chrM 10819 0 0 0 0 0 0 0 16-3584 chrM 10820 0 0 0 0 0 0 0 16-3584 chrM 10821 0 0 0 0 0 0 0 16-3584 chrM 10822 0 0 0 0 0 0 0 16-3584 chrM 10823 0 0 0 0 0 0 0 16-3584 chrM 10824 0 0 0 0 0 0 0 16-3584 chrM 10825 0 0 0 0 0 0 0 16-3584 chrM 10826 0 0 0 0 0 0 0 16-3584 chrM 10827 0 0 0 0 0 0 0 16-3584 chrM 10828 0 0 0 0 0 0 0 16-3584 chrM 10829 0 0 0 0 0 0 0 16-3584 chrM 10830 0 0 0 0 0 0 0 16-3584 chrM 10831 0 0 0 0 0 0 0 16-3584 chrM 10832 0 0 0 0 0 0 0 16-3584 chrM 10833 0 0 0 0 0 0 0 16-3584 chrM 10834 0 0 0 0 0 0 0 16-3584 chrM 10835 0 0 0 0 0 0 0 16-3584 chrM 10836 0 0 0 0 0 0 0 16-3584 chrM 10837 0 0 0 0 0 0 0 16-3584 chrM 10838 0 0 0 0 0 0 0 16-3584 chrM 10839 0 0 0 0 0 0 0 16-3584 chrM 10840 0 0 0 0 0 0 0 16-3584 chrM 10841 0 0 0 0 0 0 0 16-3584 chrM 10842 0 0 0 0 0 0 0 16-3584 chrM 10843 0 0 0 0 0 0 0 16-3584 chrM 10844 0 0 0 0 0 0 0 16-3584 chrM 10845 0 0 0 0 0 0 0 16-3584 chrM 10846 0 0 0 0 0 0 0 16-3584 chrM 10847 0 0 0 0 0 0 0 16-3584 chrM 10848 0 0 0 0 0 0 0 16-3584 chrM 10849 0 0 0 0 0 0 0 16-3584 chrM 10850 0 0 0 0 0 0 0 16-3584 chrM 10851 0 0 0 0 0 0 0 16-3584 chrM 10852 0 0 0 0 0 0 0 16-3584 chrM 10853 0 0 0 0 0 0 0 16-3584 chrM 10854 0 0 0 0 0 0 0 16-3584 chrM 10855 0 0 0 0 0 0 0 16-3584 chrM 10856 0 0 0 0 0 0 0 16-3584 chrM 10857 0 0 0 0 0 0 0 16-3584 chrM 10858 0 0 0 0 0 0 0 16-3584 chrM 10859 0 0 0 0 0 0 0 16-3584 chrM 10860 0 0 0 0 0 0 0 16-3584 chrM 10861 0 0 0 0 0 0 0 16-3584 chrM 10862 0 0 0 0 0 0 0 16-3584 chrM 10863 0 0 0 0 0 0 0 16-3584 chrM 10864 0 0 0 0 0 0 0 16-3584 chrM 10865 0 0 0 0 0 0 0 16-3584 chrM 10866 0 0 0 0 0 0 0 16-3584 chrM 10867 0 0 0 0 0 0 0 16-3584 chrM 10868 0 0 0 0 0 0 0 16-3584 chrM 10869 0 0 0 0 0 0 0 16-3584 chrM 10870 0 0 0 0 0 0 0 16-3584 chrM 10871 0 0 0 0 0 0 0 16-3584 chrM 10872 0 0 0 0 0 0 0 16-3584 chrM 10873 0 0 0 0 0 0 0 16-3584 chrM 10874 0 0 0 0 0 0 0 16-3584 chrM 10875 0 0 0 0 0 0 0 16-3584 chrM 10876 0 0 0 0 0 0 0 16-3584 chrM 10877 0 0 0 0 0 0 0 16-3584 chrM 10878 0 0 0 0 0 0 0 16-3584 chrM 10879 0 0 0 0 0 0 0 16-3584 chrM 10880 0 0 0 0 0 0 0 16-3584 chrM 10881 0 0 0 0 0 0 0 16-3584 chrM 10882 0 0 0 0 0 0 0 16-3584 chrM 10883 0 0 0 0 0 0 0 16-3584 chrM 10884 0 0 0 0 0 0 0 16-3584 chrM 10885 0 0 0 0 0 0 0 16-3584 chrM 10886 0 0 0 0 0 0 0 16-3584 chrM 10887 0 0 0 0 0 0 0 16-3584 chrM 10888 0 0 0 0 0 0 0 16-3584 chrM 10889 0 0 0 0 0 0 0 16-3584 chrM 10890 0 0 0 0 0 0 0 16-3584 chrM 10891 0 0 0 0 0 0 0 16-3584 chrM 10892 0 0 0 0 0 0 0 16-3584 chrM 10893 0 0 0 0 0 0 0 16-3584 chrM 10894 0 0 0 0 0 0 0 16-3584 chrM 10895 0 0 0 0 0 0 0 16-3584 chrM 10896 0 0 0 0 0 0 0 16-3584 chrM 10897 0 0 0 0 0 0 0 16-3584 chrM 10898 0 0 0 0 0 0 0 16-3584 chrM 10899 0 0 0 0 0 0 0 16-3584 chrM 10900 0 0 0 0 0 0 0 16-3584 chrM 10901 0 0 0 0 0 0 0 16-3584 chrM 10902 0 0 0 0 0 0 0 16-3584 chrM 10903 0 0 0 0 0 0 0 16-3584 chrM 10904 0 0 0 0 0 0 0 16-3584 chrM 10905 0 0 0 0 0 0 0 16-3584 chrM 10906 0 0 0 0 0 0 0 16-3584 chrM 10907 0 0 0 0 0 0 0 16-3584 chrM 10908 0 0 0 0 0 0 0 16-3584 chrM 10909 0 0 0 0 0 0 0 16-3584 chrM 10910 0 0 0 0 0 0 0 16-3584 chrM 10911 0 0 0 0 0 0 0 16-3584 chrM 10912 1 0 0 0 1 0 0 16-3584 chrM 10913 1 1 0 0 0 0 0 16-3584 chrM 10914 1 1 0 0 0 0 0 16-3584 chrM 10915 1 0 0 1 0 0 0 16-3584 chrM 10916 1 0 0 0 1 0 0 16-3584 chrM 10917 2 0 0 2 0 0 0 16-3584 chrM 10918 2 0 1 0 1 0 0 16-3584 chrM 10919 2 0 2 0 0 0 0 16-3584 chrM 10920 2 0 1 1 0 0 0 16-3584 chrM 10921 2 0 2 0 0 0 0 16-3584 chrM 10922 2 1 0 1 0 0 0 16-3584 chrM 10923 2 1 0 1 0 0 0 16-3584 chrM 10924 2 1 0 1 0 0 0 16-3584 chrM 10925 2 0 0 2 0 0 0 16-3584 chrM 10926 2 0 2 0 0 0 0 16-3584 chrM 10927 2 0 0 2 0 0 0 16-3584 chrM 10928 2 1 0 1 0 0 0 16-3584 chrM 10929 2 1 1 0 0 0 0 16-3584 chrM 10930 2 1 0 0 1 0 0 16-3584 chrM 10931 2 1 0 1 0 0 0 16-3584 chrM 10932 2 1 1 0 0 0 0 16-3584 chrM 10933 2 1 0 1 0 0 0 16-3584 chrM 10934 2 0 1 1 0 0 0 16-3584 chrM 10935 2 1 1 0 0 0 0 16-3584 chrM 10936 2 1 0 0 1 0 0 16-3584 chrM 10937 2 0 2 0 0 0 0 16-3584 chrM 10938 2 1 0 0 1 0 0 16-3584 chrM 10939 2 0 0 1 1 0 0 16-3584 chrM 10940 2 0 0 1 1 0 0 16-3584 chrM 10941 2 0 1 1 0 0 0 16-3584 chrM 10942 2 0 1 0 1 0 0 16-3584 chrM 10943 2 0 1 0 1 0 0 16-3584 chrM 10944 2 2 0 0 0 0 0 16-3584 chrM 10945 2 1 0 1 0 0 0 16-3584 chrM 10946 2 1 1 0 0 0 0 16-3584 chrM 10947 2 0 0 1 1 0 0 16-3584 chrM 10948 2 0 1 1 0 0 0 16-3584 chrM 10949 2 1 1 0 0 0 0 16-3584 chrM 10950 2 1 0 0 1 0 0 16-3584 chrM 10951 2 0 1 0 1 0 0 16-3584 chrM 10952 2 0 0 0 2 0 0 16-3584 chrM 10953 2 0 0 1 1 0 0 16-3584 chrM 10954 2 0 0 2 0 0 0 16-3584 chrM 10955 2 2 0 0 0 0 0 16-3584 chrM 10956 2 0 1 0 1 0 0 16-3584 chrM 10957 2 0 0 2 0 0 0 16-3584 chrM 10958 2 0 1 0 1 0 0 16-3584 chrM 10959 2 0 1 0 1 0 0 16-3584 chrM 10960 2 1 0 0 1 0 0 16-3584 chrM 10961 2 1 1 0 0 0 0 16-3584 chrM 10962 2 1 0 0 1 0 0 16-3584 chrM 10963 2 1 0 0 1 0 0 16-3584 chrM 10964 2 0 0 0 2 0 0 16-3584 chrM 10965 2 1 1 0 0 0 0 16-3584 chrM 10966 2 0 1 1 0 0 0 16-3584 chrM 10967 2 0 1 0 1 0 0 16-3584 chrM 10968 2 0 1 0 1 0 0 16-3584 chrM 10969 2 0 1 1 0 0 0 16-3584 chrM 10970 2 0 0 1 1 0 0 16-3584 chrM 10971 2 1 1 0 0 0 0 16-3584 chrM 10972 2 0 0 1 1 0 0 16-3584 chrM 10973 2 2 0 0 0 0 0 16-3584 chrM 10974 2 2 0 0 0 0 0 16-3584 chrM 10975 2 1 0 1 0 0 0 16-3584 chrM 10976 2 0 2 0 0 0 0 16-3584 chrM 10977 2 1 0 1 0 0 0 16-3584 chrM 10978 2 1 0 0 1 0 0 16-3584 chrM 10979 2 0 0 0 2 0 0 16-3584 chrM 10980 2 2 0 0 0 0 0 16-3584 chrM 10981 2 0 2 0 0 0 0 16-3584 chrM 10982 2 1 1 0 0 0 0 16-3584 chrM 10983 2 1 1 0 0 0 0 16-3584 chrM 10984 1 0 0 0 1 0 0 16-3584 chrM 10985 1 1 0 0 0 0 0 16-3584 chrM 10986 1 0 1 0 0 0 0 16-3584 chrM 10987 1 0 1 0 0 0 0 16-3584 chrM 10988 1 1 0 0 0 0 0 16-3584 chrM 10989 0 0 0 0 0 0 0 16-3584 chrM 10990 0 0 0 0 0 0 0 16-3584 chrM 10991 0 0 0 0 0 0 0 16-3584 chrM 10992 0 0 0 0 0 0 0 16-3584 chrM 10993 0 0 0 0 0 0 0 16-3584 chrM 10994 0 0 0 0 0 0 0 16-3584 chrM 10995 0 0 0 0 0 0 0 16-3584 chrM 10996 0 0 0 0 0 0 0 16-3584 chrM 10997 0 0 0 0 0 0 0 16-3584 chrM 10998 0 0 0 0 0 0 0 16-3584 chrM 10999 0 0 0 0 0 0 0 16-3584 chrM 11000 0 0 0 0 0 0 0 16-3584 chrM 11001 0 0 0 0 0 0 0 16-3584 chrM 11002 0 0 0 0 0 0 0 16-3584 chrM 11003 0 0 0 0 0 0 0 16-3584 chrM 11004 0 0 0 0 0 0 0 16-3584 chrM 11005 0 0 0 0 0 0 0 16-3584 chrM 11006 0 0 0 0 0 0 0 16-3584 chrM 11007 0 0 0 0 0 0 0 16-3584 chrM 11008 0 0 0 0 0 0 0 16-3584 chrM 11009 0 0 0 0 0 0 0 16-3584 chrM 11010 0 0 0 0 0 0 0 16-3584 chrM 11011 0 0 0 0 0 0 0 16-3584 chrM 11012 0 0 0 0 0 0 0 16-3584 chrM 11013 0 0 0 0 0 0 0 16-3584 chrM 11014 0 0 0 0 0 0 0 16-3584 chrM 11015 0 0 0 0 0 0 0 16-3584 chrM 11016 0 0 0 0 0 0 0 16-3584 chrM 11017 0 0 0 0 0 0 0 16-3584 chrM 11018 0 0 0 0 0 0 0 16-3584 chrM 11019 0 0 0 0 0 0 0 16-3584 chrM 11020 0 0 0 0 0 0 0 16-3584 chrM 11021 0 0 0 0 0 0 0 16-3584 chrM 11022 0 0 0 0 0 0 0 16-3584 chrM 11023 0 0 0 0 0 0 0 16-3584 chrM 11024 0 0 0 0 0 0 0 16-3584 chrM 11025 0 0 0 0 0 0 0 16-3584 chrM 11026 0 0 0 0 0 0 0 16-3584 chrM 11027 0 0 0 0 0 0 0 16-3584 chrM 11028 0 0 0 0 0 0 0 16-3584 chrM 11029 0 0 0 0 0 0 0 16-3584 chrM 11030 0 0 0 0 0 0 0 16-3584 chrM 11031 0 0 0 0 0 0 0 16-3584 chrM 11032 0 0 0 0 0 0 0 16-3584 chrM 11033 0 0 0 0 0 0 0 16-3584 chrM 11034 0 0 0 0 0 0 0 16-3584 chrM 11035 0 0 0 0 0 0 0 16-3584 chrM 11036 0 0 0 0 0 0 0 16-3584 chrM 11037 0 0 0 0 0 0 0 16-3584 chrM 11038 0 0 0 0 0 0 0 16-3584 chrM 11039 0 0 0 0 0 0 0 16-3584 chrM 11040 0 0 0 0 0 0 0 16-3584 chrM 11041 0 0 0 0 0 0 0 16-3584 chrM 11042 0 0 0 0 0 0 0 16-3584 chrM 11043 0 0 0 0 0 0 0 16-3584 chrM 11044 0 0 0 0 0 0 0 16-3584 chrM 11045 0 0 0 0 0 0 0 16-3584 chrM 11046 0 0 0 0 0 0 0 16-3584 chrM 11047 0 0 0 0 0 0 0 16-3584 chrM 11048 0 0 0 0 0 0 0 16-3584 chrM 11049 0 0 0 0 0 0 0 16-3584 chrM 11050 0 0 0 0 0 0 0 16-3584 chrM 11051 0 0 0 0 0 0 0 16-3584 chrM 11052 0 0 0 0 0 0 0 16-3584 chrM 11053 0 0 0 0 0 0 0 16-3584 chrM 11054 0 0 0 0 0 0 0 16-3584 chrM 11055 0 0 0 0 0 0 0 16-3584 chrM 11056 0 0 0 0 0 0 0 16-3584 chrM 11057 0 0 0 0 0 0 0 16-3584 chrM 11058 0 0 0 0 0 0 0 16-3584 chrM 11059 0 0 0 0 0 0 0 16-3584 chrM 11060 0 0 0 0 0 0 0 16-3584 chrM 11061 0 0 0 0 0 0 0 16-3584 chrM 11062 0 0 0 0 0 0 0 16-3584 chrM 11063 0 0 0 0 0 0 0 16-3584 chrM 11064 0 0 0 0 0 0 0 16-3584 chrM 11065 0 0 0 0 0 0 0 16-3584 chrM 11066 0 0 0 0 0 0 0 16-3584 chrM 11067 0 0 0 0 0 0 0 16-3584 chrM 11068 0 0 0 0 0 0 0 16-3584 chrM 11069 0 0 0 0 0 0 0 16-3584 chrM 11070 0 0 0 0 0 0 0 16-3584 chrM 11071 0 0 0 0 0 0 0 16-3584 chrM 11072 0 0 0 0 0 0 0 16-3584 chrM 11073 0 0 0 0 0 0 0 16-3584 chrM 11074 0 0 0 0 0 0 0 16-3584 chrM 11075 0 0 0 0 0 0 0 16-3584 chrM 11076 0 0 0 0 0 0 0 16-3584 chrM 11077 0 0 0 0 0 0 0 16-3584 chrM 11078 0 0 0 0 0 0 0 16-3584 chrM 11079 0 0 0 0 0 0 0 16-3584 chrM 11080 0 0 0 0 0 0 0 16-3584 chrM 11081 0 0 0 0 0 0 0 16-3584 chrM 11082 0 0 0 0 0 0 0 16-3584 chrM 11083 0 0 0 0 0 0 0 16-3584 chrM 11084 0 0 0 0 0 0 0 16-3584 chrM 11085 0 0 0 0 0 0 0 16-3584 chrM 11086 0 0 0 0 0 0 0 16-3584 chrM 11087 0 0 0 0 0 0 0 16-3584 chrM 11088 0 0 0 0 0 0 0 16-3584 chrM 11089 0 0 0 0 0 0 0 16-3584 chrM 11090 0 0 0 0 0 0 0 16-3584 chrM 11091 0 0 0 0 0 0 0 16-3584 chrM 11092 0 0 0 0 0 0 0 16-3584 chrM 11093 0 0 0 0 0 0 0 16-3584 chrM 11094 0 0 0 0 0 0 0 16-3584 chrM 11095 0 0 0 0 0 0 0 16-3584 chrM 11096 0 0 0 0 0 0 0 16-3584 chrM 11097 0 0 0 0 0 0 0 16-3584 chrM 11098 0 0 0 0 0 0 0 16-3584 chrM 11099 0 0 0 0 0 0 0 16-3584 chrM 11100 0 0 0 0 0 0 0 16-3584 chrM 11101 0 0 0 0 0 0 0 16-3584 chrM 11102 0 0 0 0 0 0 0 16-3584 chrM 11103 0 0 0 0 0 0 0 16-3584 chrM 11104 0 0 0 0 0 0 0 16-3584 chrM 11105 0 0 0 0 0 0 0 16-3584 chrM 11106 0 0 0 0 0 0 0 16-3584 chrM 11107 0 0 0 0 0 0 0 16-3584 chrM 11108 0 0 0 0 0 0 0 16-3584 chrM 11109 0 0 0 0 0 0 0 16-3584 chrM 11110 0 0 0 0 0 0 0 16-3584 chrM 11111 0 0 0 0 0 0 0 16-3584 chrM 11112 0 0 0 0 0 0 0 16-3584 chrM 11113 0 0 0 0 0 0 0 16-3584 chrM 11114 0 0 0 0 0 0 0 16-3584 chrM 11115 0 0 0 0 0 0 0 16-3584 chrM 11116 0 0 0 0 0 0 0 16-3584 chrM 11117 0 0 0 0 0 0 0 16-3584 chrM 11118 0 0 0 0 0 0 0 16-3584 chrM 11119 0 0 0 0 0 0 0 16-3584 chrM 11120 0 0 0 0 0 0 0 16-3584 chrM 11121 0 0 0 0 0 0 0 16-3584 chrM 11122 0 0 0 0 0 0 0 16-3584 chrM 11123 0 0 0 0 0 0 0 16-3584 chrM 11124 0 0 0 0 0 0 0 16-3584 chrM 11125 0 0 0 0 0 0 0 16-3584 chrM 11126 0 0 0 0 0 0 0 16-3584 chrM 11127 0 0 0 0 0 0 0 16-3584 chrM 11128 0 0 0 0 0 0 0 16-3584 chrM 11129 0 0 0 0 0 0 0 16-3584 chrM 11130 0 0 0 0 0 0 0 16-3584 chrM 11131 0 0 0 0 0 0 0 16-3584 chrM 11132 0 0 0 0 0 0 0 16-3584 chrM 11133 0 0 0 0 0 0 0 16-3584 chrM 11134 0 0 0 0 0 0 0 16-3584 chrM 11135 0 0 0 0 0 0 0 16-3584 chrM 11136 0 0 0 0 0 0 0 16-3584 chrM 11137 0 0 0 0 0 0 0 16-3584 chrM 11138 0 0 0 0 0 0 0 16-3584 chrM 11139 0 0 0 0 0 0 0 16-3584 chrM 11140 0 0 0 0 0 0 0 16-3584 chrM 11141 0 0 0 0 0 0 0 16-3584 chrM 11142 0 0 0 0 0 0 0 16-3584 chrM 11143 0 0 0 0 0 0 0 16-3584 chrM 11144 0 0 0 0 0 0 0 16-3584 chrM 11145 0 0 0 0 0 0 0 16-3584 chrM 11146 0 0 0 0 0 0 0 16-3584 chrM 11147 0 0 0 0 0 0 0 16-3584 chrM 11148 0 0 0 0 0 0 0 16-3584 chrM 11149 0 0 0 0 0 0 0 16-3584 chrM 11150 0 0 0 0 0 0 0 16-3584 chrM 11151 0 0 0 0 0 0 0 16-3584 chrM 11152 0 0 0 0 0 0 0 16-3584 chrM 11153 0 0 0 0 0 0 0 16-3584 chrM 11154 0 0 0 0 0 0 0 16-3584 chrM 11155 0 0 0 0 0 0 0 16-3584 chrM 11156 0 0 0 0 0 0 0 16-3584 chrM 11157 0 0 0 0 0 0 0 16-3584 chrM 11158 0 0 0 0 0 0 0 16-3584 chrM 11159 0 0 0 0 0 0 0 16-3584 chrM 11160 0 0 0 0 0 0 0 16-3584 chrM 11161 0 0 0 0 0 0 0 16-3584 chrM 11162 0 0 0 0 0 0 0 16-3584 chrM 11163 0 0 0 0 0 0 0 16-3584 chrM 11164 0 0 0 0 0 0 0 16-3584 chrM 11165 0 0 0 0 0 0 0 16-3584 chrM 11166 0 0 0 0 0 0 0 16-3584 chrM 11167 0 0 0 0 0 0 0 16-3584 chrM 11168 0 0 0 0 0 0 0 16-3584 chrM 11169 0 0 0 0 0 0 0 16-3584 chrM 11170 0 0 0 0 0 0 0 16-3584 chrM 11171 0 0 0 0 0 0 0 16-3584 chrM 11172 0 0 0 0 0 0 0 16-3584 chrM 11173 0 0 0 0 0 0 0 16-3584 chrM 11174 0 0 0 0 0 0 0 16-3584 chrM 11175 0 0 0 0 0 0 0 16-3584 chrM 11176 0 0 0 0 0 0 0 16-3584 chrM 11177 0 0 0 0 0 0 0 16-3584 chrM 11178 0 0 0 0 0 0 0 16-3584 chrM 11179 0 0 0 0 0 0 0 16-3584 chrM 11180 0 0 0 0 0 0 0 16-3584 chrM 11181 0 0 0 0 0 0 0 16-3584 chrM 11182 0 0 0 0 0 0 0 16-3584 chrM 11183 0 0 0 0 0 0 0 16-3584 chrM 11184 0 0 0 0 0 0 0 16-3584 chrM 11185 0 0 0 0 0 0 0 16-3584 chrM 11186 0 0 0 0 0 0 0 16-3584 chrM 11187 0 0 0 0 0 0 0 16-3584 chrM 11188 0 0 0 0 0 0 0 16-3584 chrM 11189 0 0 0 0 0 0 0 16-3584 chrM 11190 0 0 0 0 0 0 0 16-3584 chrM 11191 0 0 0 0 0 0 0 16-3584 chrM 11192 0 0 0 0 0 0 0 16-3584 chrM 11193 0 0 0 0 0 0 0 16-3584 chrM 11194 0 0 0 0 0 0 0 16-3584 chrM 11195 0 0 0 0 0 0 0 16-3584 chrM 11196 0 0 0 0 0 0 0 16-3584 chrM 11197 0 0 0 0 0 0 0 16-3584 chrM 11198 0 0 0 0 0 0 0 16-3584 chrM 11199 0 0 0 0 0 0 0 16-3584 chrM 11200 0 0 0 0 0 0 0 16-3584 chrM 11201 0 0 0 0 0 0 0 16-3584 chrM 11202 0 0 0 0 0 0 0 16-3584 chrM 11203 0 0 0 0 0 0 0 16-3584 chrM 11204 0 0 0 0 0 0 0 16-3584 chrM 11205 0 0 0 0 0 0 0 16-3584 chrM 11206 0 0 0 0 0 0 0 16-3584 chrM 11207 0 0 0 0 0 0 0 16-3584 chrM 11208 0 0 0 0 0 0 0 16-3584 chrM 11209 0 0 0 0 0 0 0 16-3584 chrM 11210 0 0 0 0 0 0 0 16-3584 chrM 11211 0 0 0 0 0 0 0 16-3584 chrM 11212 0 0 0 0 0 0 0 16-3584 chrM 11213 0 0 0 0 0 0 0 16-3584 chrM 11214 0 0 0 0 0 0 0 16-3584 chrM 11215 0 0 0 0 0 0 0 16-3584 chrM 11216 0 0 0 0 0 0 0 16-3584 chrM 11217 0 0 0 0 0 0 0 16-3584 chrM 11218 0 0 0 0 0 0 0 16-3584 chrM 11219 0 0 0 0 0 0 0 16-3584 chrM 11220 0 0 0 0 0 0 0 16-3584 chrM 11221 0 0 0 0 0 0 0 16-3584 chrM 11222 0 0 0 0 0 0 0 16-3584 chrM 11223 0 0 0 0 0 0 0 16-3584 chrM 11224 0 0 0 0 0 0 0 16-3584 chrM 11225 0 0 0 0 0 0 0 16-3584 chrM 11226 0 0 0 0 0 0 0 16-3584 chrM 11227 0 0 0 0 0 0 0 16-3584 chrM 11228 0 0 0 0 0 0 0 16-3584 chrM 11229 0 0 0 0 0 0 0 16-3584 chrM 11230 0 0 0 0 0 0 0 16-3584 chrM 11231 0 0 0 0 0 0 0 16-3584 chrM 11232 0 0 0 0 0 0 0 16-3584 chrM 11233 0 0 0 0 0 0 0 16-3584 chrM 11234 0 0 0 0 0 0 0 16-3584 chrM 11235 0 0 0 0 0 0 0 16-3584 chrM 11236 0 0 0 0 0 0 0 16-3584 chrM 11237 0 0 0 0 0 0 0 16-3584 chrM 11238 0 0 0 0 0 0 0 16-3584 chrM 11239 0 0 0 0 0 0 0 16-3584 chrM 11240 0 0 0 0 0 0 0 16-3584 chrM 11241 0 0 0 0 0 0 0 16-3584 chrM 11242 0 0 0 0 0 0 0 16-3584 chrM 11243 0 0 0 0 0 0 0 16-3584 chrM 11244 0 0 0 0 0 0 0 16-3584 chrM 11245 0 0 0 0 0 0 0 16-3584 chrM 11246 0 0 0 0 0 0 0 16-3584 chrM 11247 0 0 0 0 0 0 0 16-3584 chrM 11248 0 0 0 0 0 0 0 16-3584 chrM 11249 0 0 0 0 0 0 0 16-3584 chrM 11250 0 0 0 0 0 0 0 16-3584 chrM 11251 0 0 0 0 0 0 0 16-3584 chrM 11252 0 0 0 0 0 0 0 16-3584 chrM 11253 0 0 0 0 0 0 0 16-3584 chrM 11254 0 0 0 0 0 0 0 16-3584 chrM 11255 0 0 0 0 0 0 0 16-3584 chrM 11256 0 0 0 0 0 0 0 16-3584 chrM 11257 0 0 0 0 0 0 0 16-3584 chrM 11258 0 0 0 0 0 0 0 16-3584 chrM 11259 0 0 0 0 0 0 0 16-3584 chrM 11260 0 0 0 0 0 0 0 16-3584 chrM 11261 0 0 0 0 0 0 0 16-3584 chrM 11262 0 0 0 0 0 0 0 16-3584 chrM 11263 0 0 0 0 0 0 0 16-3584 chrM 11264 0 0 0 0 0 0 0 16-3584 chrM 11265 0 0 0 0 0 0 0 16-3584 chrM 11266 0 0 0 0 0 0 0 16-3584 chrM 11267 0 0 0 0 0 0 0 16-3584 chrM 11268 0 0 0 0 0 0 0 16-3584 chrM 11269 0 0 0 0 0 0 0 16-3584 chrM 11270 0 0 0 0 0 0 0 16-3584 chrM 11271 0 0 0 0 0 0 0 16-3584 chrM 11272 0 0 0 0 0 0 0 16-3584 chrM 11273 0 0 0 0 0 0 0 16-3584 chrM 11274 0 0 0 0 0 0 0 16-3584 chrM 11275 0 0 0 0 0 0 0 16-3584 chrM 11276 0 0 0 0 0 0 0 16-3584 chrM 11277 0 0 0 0 0 0 0 16-3584 chrM 11278 0 0 0 0 0 0 0 16-3584 chrM 11279 0 0 0 0 0 0 0 16-3584 chrM 11280 0 0 0 0 0 0 0 16-3584 chrM 11281 0 0 0 0 0 0 0 16-3584 chrM 11282 0 0 0 0 0 0 0 16-3584 chrM 11283 0 0 0 0 0 0 0 16-3584 chrM 11284 0 0 0 0 0 0 0 16-3584 chrM 11285 0 0 0 0 0 0 0 16-3584 chrM 11286 0 0 0 0 0 0 0 16-3584 chrM 11287 0 0 0 0 0 0 0 16-3584 chrM 11288 0 0 0 0 0 0 0 16-3584 chrM 11289 0 0 0 0 0 0 0 16-3584 chrM 11290 0 0 0 0 0 0 0 16-3584 chrM 11291 0 0 0 0 0 0 0 16-3584 chrM 11292 0 0 0 0 0 0 0 16-3584 chrM 11293 0 0 0 0 0 0 0 16-3584 chrM 11294 0 0 0 0 0 0 0 16-3584 chrM 11295 0 0 0 0 0 0 0 16-3584 chrM 11296 0 0 0 0 0 0 0 16-3584 chrM 11297 0 0 0 0 0 0 0 16-3584 chrM 11298 0 0 0 0 0 0 0 16-3584 chrM 11299 0 0 0 0 0 0 0 16-3584 chrM 11300 0 0 0 0 0 0 0 16-3584 chrM 11301 0 0 0 0 0 0 0 16-3584 chrM 11302 0 0 0 0 0 0 0 16-3584 chrM 11303 0 0 0 0 0 0 0 16-3584 chrM 11304 0 0 0 0 0 0 0 16-3584 chrM 11305 0 0 0 0 0 0 0 16-3584 chrM 11306 0 0 0 0 0 0 0 16-3584 chrM 11307 0 0 0 0 0 0 0 16-3584 chrM 11308 0 0 0 0 0 0 0 16-3584 chrM 11309 0 0 0 0 0 0 0 16-3584 chrM 11310 0 0 0 0 0 0 0 16-3584 chrM 11311 0 0 0 0 0 0 0 16-3584 chrM 11312 0 0 0 0 0 0 0 16-3584 chrM 11313 0 0 0 0 0 0 0 16-3584 chrM 11314 0 0 0 0 0 0 0 16-3584 chrM 11315 0 0 0 0 0 0 0 16-3584 chrM 11316 0 0 0 0 0 0 0 16-3584 chrM 11317 0 0 0 0 0 0 0 16-3584 chrM 11318 0 0 0 0 0 0 0 16-3584 chrM 11319 0 0 0 0 0 0 0 16-3584 chrM 11320 0 0 0 0 0 0 0 16-3584 chrM 11321 0 0 0 0 0 0 0 16-3584 chrM 11322 0 0 0 0 0 0 0 16-3584 chrM 11323 0 0 0 0 0 0 0 16-3584 chrM 11324 0 0 0 0 0 0 0 16-3584 chrM 11325 0 0 0 0 0 0 0 16-3584 chrM 11326 0 0 0 0 0 0 0 16-3584 chrM 11327 0 0 0 0 0 0 0 16-3584 chrM 11328 0 0 0 0 0 0 0 16-3584 chrM 11329 0 0 0 0 0 0 0 16-3584 chrM 11330 0 0 0 0 0 0 0 16-3584 chrM 11331 0 0 0 0 0 0 0 16-3584 chrM 11332 0 0 0 0 0 0 0 16-3584 chrM 11333 0 0 0 0 0 0 0 16-3584 chrM 11334 0 0 0 0 0 0 0 16-3584 chrM 11335 0 0 0 0 0 0 0 16-3584 chrM 11336 0 0 0 0 0 0 0 16-3584 chrM 11337 0 0 0 0 0 0 0 16-3584 chrM 11338 0 0 0 0 0 0 0 16-3584 chrM 11339 0 0 0 0 0 0 0 16-3584 chrM 11340 0 0 0 0 0 0 0 16-3584 chrM 11341 0 0 0 0 0 0 0 16-3584 chrM 11342 0 0 0 0 0 0 0 16-3584 chrM 11343 0 0 0 0 0 0 0 16-3584 chrM 11344 0 0 0 0 0 0 0 16-3584 chrM 11345 0 0 0 0 0 0 0 16-3584 chrM 11346 0 0 0 0 0 0 0 16-3584 chrM 11347 0 0 0 0 0 0 0 16-3584 chrM 11348 0 0 0 0 0 0 0 16-3584 chrM 11349 0 0 0 0 0 0 0 16-3584 chrM 11350 0 0 0 0 0 0 0 16-3584 chrM 11351 0 0 0 0 0 0 0 16-3584 chrM 11352 0 0 0 0 0 0 0 16-3584 chrM 11353 0 0 0 0 0 0 0 16-3584 chrM 11354 0 0 0 0 0 0 0 16-3584 chrM 11355 0 0 0 0 0 0 0 16-3584 chrM 11356 0 0 0 0 0 0 0 16-3584 chrM 11357 0 0 0 0 0 0 0 16-3584 chrM 11358 0 0 0 0 0 0 0 16-3584 chrM 11359 0 0 0 0 0 0 0 16-3584 chrM 11360 0 0 0 0 0 0 0 16-3584 chrM 11361 0 0 0 0 0 0 0 16-3584 chrM 11362 0 0 0 0 0 0 0 16-3584 chrM 11363 0 0 0 0 0 0 0 16-3584 chrM 11364 0 0 0 0 0 0 0 16-3584 chrM 11365 0 0 0 0 0 0 0 16-3584 chrM 11366 0 0 0 0 0 0 0 16-3584 chrM 11367 0 0 0 0 0 0 0 16-3584 chrM 11368 0 0 0 0 0 0 0 16-3584 chrM 11369 0 0 0 0 0 0 0 16-3584 chrM 11370 0 0 0 0 0 0 0 16-3584 chrM 11371 0 0 0 0 0 0 0 16-3584 chrM 11372 0 0 0 0 0 0 0 16-3584 chrM 11373 0 0 0 0 0 0 0 16-3584 chrM 11374 0 0 0 0 0 0 0 16-3584 chrM 11375 0 0 0 0 0 0 0 16-3584 chrM 11376 0 0 0 0 0 0 0 16-3584 chrM 11377 0 0 0 0 0 0 0 16-3584 chrM 11378 0 0 0 0 0 0 0 16-3584 chrM 11379 0 0 0 0 0 0 0 16-3584 chrM 11380 0 0 0 0 0 0 0 16-3584 chrM 11381 0 0 0 0 0 0 0 16-3584 chrM 11382 0 0 0 0 0 0 0 16-3584 chrM 11383 0 0 0 0 0 0 0 16-3584 chrM 11384 0 0 0 0 0 0 0 16-3584 chrM 11385 0 0 0 0 0 0 0 16-3584 chrM 11386 0 0 0 0 0 0 0 16-3584 chrM 11387 0 0 0 0 0 0 0 16-3584 chrM 11388 0 0 0 0 0 0 0 16-3584 chrM 11389 0 0 0 0 0 0 0 16-3584 chrM 11390 0 0 0 0 0 0 0 16-3584 chrM 11391 0 0 0 0 0 0 0 16-3584 chrM 11392 0 0 0 0 0 0 0 16-3584 chrM 11393 0 0 0 0 0 0 0 16-3584 chrM 11394 0 0 0 0 0 0 0 16-3584 chrM 11395 0 0 0 0 0 0 0 16-3584 chrM 11396 0 0 0 0 0 0 0 16-3584 chrM 11397 0 0 0 0 0 0 0 16-3584 chrM 11398 0 0 0 0 0 0 0 16-3584 chrM 11399 0 0 0 0 0 0 0 16-3584 chrM 11400 0 0 0 0 0 0 0 16-3584 chrM 11401 0 0 0 0 0 0 0 16-3584 chrM 11402 0 0 0 0 0 0 0 16-3584 chrM 11403 0 0 0 0 0 0 0 16-3584 chrM 11404 0 0 0 0 0 0 0 16-3584 chrM 11405 0 0 0 0 0 0 0 16-3584 chrM 11406 0 0 0 0 0 0 0 16-3584 chrM 11407 0 0 0 0 0 0 0 16-3584 chrM 11408 0 0 0 0 0 0 0 16-3584 chrM 11409 0 0 0 0 0 0 0 16-3584 chrM 11410 0 0 0 0 0 0 0 16-3584 chrM 11411 0 0 0 0 0 0 0 16-3584 chrM 11412 0 0 0 0 0 0 0 16-3584 chrM 11413 0 0 0 0 0 0 0 16-3584 chrM 11414 0 0 0 0 0 0 0 16-3584 chrM 11415 0 0 0 0 0 0 0 16-3584 chrM 11416 0 0 0 0 0 0 0 16-3584 chrM 11417 0 0 0 0 0 0 0 16-3584 chrM 11418 0 0 0 0 0 0 0 16-3584 chrM 11419 0 0 0 0 0 0 0 16-3584 chrM 11420 0 0 0 0 0 0 0 16-3584 chrM 11421 0 0 0 0 0 0 0 16-3584 chrM 11422 0 0 0 0 0 0 0 16-3584 chrM 11423 0 0 0 0 0 0 0 16-3584 chrM 11424 0 0 0 0 0 0 0 16-3584 chrM 11425 0 0 0 0 0 0 0 16-3584 chrM 11426 0 0 0 0 0 0 0 16-3584 chrM 11427 0 0 0 0 0 0 0 16-3584 chrM 11428 0 0 0 0 0 0 0 16-3584 chrM 11429 0 0 0 0 0 0 0 16-3584 chrM 11430 0 0 0 0 0 0 0 16-3584 chrM 11431 0 0 0 0 0 0 0 16-3584 chrM 11432 0 0 0 0 0 0 0 16-3584 chrM 11433 0 0 0 0 0 0 0 16-3584 chrM 11434 0 0 0 0 0 0 0 16-3584 chrM 11435 0 0 0 0 0 0 0 16-3584 chrM 11436 0 0 0 0 0 0 0 16-3584 chrM 11437 0 0 0 0 0 0 0 16-3584 chrM 11438 0 0 0 0 0 0 0 16-3584 chrM 11439 0 0 0 0 0 0 0 16-3584 chrM 11440 0 0 0 0 0 0 0 16-3584 chrM 11441 0 0 0 0 0 0 0 16-3584 chrM 11442 0 0 0 0 0 0 0 16-3584 chrM 11443 0 0 0 0 0 0 0 16-3584 chrM 11444 0 0 0 0 0 0 0 16-3584 chrM 11445 0 0 0 0 0 0 0 16-3584 chrM 11446 0 0 0 0 0 0 0 16-3584 chrM 11447 0 0 0 0 0 0 0 16-3584 chrM 11448 0 0 0 0 0 0 0 16-3584 chrM 11449 0 0 0 0 0 0 0 16-3584 chrM 11450 0 0 0 0 0 0 0 16-3584 chrM 11451 0 0 0 0 0 0 0 16-3584 chrM 11452 0 0 0 0 0 0 0 16-3584 chrM 11453 0 0 0 0 0 0 0 16-3584 chrM 11454 0 0 0 0 0 0 0 16-3584 chrM 11455 0 0 0 0 0 0 0 16-3584 chrM 11456 0 0 0 0 0 0 0 16-3584 chrM 11457 0 0 0 0 0 0 0 16-3584 chrM 11458 0 0 0 0 0 0 0 16-3584 chrM 11459 0 0 0 0 0 0 0 16-3584 chrM 11460 0 0 0 0 0 0 0 16-3584 chrM 11461 0 0 0 0 0 0 0 16-3584 chrM 11462 0 0 0 0 0 0 0 16-3584 chrM 11463 0 0 0 0 0 0 0 16-3584 chrM 11464 0 0 0 0 0 0 0 16-3584 chrM 11465 0 0 0 0 0 0 0 16-3584 chrM 11466 0 0 0 0 0 0 0 16-3584 chrM 11467 0 0 0 0 0 0 0 16-3584 chrM 11468 0 0 0 0 0 0 0 16-3584 chrM 11469 0 0 0 0 0 0 0 16-3584 chrM 11470 0 0 0 0 0 0 0 16-3584 chrM 11471 0 0 0 0 0 0 0 16-3584 chrM 11472 0 0 0 0 0 0 0 16-3584 chrM 11473 0 0 0 0 0 0 0 16-3584 chrM 11474 0 0 0 0 0 0 0 16-3584 chrM 11475 0 0 0 0 0 0 0 16-3584 chrM 11476 0 0 0 0 0 0 0 16-3584 chrM 11477 0 0 0 0 0 0 0 16-3584 chrM 11478 0 0 0 0 0 0 0 16-3584 chrM 11479 0 0 0 0 0 0 0 16-3584 chrM 11480 0 0 0 0 0 0 0 16-3584 chrM 11481 0 0 0 0 0 0 0 16-3584 chrM 11482 0 0 0 0 0 0 0 16-3584 chrM 11483 0 0 0 0 0 0 0 16-3584 chrM 11484 0 0 0 0 0 0 0 16-3584 chrM 11485 0 0 0 0 0 0 0 16-3584 chrM 11486 0 0 0 0 0 0 0 16-3584 chrM 11487 0 0 0 0 0 0 0 16-3584 chrM 11488 0 0 0 0 0 0 0 16-3584 chrM 11489 0 0 0 0 0 0 0 16-3584 chrM 11490 0 0 0 0 0 0 0 16-3584 chrM 11491 0 0 0 0 0 0 0 16-3584 chrM 11492 0 0 0 0 0 0 0 16-3584 chrM 11493 0 0 0 0 0 0 0 16-3584 chrM 11494 0 0 0 0 0 0 0 16-3584 chrM 11495 0 0 0 0 0 0 0 16-3584 chrM 11496 0 0 0 0 0 0 0 16-3584 chrM 11497 0 0 0 0 0 0 0 16-3584 chrM 11498 0 0 0 0 0 0 0 16-3584 chrM 11499 0 0 0 0 0 0 0 16-3584 chrM 11500 0 0 0 0 0 0 0 16-3584 chrM 11501 0 0 0 0 0 0 0 16-3584 chrM 11502 0 0 0 0 0 0 0 16-3584 chrM 11503 0 0 0 0 0 0 0 16-3584 chrM 11504 0 0 0 0 0 0 0 16-3584 chrM 11505 0 0 0 0 0 0 0 16-3584 chrM 11506 0 0 0 0 0 0 0 16-3584 chrM 11507 0 0 0 0 0 0 0 16-3584 chrM 11508 0 0 0 0 0 0 0 16-3584 chrM 11509 0 0 0 0 0 0 0 16-3584 chrM 11510 0 0 0 0 0 0 0 16-3584 chrM 11511 0 0 0 0 0 0 0 16-3584 chrM 11512 0 0 0 0 0 0 0 16-3584 chrM 11513 0 0 0 0 0 0 0 16-3584 chrM 11514 0 0 0 0 0 0 0 16-3584 chrM 11515 0 0 0 0 0 0 0 16-3584 chrM 11516 0 0 0 0 0 0 0 16-3584 chrM 11517 0 0 0 0 0 0 0 16-3584 chrM 11518 0 0 0 0 0 0 0 16-3584 chrM 11519 0 0 0 0 0 0 0 16-3584 chrM 11520 0 0 0 0 0 0 0 16-3584 chrM 11521 0 0 0 0 0 0 0 16-3584 chrM 11522 0 0 0 0 0 0 0 16-3584 chrM 11523 0 0 0 0 0 0 0 16-3584 chrM 11524 0 0 0 0 0 0 0 16-3584 chrM 11525 0 0 0 0 0 0 0 16-3584 chrM 11526 0 0 0 0 0 0 0 16-3584 chrM 11527 0 0 0 0 0 0 0 16-3584 chrM 11528 0 0 0 0 0 0 0 16-3584 chrM 11529 0 0 0 0 0 0 0 16-3584 chrM 11530 0 0 0 0 0 0 0 16-3584 chrM 11531 0 0 0 0 0 0 0 16-3584 chrM 11532 0 0 0 0 0 0 0 16-3584 chrM 11533 0 0 0 0 0 0 0 16-3584 chrM 11534 0 0 0 0 0 0 0 16-3584 chrM 11535 0 0 0 0 0 0 0 16-3584 chrM 11536 0 0 0 0 0 0 0 16-3584 chrM 11537 0 0 0 0 0 0 0 16-3584 chrM 11538 0 0 0 0 0 0 0 16-3584 chrM 11539 0 0 0 0 0 0 0 16-3584 chrM 11540 0 0 0 0 0 0 0 16-3584 chrM 11541 0 0 0 0 0 0 0 16-3584 chrM 11542 0 0 0 0 0 0 0 16-3584 chrM 11543 0 0 0 0 0 0 0 16-3584 chrM 11544 0 0 0 0 0 0 0 16-3584 chrM 11545 0 0 0 0 0 0 0 16-3584 chrM 11546 0 0 0 0 0 0 0 16-3584 chrM 11547 0 0 0 0 0 0 0 16-3584 chrM 11548 0 0 0 0 0 0 0 16-3584 chrM 11549 0 0 0 0 0 0 0 16-3584 chrM 11550 0 0 0 0 0 0 0 16-3584 chrM 11551 0 0 0 0 0 0 0 16-3584 chrM 11552 0 0 0 0 0 0 0 16-3584 chrM 11553 0 0 0 0 0 0 0 16-3584 chrM 11554 0 0 0 0 0 0 0 16-3584 chrM 11555 0 0 0 0 0 0 0 16-3584 chrM 11556 0 0 0 0 0 0 0 16-3584 chrM 11557 0 0 0 0 0 0 0 16-3584 chrM 11558 0 0 0 0 0 0 0 16-3584 chrM 11559 0 0 0 0 0 0 0 16-3584 chrM 11560 0 0 0 0 0 0 0 16-3584 chrM 11561 0 0 0 0 0 0 0 16-3584 chrM 11562 0 0 0 0 0 0 0 16-3584 chrM 11563 0 0 0 0 0 0 0 16-3584 chrM 11564 0 0 0 0 0 0 0 16-3584 chrM 11565 0 0 0 0 0 0 0 16-3584 chrM 11566 0 0 0 0 0 0 0 16-3584 chrM 11567 0 0 0 0 0 0 0 16-3584 chrM 11568 0 0 0 0 0 0 0 16-3584 chrM 11569 0 0 0 0 0 0 0 16-3584 chrM 11570 0 0 0 0 0 0 0 16-3584 chrM 11571 0 0 0 0 0 0 0 16-3584 chrM 11572 0 0 0 0 0 0 0 16-3584 chrM 11573 0 0 0 0 0 0 0 16-3584 chrM 11574 0 0 0 0 0 0 0 16-3584 chrM 11575 0 0 0 0 0 0 0 16-3584 chrM 11576 0 0 0 0 0 0 0 16-3584 chrM 11577 0 0 0 0 0 0 0 16-3584 chrM 11578 0 0 0 0 0 0 0 16-3584 chrM 11579 0 0 0 0 0 0 0 16-3584 chrM 11580 0 0 0 0 0 0 0 16-3584 chrM 11581 0 0 0 0 0 0 0 16-3584 chrM 11582 0 0 0 0 0 0 0 16-3584 chrM 11583 0 0 0 0 0 0 0 16-3584 chrM 11584 0 0 0 0 0 0 0 16-3584 chrM 11585 0 0 0 0 0 0 0 16-3584 chrM 11586 0 0 0 0 0 0 0 16-3584 chrM 11587 0 0 0 0 0 0 0 16-3584 chrM 11588 0 0 0 0 0 0 0 16-3584 chrM 11589 0 0 0 0 0 0 0 16-3584 chrM 11590 0 0 0 0 0 0 0 16-3584 chrM 11591 0 0 0 0 0 0 0 16-3584 chrM 11592 0 0 0 0 0 0 0 16-3584 chrM 11593 0 0 0 0 0 0 0 16-3584 chrM 11594 0 0 0 0 0 0 0 16-3584 chrM 11595 0 0 0 0 0 0 0 16-3584 chrM 11596 0 0 0 0 0 0 0 16-3584 chrM 11597 0 0 0 0 0 0 0 16-3584 chrM 11598 0 0 0 0 0 0 0 16-3584 chrM 11599 0 0 0 0 0 0 0 16-3584 chrM 11600 0 0 0 0 0 0 0 16-3584 chrM 11601 0 0 0 0 0 0 0 16-3584 chrM 11602 0 0 0 0 0 0 0 16-3584 chrM 11603 0 0 0 0 0 0 0 16-3584 chrM 11604 0 0 0 0 0 0 0 16-3584 chrM 11605 0 0 0 0 0 0 0 16-3584 chrM 11606 0 0 0 0 0 0 0 16-3584 chrM 11607 0 0 0 0 0 0 0 16-3584 chrM 11608 0 0 0 0 0 0 0 16-3584 chrM 11609 0 0 0 0 0 0 0 16-3584 chrM 11610 0 0 0 0 0 0 0 16-3584 chrM 11611 0 0 0 0 0 0 0 16-3584 chrM 11612 0 0 0 0 0 0 0 16-3584 chrM 11613 0 0 0 0 0 0 0 16-3584 chrM 11614 0 0 0 0 0 0 0 16-3584 chrM 11615 0 0 0 0 0 0 0 16-3584 chrM 11616 0 0 0 0 0 0 0 16-3584 chrM 11617 0 0 0 0 0 0 0 16-3584 chrM 11618 0 0 0 0 0 0 0 16-3584 chrM 11619 0 0 0 0 0 0 0 16-3584 chrM 11620 0 0 0 0 0 0 0 16-3584 chrM 11621 0 0 0 0 0 0 0 16-3584 chrM 11622 0 0 0 0 0 0 0 16-3584 chrM 11623 0 0 0 0 0 0 0 16-3584 chrM 11624 0 0 0 0 0 0 0 16-3584 chrM 11625 0 0 0 0 0 0 0 16-3584 chrM 11626 0 0 0 0 0 0 0 16-3584 chrM 11627 0 0 0 0 0 0 0 16-3584 chrM 11628 0 0 0 0 0 0 0 16-3584 chrM 11629 0 0 0 0 0 0 0 16-3584 chrM 11630 0 0 0 0 0 0 0 16-3584 chrM 11631 0 0 0 0 0 0 0 16-3584 chrM 11632 0 0 0 0 0 0 0 16-3584 chrM 11633 0 0 0 0 0 0 0 16-3584 chrM 11634 0 0 0 0 0 0 0 16-3584 chrM 11635 0 0 0 0 0 0 0 16-3584 chrM 11636 0 0 0 0 0 0 0 16-3584 chrM 11637 0 0 0 0 0 0 0 16-3584 chrM 11638 0 0 0 0 0 0 0 16-3584 chrM 11639 0 0 0 0 0 0 0 16-3584 chrM 11640 0 0 0 0 0 0 0 16-3584 chrM 11641 0 0 0 0 0 0 0 16-3584 chrM 11642 0 0 0 0 0 0 0 16-3584 chrM 11643 0 0 0 0 0 0 0 16-3584 chrM 11644 0 0 0 0 0 0 0 16-3584 chrM 11645 0 0 0 0 0 0 0 16-3584 chrM 11646 0 0 0 0 0 0 0 16-3584 chrM 11647 0 0 0 0 0 0 0 16-3584 chrM 11648 0 0 0 0 0 0 0 16-3584 chrM 11649 0 0 0 0 0 0 0 16-3584 chrM 11650 0 0 0 0 0 0 0 16-3584 chrM 11651 0 0 0 0 0 0 0 16-3584 chrM 11652 0 0 0 0 0 0 0 16-3584 chrM 11653 0 0 0 0 0 0 0 16-3584 chrM 11654 0 0 0 0 0 0 0 16-3584 chrM 11655 0 0 0 0 0 0 0 16-3584 chrM 11656 0 0 0 0 0 0 0 16-3584 chrM 11657 0 0 0 0 0 0 0 16-3584 chrM 11658 0 0 0 0 0 0 0 16-3584 chrM 11659 0 0 0 0 0 0 0 16-3584 chrM 11660 0 0 0 0 0 0 0 16-3584 chrM 11661 0 0 0 0 0 0 0 16-3584 chrM 11662 0 0 0 0 0 0 0 16-3584 chrM 11663 0 0 0 0 0 0 0 16-3584 chrM 11664 0 0 0 0 0 0 0 16-3584 chrM 11665 0 0 0 0 0 0 0 16-3584 chrM 11666 0 0 0 0 0 0 0 16-3584 chrM 11667 0 0 0 0 0 0 0 16-3584 chrM 11668 0 0 0 0 0 0 0 16-3584 chrM 11669 0 0 0 0 0 0 0 16-3584 chrM 11670 0 0 0 0 0 0 0 16-3584 chrM 11671 0 0 0 0 0 0 0 16-3584 chrM 11672 0 0 0 0 0 0 0 16-3584 chrM 11673 0 0 0 0 0 0 0 16-3584 chrM 11674 0 0 0 0 0 0 0 16-3584 chrM 11675 0 0 0 0 0 0 0 16-3584 chrM 11676 0 0 0 0 0 0 0 16-3584 chrM 11677 0 0 0 0 0 0 0 16-3584 chrM 11678 0 0 0 0 0 0 0 16-3584 chrM 11679 0 0 0 0 0 0 0 16-3584 chrM 11680 0 0 0 0 0 0 0 16-3584 chrM 11681 0 0 0 0 0 0 0 16-3584 chrM 11682 0 0 0 0 0 0 0 16-3584 chrM 11683 0 0 0 0 0 0 0 16-3584 chrM 11684 0 0 0 0 0 0 0 16-3584 chrM 11685 0 0 0 0 0 0 0 16-3584 chrM 11686 0 0 0 0 0 0 0 16-3584 chrM 11687 0 0 0 0 0 0 0 16-3584 chrM 11688 0 0 0 0 0 0 0 16-3584 chrM 11689 0 0 0 0 0 0 0 16-3584 chrM 11690 0 0 0 0 0 0 0 16-3584 chrM 11691 0 0 0 0 0 0 0 16-3584 chrM 11692 0 0 0 0 0 0 0 16-3584 chrM 11693 0 0 0 0 0 0 0 16-3584 chrM 11694 0 0 0 0 0 0 0 16-3584 chrM 11695 0 0 0 0 0 0 0 16-3584 chrM 11696 0 0 0 0 0 0 0 16-3584 chrM 11697 0 0 0 0 0 0 0 16-3584 chrM 11698 0 0 0 0 0 0 0 16-3584 chrM 11699 0 0 0 0 0 0 0 16-3584 chrM 11700 0 0 0 0 0 0 0 16-3584 chrM 11701 0 0 0 0 0 0 0 16-3584 chrM 11702 0 0 0 0 0 0 0 16-3584 chrM 11703 0 0 0 0 0 0 0 16-3584 chrM 11704 0 0 0 0 0 0 0 16-3584 chrM 11705 0 0 0 0 0 0 0 16-3584 chrM 11706 0 0 0 0 0 0 0 16-3584 chrM 11707 0 0 0 0 0 0 0 16-3584 chrM 11708 0 0 0 0 0 0 0 16-3584 chrM 11709 0 0 0 0 0 0 0 16-3584 chrM 11710 0 0 0 0 0 0 0 16-3584 chrM 11711 0 0 0 0 0 0 0 16-3584 chrM 11712 0 0 0 0 0 0 0 16-3584 chrM 11713 0 0 0 0 0 0 0 16-3584 chrM 11714 0 0 0 0 0 0 0 16-3584 chrM 11715 0 0 0 0 0 0 0 16-3584 chrM 11716 0 0 0 0 0 0 0 16-3584 chrM 11717 0 0 0 0 0 0 0 16-3584 chrM 11718 0 0 0 0 0 0 0 16-3584 chrM 11719 0 0 0 0 0 0 0 16-3584 chrM 11720 0 0 0 0 0 0 0 16-3584 chrM 11721 0 0 0 0 0 0 0 16-3584 chrM 11722 0 0 0 0 0 0 0 16-3584 chrM 11723 0 0 0 0 0 0 0 16-3584 chrM 11724 0 0 0 0 0 0 0 16-3584 chrM 11725 0 0 0 0 0 0 0 16-3584 chrM 11726 0 0 0 0 0 0 0 16-3584 chrM 11727 0 0 0 0 0 0 0 16-3584 chrM 11728 0 0 0 0 0 0 0 16-3584 chrM 11729 0 0 0 0 0 0 0 16-3584 chrM 11730 0 0 0 0 0 0 0 16-3584 chrM 11731 0 0 0 0 0 0 0 16-3584 chrM 11732 0 0 0 0 0 0 0 16-3584 chrM 11733 0 0 0 0 0 0 0 16-3584 chrM 11734 0 0 0 0 0 0 0 16-3584 chrM 11735 0 0 0 0 0 0 0 16-3584 chrM 11736 0 0 0 0 0 0 0 16-3584 chrM 11737 0 0 0 0 0 0 0 16-3584 chrM 11738 0 0 0 0 0 0 0 16-3584 chrM 11739 0 0 0 0 0 0 0 16-3584 chrM 11740 0 0 0 0 0 0 0 16-3584 chrM 11741 0 0 0 0 0 0 0 16-3584 chrM 11742 0 0 0 0 0 0 0 16-3584 chrM 11743 0 0 0 0 0 0 0 16-3584 chrM 11744 0 0 0 0 0 0 0 16-3584 chrM 11745 0 0 0 0 0 0 0 16-3584 chrM 11746 0 0 0 0 0 0 0 16-3584 chrM 11747 0 0 0 0 0 0 0 16-3584 chrM 11748 0 0 0 0 0 0 0 16-3584 chrM 11749 0 0 0 0 0 0 0 16-3584 chrM 11750 0 0 0 0 0 0 0 16-3584 chrM 11751 0 0 0 0 0 0 0 16-3584 chrM 11752 0 0 0 0 0 0 0 16-3584 chrM 11753 0 0 0 0 0 0 0 16-3584 chrM 11754 0 0 0 0 0 0 0 16-3584 chrM 11755 0 0 0 0 0 0 0 16-3584 chrM 11756 0 0 0 0 0 0 0 16-3584 chrM 11757 0 0 0 0 0 0 0 16-3584 chrM 11758 0 0 0 0 0 0 0 16-3584 chrM 11759 0 0 0 0 0 0 0 16-3584 chrM 11760 0 0 0 0 0 0 0 16-3584 chrM 11761 0 0 0 0 0 0 0 16-3584 chrM 11762 0 0 0 0 0 0 0 16-3584 chrM 11763 0 0 0 0 0 0 0 16-3584 chrM 11764 0 0 0 0 0 0 0 16-3584 chrM 11765 0 0 0 0 0 0 0 16-3584 chrM 11766 0 0 0 0 0 0 0 16-3584 chrM 11767 0 0 0 0 0 0 0 16-3584 chrM 11768 0 0 0 0 0 0 0 16-3584 chrM 11769 0 0 0 0 0 0 0 16-3584 chrM 11770 0 0 0 0 0 0 0 16-3584 chrM 11771 0 0 0 0 0 0 0 16-3584 chrM 11772 0 0 0 0 0 0 0 16-3584 chrM 11773 0 0 0 0 0 0 0 16-3584 chrM 11774 0 0 0 0 0 0 0 16-3584 chrM 11775 0 0 0 0 0 0 0 16-3584 chrM 11776 0 0 0 0 0 0 0 16-3584 chrM 11777 0 0 0 0 0 0 0 16-3584 chrM 11778 0 0 0 0 0 0 0 16-3584 chrM 11779 0 0 0 0 0 0 0 16-3584 chrM 11780 0 0 0 0 0 0 0 16-3584 chrM 11781 0 0 0 0 0 0 0 16-3584 chrM 11782 0 0 0 0 0 0 0 16-3584 chrM 11783 0 0 0 0 0 0 0 16-3584 chrM 11784 0 0 0 0 0 0 0 16-3584 chrM 11785 0 0 0 0 0 0 0 16-3584 chrM 11786 0 0 0 0 0 0 0 16-3584 chrM 11787 0 0 0 0 0 0 0 16-3584 chrM 11788 0 0 0 0 0 0 0 16-3584 chrM 11789 0 0 0 0 0 0 0 16-3584 chrM 11790 0 0 0 0 0 0 0 16-3584 chrM 11791 0 0 0 0 0 0 0 16-3584 chrM 11792 0 0 0 0 0 0 0 16-3584 chrM 11793 0 0 0 0 0 0 0 16-3584 chrM 11794 0 0 0 0 0 0 0 16-3584 chrM 11795 0 0 0 0 0 0 0 16-3584 chrM 11796 0 0 0 0 0 0 0 16-3584 chrM 11797 0 0 0 0 0 0 0 16-3584 chrM 11798 0 0 0 0 0 0 0 16-3584 chrM 11799 0 0 0 0 0 0 0 16-3584 chrM 11800 0 0 0 0 0 0 0 16-3584 chrM 11801 0 0 0 0 0 0 0 16-3584 chrM 11802 0 0 0 0 0 0 0 16-3584 chrM 11803 0 0 0 0 0 0 0 16-3584 chrM 11804 0 0 0 0 0 0 0 16-3584 chrM 11805 0 0 0 0 0 0 0 16-3584 chrM 11806 0 0 0 0 0 0 0 16-3584 chrM 11807 0 0 0 0 0 0 0 16-3584 chrM 11808 0 0 0 0 0 0 0 16-3584 chrM 11809 0 0 0 0 0 0 0 16-3584 chrM 11810 0 0 0 0 0 0 0 16-3584 chrM 11811 0 0 0 0 0 0 0 16-3584 chrM 11812 0 0 0 0 0 0 0 16-3584 chrM 11813 0 0 0 0 0 0 0 16-3584 chrM 11814 0 0 0 0 0 0 0 16-3584 chrM 11815 0 0 0 0 0 0 0 16-3584 chrM 11816 0 0 0 0 0 0 0 16-3584 chrM 11817 0 0 0 0 0 0 0 16-3584 chrM 11818 0 0 0 0 0 0 0 16-3584 chrM 11819 0 0 0 0 0 0 0 16-3584 chrM 11820 0 0 0 0 0 0 0 16-3584 chrM 11821 0 0 0 0 0 0 0 16-3584 chrM 11822 0 0 0 0 0 0 0 16-3584 chrM 11823 0 0 0 0 0 0 0 16-3584 chrM 11824 0 0 0 0 0 0 0 16-3584 chrM 11825 0 0 0 0 0 0 0 16-3584 chrM 11826 0 0 0 0 0 0 0 16-3584 chrM 11827 0 0 0 0 0 0 0 16-3584 chrM 11828 0 0 0 0 0 0 0 16-3584 chrM 11829 0 0 0 0 0 0 0 16-3584 chrM 11830 0 0 0 0 0 0 0 16-3584 chrM 11831 0 0 0 0 0 0 0 16-3584 chrM 11832 0 0 0 0 0 0 0 16-3584 chrM 11833 0 0 0 0 0 0 0 16-3584 chrM 11834 0 0 0 0 0 0 0 16-3584 chrM 11835 0 0 0 0 0 0 0 16-3584 chrM 11836 0 0 0 0 0 0 0 16-3584 chrM 11837 0 0 0 0 0 0 0 16-3584 chrM 11838 0 0 0 0 0 0 0 16-3584 chrM 11839 0 0 0 0 0 0 0 16-3584 chrM 11840 0 0 0 0 0 0 0 16-3584 chrM 11841 0 0 0 0 0 0 0 16-3584 chrM 11842 0 0 0 0 0 0 0 16-3584 chrM 11843 0 0 0 0 0 0 0 16-3584 chrM 11844 0 0 0 0 0 0 0 16-3584 chrM 11845 0 0 0 0 0 0 0 16-3584 chrM 11846 0 0 0 0 0 0 0 16-3584 chrM 11847 0 0 0 0 0 0 0 16-3584 chrM 11848 0 0 0 0 0 0 0 16-3584 chrM 11849 0 0 0 0 0 0 0 16-3584 chrM 11850 0 0 0 0 0 0 0 16-3584 chrM 11851 0 0 0 0 0 0 0 16-3584 chrM 11852 0 0 0 0 0 0 0 16-3584 chrM 11853 0 0 0 0 0 0 0 16-3584 chrM 11854 0 0 0 0 0 0 0 16-3584 chrM 11855 0 0 0 0 0 0 0 16-3584 chrM 11856 0 0 0 0 0 0 0 16-3584 chrM 11857 0 0 0 0 0 0 0 16-3584 chrM 11858 0 0 0 0 0 0 0 16-3584 chrM 11859 0 0 0 0 0 0 0 16-3584 chrM 11860 0 0 0 0 0 0 0 16-3584 chrM 11861 0 0 0 0 0 0 0 16-3584 chrM 11862 0 0 0 0 0 0 0 16-3584 chrM 11863 0 0 0 0 0 0 0 16-3584 chrM 11864 0 0 0 0 0 0 0 16-3584 chrM 11865 0 0 0 0 0 0 0 16-3584 chrM 11866 0 0 0 0 0 0 0 16-3584 chrM 11867 0 0 0 0 0 0 0 16-3584 chrM 11868 0 0 0 0 0 0 0 16-3584 chrM 11869 0 0 0 0 0 0 0 16-3584 chrM 11870 0 0 0 0 0 0 0 16-3584 chrM 11871 0 0 0 0 0 0 0 16-3584 chrM 11872 0 0 0 0 0 0 0 16-3584 chrM 11873 0 0 0 0 0 0 0 16-3584 chrM 11874 0 0 0 0 0 0 0 16-3584 chrM 11875 0 0 0 0 0 0 0 16-3584 chrM 11876 0 0 0 0 0 0 0 16-3584 chrM 11877 0 0 0 0 0 0 0 16-3584 chrM 11878 0 0 0 0 0 0 0 16-3584 chrM 11879 0 0 0 0 0 0 0 16-3584 chrM 11880 0 0 0 0 0 0 0 16-3584 chrM 11881 0 0 0 0 0 0 0 16-3584 chrM 11882 0 0 0 0 0 0 0 16-3584 chrM 11883 0 0 0 0 0 0 0 16-3584 chrM 11884 0 0 0 0 0 0 0 16-3584 chrM 11885 0 0 0 0 0 0 0 16-3584 chrM 11886 0 0 0 0 0 0 0 16-3584 chrM 11887 0 0 0 0 0 0 0 16-3584 chrM 11888 0 0 0 0 0 0 0 16-3584 chrM 11889 0 0 0 0 0 0 0 16-3584 chrM 11890 0 0 0 0 0 0 0 16-3584 chrM 11891 0 0 0 0 0 0 0 16-3584 chrM 11892 0 0 0 0 0 0 0 16-3584 chrM 11893 0 0 0 0 0 0 0 16-3584 chrM 11894 0 0 0 0 0 0 0 16-3584 chrM 11895 0 0 0 0 0 0 0 16-3584 chrM 11896 0 0 0 0 0 0 0 16-3584 chrM 11897 0 0 0 0 0 0 0 16-3584 chrM 11898 0 0 0 0 0 0 0 16-3584 chrM 11899 0 0 0 0 0 0 0 16-3584 chrM 11900 0 0 0 0 0 0 0 16-3584 chrM 11901 0 0 0 0 0 0 0 16-3584 chrM 11902 0 0 0 0 0 0 0 16-3584 chrM 11903 0 0 0 0 0 0 0 16-3584 chrM 11904 0 0 0 0 0 0 0 16-3584 chrM 11905 0 0 0 0 0 0 0 16-3584 chrM 11906 0 0 0 0 0 0 0 16-3584 chrM 11907 0 0 0 0 0 0 0 16-3584 chrM 11908 0 0 0 0 0 0 0 16-3584 chrM 11909 0 0 0 0 0 0 0 16-3584 chrM 11910 0 0 0 0 0 0 0 16-3584 chrM 11911 0 0 0 0 0 0 0 16-3584 chrM 11912 0 0 0 0 0 0 0 16-3584 chrM 11913 0 0 0 0 0 0 0 16-3584 chrM 11914 0 0 0 0 0 0 0 16-3584 chrM 11915 0 0 0 0 0 0 0 16-3584 chrM 11916 0 0 0 0 0 0 0 16-3584 chrM 11917 0 0 0 0 0 0 0 16-3584 chrM 11918 0 0 0 0 0 0 0 16-3584 chrM 11919 0 0 0 0 0 0 0 16-3584 chrM 11920 0 0 0 0 0 0 0 16-3584 chrM 11921 0 0 0 0 0 0 0 16-3584 chrM 11922 0 0 0 0 0 0 0 16-3584 chrM 11923 0 0 0 0 0 0 0 16-3584 chrM 11924 0 0 0 0 0 0 0 16-3584 chrM 11925 0 0 0 0 0 0 0 16-3584 chrM 11926 0 0 0 0 0 0 0 16-3584 chrM 11927 0 0 0 0 0 0 0 16-3584 chrM 11928 0 0 0 0 0 0 0 16-3584 chrM 11929 0 0 0 0 0 0 0 16-3584 chrM 11930 0 0 0 0 0 0 0 16-3584 chrM 11931 0 0 0 0 0 0 0 16-3584 chrM 11932 0 0 0 0 0 0 0 16-3584 chrM 11933 0 0 0 0 0 0 0 16-3584 chrM 11934 0 0 0 0 0 0 0 16-3584 chrM 11935 0 0 0 0 0 0 0 16-3584 chrM 11936 0 0 0 0 0 0 0 16-3584 chrM 11937 0 0 0 0 0 0 0 16-3584 chrM 11938 0 0 0 0 0 0 0 16-3584 chrM 11939 0 0 0 0 0 0 0 16-3584 chrM 11940 0 0 0 0 0 0 0 16-3584 chrM 11941 0 0 0 0 0 0 0 16-3584 chrM 11942 0 0 0 0 0 0 0 16-3584 chrM 11943 0 0 0 0 0 0 0 16-3584 chrM 11944 0 0 0 0 0 0 0 16-3584 chrM 11945 0 0 0 0 0 0 0 16-3584 chrM 11946 0 0 0 0 0 0 0 16-3584 chrM 11947 0 0 0 0 0 0 0 16-3584 chrM 11948 0 0 0 0 0 0 0 16-3584 chrM 11949 0 0 0 0 0 0 0 16-3584 chrM 11950 0 0 0 0 0 0 0 16-3584 chrM 11951 0 0 0 0 0 0 0 16-3584 chrM 11952 0 0 0 0 0 0 0 16-3584 chrM 11953 0 0 0 0 0 0 0 16-3584 chrM 11954 0 0 0 0 0 0 0 16-3584 chrM 11955 0 0 0 0 0 0 0 16-3584 chrM 11956 0 0 0 0 0 0 0 16-3584 chrM 11957 0 0 0 0 0 0 0 16-3584 chrM 11958 0 0 0 0 0 0 0 16-3584 chrM 11959 0 0 0 0 0 0 0 16-3584 chrM 11960 0 0 0 0 0 0 0 16-3584 chrM 11961 0 0 0 0 0 0 0 16-3584 chrM 11962 0 0 0 0 0 0 0 16-3584 chrM 11963 0 0 0 0 0 0 0 16-3584 chrM 11964 0 0 0 0 0 0 0 16-3584 chrM 11965 0 0 0 0 0 0 0 16-3584 chrM 11966 0 0 0 0 0 0 0 16-3584 chrM 11967 0 0 0 0 0 0 0 16-3584 chrM 11968 0 0 0 0 0 0 0 16-3584 chrM 11969 0 0 0 0 0 0 0 16-3584 chrM 11970 0 0 0 0 0 0 0 16-3584 chrM 11971 0 0 0 0 0 0 0 16-3584 chrM 11972 0 0 0 0 0 0 0 16-3584 chrM 11973 0 0 0 0 0 0 0 16-3584 chrM 11974 0 0 0 0 0 0 0 16-3584 chrM 11975 0 0 0 0 0 0 0 16-3584 chrM 11976 0 0 0 0 0 0 0 16-3584 chrM 11977 0 0 0 0 0 0 0 16-3584 chrM 11978 0 0 0 0 0 0 0 16-3584 chrM 11979 0 0 0 0 0 0 0 16-3584 chrM 11980 0 0 0 0 0 0 0 16-3584 chrM 11981 0 0 0 0 0 0 0 16-3584 chrM 11982 0 0 0 0 0 0 0 16-3584 chrM 11983 0 0 0 0 0 0 0 16-3584 chrM 11984 0 0 0 0 0 0 0 16-3584 chrM 11985 0 0 0 0 0 0 0 16-3584 chrM 11986 0 0 0 0 0 0 0 16-3584 chrM 11987 0 0 0 0 0 0 0 16-3584 chrM 11988 0 0 0 0 0 0 0 16-3584 chrM 11989 0 0 0 0 0 0 0 16-3584 chrM 11990 0 0 0 0 0 0 0 16-3584 chrM 11991 1 0 1 0 0 0 0 16-3584 chrM 11992 1 1 0 0 0 0 0 16-3584 chrM 11993 1 1 0 0 0 0 0 16-3584 chrM 11994 1 0 1 0 0 0 0 16-3584 chrM 11995 1 1 0 0 0 0 0 16-3584 chrM 11996 2 0 1 0 1 0 0 16-3584 chrM 11997 2 1 1 0 0 0 0 16-3584 chrM 11998 2 1 0 0 1 0 0 16-3584 chrM 11999 2 0 0 0 2 0 0 16-3584 chrM 12000 2 0 0 1 1 0 0 16-3584 chrM 12001 2 1 1 0 0 0 0 16-3584 chrM 12002 2 0 1 1 0 0 0 16-3584 chrM 12003 2 1 0 1 0 0 0 16-3584 chrM 12004 2 1 0 1 0 0 0 16-3584 chrM 12005 2 0 1 1 0 0 0 16-3584 chrM 12006 2 0 1 1 0 0 0 16-3584 chrM 12007 2 1 0 0 1 0 0 16-3584 chrM 12008 2 0 2 0 0 0 0 16-3584 chrM 12009 2 1 1 0 0 0 0 16-3584 chrM 12010 2 0 2 0 0 0 0 16-3584 chrM 12011 2 0 0 1 1 0 0 16-3584 chrM 12012 2 0 1 0 1 0 0 16-3584 chrM 12013 2 0 0 2 0 0 0 16-3584 chrM 12014 2 1 0 1 0 0 0 16-3584 chrM 12015 2 0 1 1 0 0 0 16-3584 chrM 12016 2 1 0 0 1 0 0 16-3584 chrM 12017 2 0 1 0 1 0 0 16-3584 chrM 12018 2 1 1 0 0 0 0 16-3584 chrM 12019 2 0 1 0 1 0 0 16-3584 chrM 12020 2 1 0 0 1 0 0 16-3584 chrM 12021 2 0 0 0 2 0 0 16-3584 chrM 12022 2 1 1 0 0 0 0 16-3584 chrM 12023 2 0 1 1 0 0 0 16-3584 chrM 12024 2 1 1 0 0 0 0 16-3584 chrM 12025 2 2 0 0 0 0 0 16-3584 chrM 12026 2 1 0 0 1 0 0 16-3584 chrM 12027 2 1 0 1 0 0 0 16-3584 chrM 12028 2 0 0 1 1 0 0 16-3584 chrM 12029 2 0 0 0 2 0 0 16-3584 chrM 12030 2 0 1 1 0 0 0 16-3584 chrM 12031 2 0 1 1 0 0 0 16-3584 chrM 12032 2 0 1 1 0 0 0 16-3584 chrM 12033 2 1 0 0 1 0 0 16-3584 chrM 12034 2 1 1 0 0 0 0 16-3584 chrM 12035 2 2 0 0 0 0 0 16-3584 chrM 12036 2 0 0 2 0 0 0 16-3584 chrM 12037 2 0 0 1 1 0 0 16-3584 chrM 12038 2 0 1 0 1 0 0 16-3584 chrM 12039 2 1 0 0 1 0 0 16-3584 chrM 12040 2 0 0 1 1 0 0 16-3584 chrM 12041 2 0 0 0 2 0 0 16-3584 chrM 12042 2 1 1 0 0 0 0 16-3584 chrM 12043 2 1 0 0 1 0 0 16-3584 chrM 12044 2 1 1 0 0 0 0 16-3584 chrM 12045 2 0 0 1 1 0 0 16-3584 chrM 12046 2 0 2 0 0 0 0 16-3584 chrM 12047 2 0 0 2 0 0 0 16-3584 chrM 12048 1 0 0 1 0 0 0 16-3584 chrM 12049 1 1 0 0 0 0 0 16-3584 chrM 12050 1 0 0 1 0 0 0 16-3584 chrM 12051 1 1 0 0 0 0 0 16-3584 chrM 12052 1 0 0 0 1 0 0 16-3584 chrM 12053 0 0 0 0 0 0 0 16-3584 chrM 12054 0 0 0 0 0 0 0 16-3584 chrM 12055 0 0 0 0 0 0 0 16-3584 chrM 12056 0 0 0 0 0 0 0 16-3584 chrM 12057 0 0 0 0 0 0 0 16-3584 chrM 12058 0 0 0 0 0 0 0 16-3584 chrM 12059 0 0 0 0 0 0 0 16-3584 chrM 12060 0 0 0 0 0 0 0 16-3584 chrM 12061 0 0 0 0 0 0 0 16-3584 chrM 12062 0 0 0 0 0 0 0 16-3584 chrM 12063 0 0 0 0 0 0 0 16-3584 chrM 12064 0 0 0 0 0 0 0 16-3584 chrM 12065 0 0 0 0 0 0 0 16-3584 chrM 12066 0 0 0 0 0 0 0 16-3584 chrM 12067 0 0 0 0 0 0 0 16-3584 chrM 12068 0 0 0 0 0 0 0 16-3584 chrM 12069 0 0 0 0 0 0 0 16-3584 chrM 12070 0 0 0 0 0 0 0 16-3584 chrM 12071 0 0 0 0 0 0 0 16-3584 chrM 12072 0 0 0 0 0 0 0 16-3584 chrM 12073 0 0 0 0 0 0 0 16-3584 chrM 12074 0 0 0 0 0 0 0 16-3584 chrM 12075 0 0 0 0 0 0 0 16-3584 chrM 12076 0 0 0 0 0 0 0 16-3584 chrM 12077 0 0 0 0 0 0 0 16-3584 chrM 12078 0 0 0 0 0 0 0 16-3584 chrM 12079 0 0 0 0 0 0 0 16-3584 chrM 12080 0 0 0 0 0 0 0 16-3584 chrM 12081 0 0 0 0 0 0 0 16-3584 chrM 12082 0 0 0 0 0 0 0 16-3584 chrM 12083 0 0 0 0 0 0 0 16-3584 chrM 12084 0 0 0 0 0 0 0 16-3584 chrM 12085 0 0 0 0 0 0 0 16-3584 chrM 12086 0 0 0 0 0 0 0 16-3584 chrM 12087 0 0 0 0 0 0 0 16-3584 chrM 12088 0 0 0 0 0 0 0 16-3584 chrM 12089 0 0 0 0 0 0 0 16-3584 chrM 12090 0 0 0 0 0 0 0 16-3584 chrM 12091 0 0 0 0 0 0 0 16-3584 chrM 12092 0 0 0 0 0 0 0 16-3584 chrM 12093 0 0 0 0 0 0 0 16-3584 chrM 12094 0 0 0 0 0 0 0 16-3584 chrM 12095 0 0 0 0 0 0 0 16-3584 chrM 12096 0 0 0 0 0 0 0 16-3584 chrM 12097 0 0 0 0 0 0 0 16-3584 chrM 12098 0 0 0 0 0 0 0 16-3584 chrM 12099 0 0 0 0 0 0 0 16-3584 chrM 12100 0 0 0 0 0 0 0 16-3584 chrM 12101 0 0 0 0 0 0 0 16-3584 chrM 12102 0 0 0 0 0 0 0 16-3584 chrM 12103 0 0 0 0 0 0 0 16-3584 chrM 12104 0 0 0 0 0 0 0 16-3584 chrM 12105 0 0 0 0 0 0 0 16-3584 chrM 12106 0 0 0 0 0 0 0 16-3584 chrM 12107 0 0 0 0 0 0 0 16-3584 chrM 12108 0 0 0 0 0 0 0 16-3584 chrM 12109 0 0 0 0 0 0 0 16-3584 chrM 12110 0 0 0 0 0 0 0 16-3584 chrM 12111 0 0 0 0 0 0 0 16-3584 chrM 12112 0 0 0 0 0 0 0 16-3584 chrM 12113 0 0 0 0 0 0 0 16-3584 chrM 12114 0 0 0 0 0 0 0 16-3584 chrM 12115 0 0 0 0 0 0 0 16-3584 chrM 12116 0 0 0 0 0 0 0 16-3584 chrM 12117 0 0 0 0 0 0 0 16-3584 chrM 12118 0 0 0 0 0 0 0 16-3584 chrM 12119 0 0 0 0 0 0 0 16-3584 chrM 12120 0 0 0 0 0 0 0 16-3584 chrM 12121 0 0 0 0 0 0 0 16-3584 chrM 12122 0 0 0 0 0 0 0 16-3584 chrM 12123 0 0 0 0 0 0 0 16-3584 chrM 12124 0 0 0 0 0 0 0 16-3584 chrM 12125 0 0 0 0 0 0 0 16-3584 chrM 12126 0 0 0 0 0 0 0 16-3584 chrM 12127 0 0 0 0 0 0 0 16-3584 chrM 12128 0 0 0 0 0 0 0 16-3584 chrM 12129 0 0 0 0 0 0 0 16-3584 chrM 12130 0 0 0 0 0 0 0 16-3584 chrM 12131 0 0 0 0 0 0 0 16-3584 chrM 12132 0 0 0 0 0 0 0 16-3584 chrM 12133 0 0 0 0 0 0 0 16-3584 chrM 12134 0 0 0 0 0 0 0 16-3584 chrM 12135 0 0 0 0 0 0 0 16-3584 chrM 12136 0 0 0 0 0 0 0 16-3584 chrM 12137 0 0 0 0 0 0 0 16-3584 chrM 12138 0 0 0 0 0 0 0 16-3584 chrM 12139 0 0 0 0 0 0 0 16-3584 chrM 12140 0 0 0 0 0 0 0 16-3584 chrM 12141 0 0 0 0 0 0 0 16-3584 chrM 12142 0 0 0 0 0 0 0 16-3584 chrM 12143 0 0 0 0 0 0 0 16-3584 chrM 12144 0 0 0 0 0 0 0 16-3584 chrM 12145 0 0 0 0 0 0 0 16-3584 chrM 12146 0 0 0 0 0 0 0 16-3584 chrM 12147 0 0 0 0 0 0 0 16-3584 chrM 12148 0 0 0 0 0 0 0 16-3584 chrM 12149 0 0 0 0 0 0 0 16-3584 chrM 12150 0 0 0 0 0 0 0 16-3584 chrM 12151 0 0 0 0 0 0 0 16-3584 chrM 12152 0 0 0 0 0 0 0 16-3584 chrM 12153 0 0 0 0 0 0 0 16-3584 chrM 12154 0 0 0 0 0 0 0 16-3584 chrM 12155 0 0 0 0 0 0 0 16-3584 chrM 12156 0 0 0 0 0 0 0 16-3584 chrM 12157 0 0 0 0 0 0 0 16-3584 chrM 12158 0 0 0 0 0 0 0 16-3584 chrM 12159 0 0 0 0 0 0 0 16-3584 chrM 12160 0 0 0 0 0 0 0 16-3584 chrM 12161 0 0 0 0 0 0 0 16-3584 chrM 12162 0 0 0 0 0 0 0 16-3584 chrM 12163 0 0 0 0 0 0 0 16-3584 chrM 12164 0 0 0 0 0 0 0 16-3584 chrM 12165 0 0 0 0 0 0 0 16-3584 chrM 12166 0 0 0 0 0 0 0 16-3584 chrM 12167 0 0 0 0 0 0 0 16-3584 chrM 12168 0 0 0 0 0 0 0 16-3584 chrM 12169 0 0 0 0 0 0 0 16-3584 chrM 12170 0 0 0 0 0 0 0 16-3584 chrM 12171 0 0 0 0 0 0 0 16-3584 chrM 12172 0 0 0 0 0 0 0 16-3584 chrM 12173 0 0 0 0 0 0 0 16-3584 chrM 12174 0 0 0 0 0 0 0 16-3584 chrM 12175 0 0 0 0 0 0 0 16-3584 chrM 12176 0 0 0 0 0 0 0 16-3584 chrM 12177 0 0 0 0 0 0 0 16-3584 chrM 12178 0 0 0 0 0 0 0 16-3584 chrM 12179 0 0 0 0 0 0 0 16-3584 chrM 12180 0 0 0 0 0 0 0 16-3584 chrM 12181 0 0 0 0 0 0 0 16-3584 chrM 12182 0 0 0 0 0 0 0 16-3584 chrM 12183 0 0 0 0 0 0 0 16-3584 chrM 12184 0 0 0 0 0 0 0 16-3584 chrM 12185 0 0 0 0 0 0 0 16-3584 chrM 12186 0 0 0 0 0 0 0 16-3584 chrM 12187 0 0 0 0 0 0 0 16-3584 chrM 12188 0 0 0 0 0 0 0 16-3584 chrM 12189 0 0 0 0 0 0 0 16-3584 chrM 12190 0 0 0 0 0 0 0 16-3584 chrM 12191 0 0 0 0 0 0 0 16-3584 chrM 12192 0 0 0 0 0 0 0 16-3584 chrM 12193 0 0 0 0 0 0 0 16-3584 chrM 12194 0 0 0 0 0 0 0 16-3584 chrM 12195 0 0 0 0 0 0 0 16-3584 chrM 12196 0 0 0 0 0 0 0 16-3584 chrM 12197 0 0 0 0 0 0 0 16-3584 chrM 12198 0 0 0 0 0 0 0 16-3584 chrM 12199 0 0 0 0 0 0 0 16-3584 chrM 12200 0 0 0 0 0 0 0 16-3584 chrM 12201 0 0 0 0 0 0 0 16-3584 chrM 12202 0 0 0 0 0 0 0 16-3584 chrM 12203 0 0 0 0 0 0 0 16-3584 chrM 12204 0 0 0 0 0 0 0 16-3584 chrM 12205 0 0 0 0 0 0 0 16-3584 chrM 12206 0 0 0 0 0 0 0 16-3584 chrM 12207 0 0 0 0 0 0 0 16-3584 chrM 12208 0 0 0 0 0 0 0 16-3584 chrM 12209 0 0 0 0 0 0 0 16-3584 chrM 12210 0 0 0 0 0 0 0 16-3584 chrM 12211 0 0 0 0 0 0 0 16-3584 chrM 12212 0 0 0 0 0 0 0 16-3584 chrM 12213 0 0 0 0 0 0 0 16-3584 chrM 12214 0 0 0 0 0 0 0 16-3584 chrM 12215 0 0 0 0 0 0 0 16-3584 chrM 12216 0 0 0 0 0 0 0 16-3584 chrM 12217 0 0 0 0 0 0 0 16-3584 chrM 12218 0 0 0 0 0 0 0 16-3584 chrM 12219 0 0 0 0 0 0 0 16-3584 chrM 12220 0 0 0 0 0 0 0 16-3584 chrM 12221 0 0 0 0 0 0 0 16-3584 chrM 12222 0 0 0 0 0 0 0 16-3584 chrM 12223 0 0 0 0 0 0 0 16-3584 chrM 12224 0 0 0 0 0 0 0 16-3584 chrM 12225 0 0 0 0 0 0 0 16-3584 chrM 12226 0 0 0 0 0 0 0 16-3584 chrM 12227 0 0 0 0 0 0 0 16-3584 chrM 12228 0 0 0 0 0 0 0 16-3584 chrM 12229 0 0 0 0 0 0 0 16-3584 chrM 12230 0 0 0 0 0 0 0 16-3584 chrM 12231 0 0 0 0 0 0 0 16-3584 chrM 12232 0 0 0 0 0 0 0 16-3584 chrM 12233 0 0 0 0 0 0 0 16-3584 chrM 12234 0 0 0 0 0 0 0 16-3584 chrM 12235 0 0 0 0 0 0 0 16-3584 chrM 12236 0 0 0 0 0 0 0 16-3584 chrM 12237 0 0 0 0 0 0 0 16-3584 chrM 12238 0 0 0 0 0 0 0 16-3584 chrM 12239 0 0 0 0 0 0 0 16-3584 chrM 12240 0 0 0 0 0 0 0 16-3584 chrM 12241 0 0 0 0 0 0 0 16-3584 chrM 12242 0 0 0 0 0 0 0 16-3584 chrM 12243 0 0 0 0 0 0 0 16-3584 chrM 12244 0 0 0 0 0 0 0 16-3584 chrM 12245 0 0 0 0 0 0 0 16-3584 chrM 12246 0 0 0 0 0 0 0 16-3584 chrM 12247 0 0 0 0 0 0 0 16-3584 chrM 12248 0 0 0 0 0 0 0 16-3584 chrM 12249 0 0 0 0 0 0 0 16-3584 chrM 12250 0 0 0 0 0 0 0 16-3584 chrM 12251 0 0 0 0 0 0 0 16-3584 chrM 12252 0 0 0 0 0 0 0 16-3584 chrM 12253 0 0 0 0 0 0 0 16-3584 chrM 12254 0 0 0 0 0 0 0 16-3584 chrM 12255 0 0 0 0 0 0 0 16-3584 chrM 12256 0 0 0 0 0 0 0 16-3584 chrM 12257 0 0 0 0 0 0 0 16-3584 chrM 12258 0 0 0 0 0 0 0 16-3584 chrM 12259 0 0 0 0 0 0 0 16-3584 chrM 12260 0 0 0 0 0 0 0 16-3584 chrM 12261 0 0 0 0 0 0 0 16-3584 chrM 12262 0 0 0 0 0 0 0 16-3584 chrM 12263 0 0 0 0 0 0 0 16-3584 chrM 12264 0 0 0 0 0 0 0 16-3584 chrM 12265 0 0 0 0 0 0 0 16-3584 chrM 12266 0 0 0 0 0 0 0 16-3584 chrM 12267 0 0 0 0 0 0 0 16-3584 chrM 12268 0 0 0 0 0 0 0 16-3584 chrM 12269 0 0 0 0 0 0 0 16-3584 chrM 12270 0 0 0 0 0 0 0 16-3584 chrM 12271 0 0 0 0 0 0 0 16-3584 chrM 12272 0 0 0 0 0 0 0 16-3584 chrM 12273 0 0 0 0 0 0 0 16-3584 chrM 12274 0 0 0 0 0 0 0 16-3584 chrM 12275 0 0 0 0 0 0 0 16-3584 chrM 12276 0 0 0 0 0 0 0 16-3584 chrM 12277 0 0 0 0 0 0 0 16-3584 chrM 12278 0 0 0 0 0 0 0 16-3584 chrM 12279 0 0 0 0 0 0 0 16-3584 chrM 12280 0 0 0 0 0 0 0 16-3584 chrM 12281 0 0 0 0 0 0 0 16-3584 chrM 12282 0 0 0 0 0 0 0 16-3584 chrM 12283 0 0 0 0 0 0 0 16-3584 chrM 12284 0 0 0 0 0 0 0 16-3584 chrM 12285 0 0 0 0 0 0 0 16-3584 chrM 12286 0 0 0 0 0 0 0 16-3584 chrM 12287 0 0 0 0 0 0 0 16-3584 chrM 12288 0 0 0 0 0 0 0 16-3584 chrM 12289 0 0 0 0 0 0 0 16-3584 chrM 12290 0 0 0 0 0 0 0 16-3584 chrM 12291 0 0 0 0 0 0 0 16-3584 chrM 12292 0 0 0 0 0 0 0 16-3584 chrM 12293 0 0 0 0 0 0 0 16-3584 chrM 12294 0 0 0 0 0 0 0 16-3584 chrM 12295 0 0 0 0 0 0 0 16-3584 chrM 12296 0 0 0 0 0 0 0 16-3584 chrM 12297 0 0 0 0 0 0 0 16-3584 chrM 12298 0 0 0 0 0 0 0 16-3584 chrM 12299 0 0 0 0 0 0 0 16-3584 chrM 12300 0 0 0 0 0 0 0 16-3584 chrM 12301 0 0 0 0 0 0 0 16-3584 chrM 12302 0 0 0 0 0 0 0 16-3584 chrM 12303 0 0 0 0 0 0 0 16-3584 chrM 12304 0 0 0 0 0 0 0 16-3584 chrM 12305 0 0 0 0 0 0 0 16-3584 chrM 12306 0 0 0 0 0 0 0 16-3584 chrM 12307 0 0 0 0 0 0 0 16-3584 chrM 12308 0 0 0 0 0 0 0 16-3584 chrM 12309 0 0 0 0 0 0 0 16-3584 chrM 12310 0 0 0 0 0 0 0 16-3584 chrM 12311 0 0 0 0 0 0 0 16-3584 chrM 12312 0 0 0 0 0 0 0 16-3584 chrM 12313 0 0 0 0 0 0 0 16-3584 chrM 12314 0 0 0 0 0 0 0 16-3584 chrM 12315 0 0 0 0 0 0 0 16-3584 chrM 12316 0 0 0 0 0 0 0 16-3584 chrM 12317 0 0 0 0 0 0 0 16-3584 chrM 12318 0 0 0 0 0 0 0 16-3584 chrM 12319 0 0 0 0 0 0 0 16-3584 chrM 12320 0 0 0 0 0 0 0 16-3584 chrM 12321 0 0 0 0 0 0 0 16-3584 chrM 12322 0 0 0 0 0 0 0 16-3584 chrM 12323 0 0 0 0 0 0 0 16-3584 chrM 12324 0 0 0 0 0 0 0 16-3584 chrM 12325 0 0 0 0 0 0 0 16-3584 chrM 12326 0 0 0 0 0 0 0 16-3584 chrM 12327 0 0 0 0 0 0 0 16-3584 chrM 12328 0 0 0 0 0 0 0 16-3584 chrM 12329 0 0 0 0 0 0 0 16-3584 chrM 12330 0 0 0 0 0 0 0 16-3584 chrM 12331 0 0 0 0 0 0 0 16-3584 chrM 12332 0 0 0 0 0 0 0 16-3584 chrM 12333 0 0 0 0 0 0 0 16-3584 chrM 12334 0 0 0 0 0 0 0 16-3584 chrM 12335 0 0 0 0 0 0 0 16-3584 chrM 12336 0 0 0 0 0 0 0 16-3584 chrM 12337 0 0 0 0 0 0 0 16-3584 chrM 12338 0 0 0 0 0 0 0 16-3584 chrM 12339 0 0 0 0 0 0 0 16-3584 chrM 12340 0 0 0 0 0 0 0 16-3584 chrM 12341 0 0 0 0 0 0 0 16-3584 chrM 12342 0 0 0 0 0 0 0 16-3584 chrM 12343 0 0 0 0 0 0 0 16-3584 chrM 12344 0 0 0 0 0 0 0 16-3584 chrM 12345 0 0 0 0 0 0 0 16-3584 chrM 12346 0 0 0 0 0 0 0 16-3584 chrM 12347 0 0 0 0 0 0 0 16-3584 chrM 12348 0 0 0 0 0 0 0 16-3584 chrM 12349 0 0 0 0 0 0 0 16-3584 chrM 12350 0 0 0 0 0 0 0 16-3584 chrM 12351 0 0 0 0 0 0 0 16-3584 chrM 12352 0 0 0 0 0 0 0 16-3584 chrM 12353 0 0 0 0 0 0 0 16-3584 chrM 12354 0 0 0 0 0 0 0 16-3584 chrM 12355 0 0 0 0 0 0 0 16-3584 chrM 12356 0 0 0 0 0 0 0 16-3584 chrM 12357 0 0 0 0 0 0 0 16-3584 chrM 12358 0 0 0 0 0 0 0 16-3584 chrM 12359 0 0 0 0 0 0 0 16-3584 chrM 12360 0 0 0 0 0 0 0 16-3584 chrM 12361 0 0 0 0 0 0 0 16-3584 chrM 12362 0 0 0 0 0 0 0 16-3584 chrM 12363 0 0 0 0 0 0 0 16-3584 chrM 12364 0 0 0 0 0 0 0 16-3584 chrM 12365 0 0 0 0 0 0 0 16-3584 chrM 12366 0 0 0 0 0 0 0 16-3584 chrM 12367 0 0 0 0 0 0 0 16-3584 chrM 12368 0 0 0 0 0 0 0 16-3584 chrM 12369 0 0 0 0 0 0 0 16-3584 chrM 12370 0 0 0 0 0 0 0 16-3584 chrM 12371 0 0 0 0 0 0 0 16-3584 chrM 12372 0 0 0 0 0 0 0 16-3584 chrM 12373 0 0 0 0 0 0 0 16-3584 chrM 12374 0 0 0 0 0 0 0 16-3584 chrM 12375 0 0 0 0 0 0 0 16-3584 chrM 12376 0 0 0 0 0 0 0 16-3584 chrM 12377 0 0 0 0 0 0 0 16-3584 chrM 12378 0 0 0 0 0 0 0 16-3584 chrM 12379 0 0 0 0 0 0 0 16-3584 chrM 12380 0 0 0 0 0 0 0 16-3584 chrM 12381 0 0 0 0 0 0 0 16-3584 chrM 12382 0 0 0 0 0 0 0 16-3584 chrM 12383 0 0 0 0 0 0 0 16-3584 chrM 12384 0 0 0 0 0 0 0 16-3584 chrM 12385 0 0 0 0 0 0 0 16-3584 chrM 12386 0 0 0 0 0 0 0 16-3584 chrM 12387 0 0 0 0 0 0 0 16-3584 chrM 12388 0 0 0 0 0 0 0 16-3584 chrM 12389 0 0 0 0 0 0 0 16-3584 chrM 12390 0 0 0 0 0 0 0 16-3584 chrM 12391 0 0 0 0 0 0 0 16-3584 chrM 12392 0 0 0 0 0 0 0 16-3584 chrM 12393 0 0 0 0 0 0 0 16-3584 chrM 12394 0 0 0 0 0 0 0 16-3584 chrM 12395 0 0 0 0 0 0 0 16-3584 chrM 12396 0 0 0 0 0 0 0 16-3584 chrM 12397 0 0 0 0 0 0 0 16-3584 chrM 12398 0 0 0 0 0 0 0 16-3584 chrM 12399 0 0 0 0 0 0 0 16-3584 chrM 12400 0 0 0 0 0 0 0 16-3584 chrM 12401 0 0 0 0 0 0 0 16-3584 chrM 12402 0 0 0 0 0 0 0 16-3584 chrM 12403 0 0 0 0 0 0 0 16-3584 chrM 12404 0 0 0 0 0 0 0 16-3584 chrM 12405 0 0 0 0 0 0 0 16-3584 chrM 12406 0 0 0 0 0 0 0 16-3584 chrM 12407 0 0 0 0 0 0 0 16-3584 chrM 12408 0 0 0 0 0 0 0 16-3584 chrM 12409 0 0 0 0 0 0 0 16-3584 chrM 12410 0 0 0 0 0 0 0 16-3584 chrM 12411 0 0 0 0 0 0 0 16-3584 chrM 12412 0 0 0 0 0 0 0 16-3584 chrM 12413 0 0 0 0 0 0 0 16-3584 chrM 12414 0 0 0 0 0 0 0 16-3584 chrM 12415 0 0 0 0 0 0 0 16-3584 chrM 12416 0 0 0 0 0 0 0 16-3584 chrM 12417 0 0 0 0 0 0 0 16-3584 chrM 12418 0 0 0 0 0 0 0 16-3584 chrM 12419 0 0 0 0 0 0 0 16-3584 chrM 12420 0 0 0 0 0 0 0 16-3584 chrM 12421 0 0 0 0 0 0 0 16-3584 chrM 12422 0 0 0 0 0 0 0 16-3584 chrM 12423 0 0 0 0 0 0 0 16-3584 chrM 12424 0 0 0 0 0 0 0 16-3584 chrM 12425 0 0 0 0 0 0 0 16-3584 chrM 12426 0 0 0 0 0 0 0 16-3584 chrM 12427 0 0 0 0 0 0 0 16-3584 chrM 12428 0 0 0 0 0 0 0 16-3584 chrM 12429 0 0 0 0 0 0 0 16-3584 chrM 12430 0 0 0 0 0 0 0 16-3584 chrM 12431 0 0 0 0 0 0 0 16-3584 chrM 12432 0 0 0 0 0 0 0 16-3584 chrM 12433 0 0 0 0 0 0 0 16-3584 chrM 12434 0 0 0 0 0 0 0 16-3584 chrM 12435 0 0 0 0 0 0 0 16-3584 chrM 12436 0 0 0 0 0 0 0 16-3584 chrM 12437 0 0 0 0 0 0 0 16-3584 chrM 12438 0 0 0 0 0 0 0 16-3584 chrM 12439 0 0 0 0 0 0 0 16-3584 chrM 12440 0 0 0 0 0 0 0 16-3584 chrM 12441 0 0 0 0 0 0 0 16-3584 chrM 12442 0 0 0 0 0 0 0 16-3584 chrM 12443 0 0 0 0 0 0 0 16-3584 chrM 12444 0 0 0 0 0 0 0 16-3584 chrM 12445 0 0 0 0 0 0 0 16-3584 chrM 12446 0 0 0 0 0 0 0 16-3584 chrM 12447 0 0 0 0 0 0 0 16-3584 chrM 12448 0 0 0 0 0 0 0 16-3584 chrM 12449 0 0 0 0 0 0 0 16-3584 chrM 12450 0 0 0 0 0 0 0 16-3584 chrM 12451 0 0 0 0 0 0 0 16-3584 chrM 12452 0 0 0 0 0 0 0 16-3584 chrM 12453 0 0 0 0 0 0 0 16-3584 chrM 12454 0 0 0 0 0 0 0 16-3584 chrM 12455 0 0 0 0 0 0 0 16-3584 chrM 12456 0 0 0 0 0 0 0 16-3584 chrM 12457 0 0 0 0 0 0 0 16-3584 chrM 12458 0 0 0 0 0 0 0 16-3584 chrM 12459 0 0 0 0 0 0 0 16-3584 chrM 12460 0 0 0 0 0 0 0 16-3584 chrM 12461 0 0 0 0 0 0 0 16-3584 chrM 12462 0 0 0 0 0 0 0 16-3584 chrM 12463 0 0 0 0 0 0 0 16-3584 chrM 12464 0 0 0 0 0 0 0 16-3584 chrM 12465 0 0 0 0 0 0 0 16-3584 chrM 12466 0 0 0 0 0 0 0 16-3584 chrM 12467 0 0 0 0 0 0 0 16-3584 chrM 12468 0 0 0 0 0 0 0 16-3584 chrM 12469 0 0 0 0 0 0 0 16-3584 chrM 12470 0 0 0 0 0 0 0 16-3584 chrM 12471 0 0 0 0 0 0 0 16-3584 chrM 12472 0 0 0 0 0 0 0 16-3584 chrM 12473 0 0 0 0 0 0 0 16-3584 chrM 12474 0 0 0 0 0 0 0 16-3584 chrM 12475 0 0 0 0 0 0 0 16-3584 chrM 12476 0 0 0 0 0 0 0 16-3584 chrM 12477 0 0 0 0 0 0 0 16-3584 chrM 12478 0 0 0 0 0 0 0 16-3584 chrM 12479 0 0 0 0 0 0 0 16-3584 chrM 12480 0 0 0 0 0 0 0 16-3584 chrM 12481 0 0 0 0 0 0 0 16-3584 chrM 12482 0 0 0 0 0 0 0 16-3584 chrM 12483 0 0 0 0 0 0 0 16-3584 chrM 12484 0 0 0 0 0 0 0 16-3584 chrM 12485 0 0 0 0 0 0 0 16-3584 chrM 12486 0 0 0 0 0 0 0 16-3584 chrM 12487 0 0 0 0 0 0 0 16-3584 chrM 12488 0 0 0 0 0 0 0 16-3584 chrM 12489 0 0 0 0 0 0 0 16-3584 chrM 12490 0 0 0 0 0 0 0 16-3584 chrM 12491 0 0 0 0 0 0 0 16-3584 chrM 12492 0 0 0 0 0 0 0 16-3584 chrM 12493 0 0 0 0 0 0 0 16-3584 chrM 12494 0 0 0 0 0 0 0 16-3584 chrM 12495 0 0 0 0 0 0 0 16-3584 chrM 12496 0 0 0 0 0 0 0 16-3584 chrM 12497 0 0 0 0 0 0 0 16-3584 chrM 12498 0 0 0 0 0 0 0 16-3584 chrM 12499 0 0 0 0 0 0 0 16-3584 chrM 12500 0 0 0 0 0 0 0 16-3584 chrM 12501 0 0 0 0 0 0 0 16-3584 chrM 12502 0 0 0 0 0 0 0 16-3584 chrM 12503 0 0 0 0 0 0 0 16-3584 chrM 12504 0 0 0 0 0 0 0 16-3584 chrM 12505 0 0 0 0 0 0 0 16-3584 chrM 12506 0 0 0 0 0 0 0 16-3584 chrM 12507 0 0 0 0 0 0 0 16-3584 chrM 12508 0 0 0 0 0 0 0 16-3584 chrM 12509 0 0 0 0 0 0 0 16-3584 chrM 12510 0 0 0 0 0 0 0 16-3584 chrM 12511 0 0 0 0 0 0 0 16-3584 chrM 12512 0 0 0 0 0 0 0 16-3584 chrM 12513 0 0 0 0 0 0 0 16-3584 chrM 12514 0 0 0 0 0 0 0 16-3584 chrM 12515 0 0 0 0 0 0 0 16-3584 chrM 12516 0 0 0 0 0 0 0 16-3584 chrM 12517 0 0 0 0 0 0 0 16-3584 chrM 12518 0 0 0 0 0 0 0 16-3584 chrM 12519 0 0 0 0 0 0 0 16-3584 chrM 12520 0 0 0 0 0 0 0 16-3584 chrM 12521 0 0 0 0 0 0 0 16-3584 chrM 12522 0 0 0 0 0 0 0 16-3584 chrM 12523 0 0 0 0 0 0 0 16-3584 chrM 12524 0 0 0 0 0 0 0 16-3584 chrM 12525 0 0 0 0 0 0 0 16-3584 chrM 12526 0 0 0 0 0 0 0 16-3584 chrM 12527 0 0 0 0 0 0 0 16-3584 chrM 12528 0 0 0 0 0 0 0 16-3584 chrM 12529 0 0 0 0 0 0 0 16-3584 chrM 12530 0 0 0 0 0 0 0 16-3584 chrM 12531 0 0 0 0 0 0 0 16-3584 chrM 12532 0 0 0 0 0 0 0 16-3584 chrM 12533 0 0 0 0 0 0 0 16-3584 chrM 12534 0 0 0 0 0 0 0 16-3584 chrM 12535 0 0 0 0 0 0 0 16-3584 chrM 12536 0 0 0 0 0 0 0 16-3584 chrM 12537 0 0 0 0 0 0 0 16-3584 chrM 12538 0 0 0 0 0 0 0 16-3584 chrM 12539 0 0 0 0 0 0 0 16-3584 chrM 12540 0 0 0 0 0 0 0 16-3584 chrM 12541 0 0 0 0 0 0 0 16-3584 chrM 12542 0 0 0 0 0 0 0 16-3584 chrM 12543 0 0 0 0 0 0 0 16-3584 chrM 12544 0 0 0 0 0 0 0 16-3584 chrM 12545 0 0 0 0 0 0 0 16-3584 chrM 12546 0 0 0 0 0 0 0 16-3584 chrM 12547 0 0 0 0 0 0 0 16-3584 chrM 12548 0 0 0 0 0 0 0 16-3584 chrM 12549 0 0 0 0 0 0 0 16-3584 chrM 12550 0 0 0 0 0 0 0 16-3584 chrM 12551 0 0 0 0 0 0 0 16-3584 chrM 12552 0 0 0 0 0 0 0 16-3584 chrM 12553 0 0 0 0 0 0 0 16-3584 chrM 12554 0 0 0 0 0 0 0 16-3584 chrM 12555 0 0 0 0 0 0 0 16-3584 chrM 12556 0 0 0 0 0 0 0 16-3584 chrM 12557 0 0 0 0 0 0 0 16-3584 chrM 12558 0 0 0 0 0 0 0 16-3584 chrM 12559 0 0 0 0 0 0 0 16-3584 chrM 12560 0 0 0 0 0 0 0 16-3584 chrM 12561 0 0 0 0 0 0 0 16-3584 chrM 12562 0 0 0 0 0 0 0 16-3584 chrM 12563 0 0 0 0 0 0 0 16-3584 chrM 12564 0 0 0 0 0 0 0 16-3584 chrM 12565 0 0 0 0 0 0 0 16-3584 chrM 12566 0 0 0 0 0 0 0 16-3584 chrM 12567 0 0 0 0 0 0 0 16-3584 chrM 12568 0 0 0 0 0 0 0 16-3584 chrM 12569 0 0 0 0 0 0 0 16-3584 chrM 12570 0 0 0 0 0 0 0 16-3584 chrM 12571 0 0 0 0 0 0 0 16-3584 chrM 12572 0 0 0 0 0 0 0 16-3584 chrM 12573 0 0 0 0 0 0 0 16-3584 chrM 12574 0 0 0 0 0 0 0 16-3584 chrM 12575 0 0 0 0 0 0 0 16-3584 chrM 12576 0 0 0 0 0 0 0 16-3584 chrM 12577 0 0 0 0 0 0 0 16-3584 chrM 12578 0 0 0 0 0 0 0 16-3584 chrM 12579 0 0 0 0 0 0 0 16-3584 chrM 12580 0 0 0 0 0 0 0 16-3584 chrM 12581 0 0 0 0 0 0 0 16-3584 chrM 12582 0 0 0 0 0 0 0 16-3584 chrM 12583 0 0 0 0 0 0 0 16-3584 chrM 12584 0 0 0 0 0 0 0 16-3584 chrM 12585 0 0 0 0 0 0 0 16-3584 chrM 12586 0 0 0 0 0 0 0 16-3584 chrM 12587 0 0 0 0 0 0 0 16-3584 chrM 12588 0 0 0 0 0 0 0 16-3584 chrM 12589 0 0 0 0 0 0 0 16-3584 chrM 12590 0 0 0 0 0 0 0 16-3584 chrM 12591 0 0 0 0 0 0 0 16-3584 chrM 12592 0 0 0 0 0 0 0 16-3584 chrM 12593 0 0 0 0 0 0 0 16-3584 chrM 12594 0 0 0 0 0 0 0 16-3584 chrM 12595 0 0 0 0 0 0 0 16-3584 chrM 12596 0 0 0 0 0 0 0 16-3584 chrM 12597 0 0 0 0 0 0 0 16-3584 chrM 12598 0 0 0 0 0 0 0 16-3584 chrM 12599 0 0 0 0 0 0 0 16-3584 chrM 12600 0 0 0 0 0 0 0 16-3584 chrM 12601 0 0 0 0 0 0 0 16-3584 chrM 12602 0 0 0 0 0 0 0 16-3584 chrM 12603 0 0 0 0 0 0 0 16-3584 chrM 12604 0 0 0 0 0 0 0 16-3584 chrM 12605 0 0 0 0 0 0 0 16-3584 chrM 12606 0 0 0 0 0 0 0 16-3584 chrM 12607 0 0 0 0 0 0 0 16-3584 chrM 12608 0 0 0 0 0 0 0 16-3584 chrM 12609 0 0 0 0 0 0 0 16-3584 chrM 12610 0 0 0 0 0 0 0 16-3584 chrM 12611 0 0 0 0 0 0 0 16-3584 chrM 12612 0 0 0 0 0 0 0 16-3584 chrM 12613 0 0 0 0 0 0 0 16-3584 chrM 12614 0 0 0 0 0 0 0 16-3584 chrM 12615 0 0 0 0 0 0 0 16-3584 chrM 12616 0 0 0 0 0 0 0 16-3584 chrM 12617 0 0 0 0 0 0 0 16-3584 chrM 12618 0 0 0 0 0 0 0 16-3584 chrM 12619 0 0 0 0 0 0 0 16-3584 chrM 12620 0 0 0 0 0 0 0 16-3584 chrM 12621 0 0 0 0 0 0 0 16-3584 chrM 12622 0 0 0 0 0 0 0 16-3584 chrM 12623 0 0 0 0 0 0 0 16-3584 chrM 12624 0 0 0 0 0 0 0 16-3584 chrM 12625 0 0 0 0 0 0 0 16-3584 chrM 12626 0 0 0 0 0 0 0 16-3584 chrM 12627 0 0 0 0 0 0 0 16-3584 chrM 12628 0 0 0 0 0 0 0 16-3584 chrM 12629 0 0 0 0 0 0 0 16-3584 chrM 12630 0 0 0 0 0 0 0 16-3584 chrM 12631 0 0 0 0 0 0 0 16-3584 chrM 12632 0 0 0 0 0 0 0 16-3584 chrM 12633 0 0 0 0 0 0 0 16-3584 chrM 12634 0 0 0 0 0 0 0 16-3584 chrM 12635 0 0 0 0 0 0 0 16-3584 chrM 12636 0 0 0 0 0 0 0 16-3584 chrM 12637 0 0 0 0 0 0 0 16-3584 chrM 12638 0 0 0 0 0 0 0 16-3584 chrM 12639 0 0 0 0 0 0 0 16-3584 chrM 12640 0 0 0 0 0 0 0 16-3584 chrM 12641 0 0 0 0 0 0 0 16-3584 chrM 12642 0 0 0 0 0 0 0 16-3584 chrM 12643 0 0 0 0 0 0 0 16-3584 chrM 12644 0 0 0 0 0 0 0 16-3584 chrM 12645 0 0 0 0 0 0 0 16-3584 chrM 12646 0 0 0 0 0 0 0 16-3584 chrM 12647 0 0 0 0 0 0 0 16-3584 chrM 12648 0 0 0 0 0 0 0 16-3584 chrM 12649 0 0 0 0 0 0 0 16-3584 chrM 12650 0 0 0 0 0 0 0 16-3584 chrM 12651 0 0 0 0 0 0 0 16-3584 chrM 12652 0 0 0 0 0 0 0 16-3584 chrM 12653 0 0 0 0 0 0 0 16-3584 chrM 12654 0 0 0 0 0 0 0 16-3584 chrM 12655 0 0 0 0 0 0 0 16-3584 chrM 12656 0 0 0 0 0 0 0 16-3584 chrM 12657 0 0 0 0 0 0 0 16-3584 chrM 12658 0 0 0 0 0 0 0 16-3584 chrM 12659 0 0 0 0 0 0 0 16-3584 chrM 12660 0 0 0 0 0 0 0 16-3584 chrM 12661 0 0 0 0 0 0 0 16-3584 chrM 12662 0 0 0 0 0 0 0 16-3584 chrM 12663 0 0 0 0 0 0 0 16-3584 chrM 12664 0 0 0 0 0 0 0 16-3584 chrM 12665 0 0 0 0 0 0 0 16-3584 chrM 12666 0 0 0 0 0 0 0 16-3584 chrM 12667 0 0 0 0 0 0 0 16-3584 chrM 12668 0 0 0 0 0 0 0 16-3584 chrM 12669 0 0 0 0 0 0 0 16-3584 chrM 12670 0 0 0 0 0 0 0 16-3584 chrM 12671 0 0 0 0 0 0 0 16-3584 chrM 12672 0 0 0 0 0 0 0 16-3584 chrM 12673 0 0 0 0 0 0 0 16-3584 chrM 12674 0 0 0 0 0 0 0 16-3584 chrM 12675 0 0 0 0 0 0 0 16-3584 chrM 12676 0 0 0 0 0 0 0 16-3584 chrM 12677 0 0 0 0 0 0 0 16-3584 chrM 12678 0 0 0 0 0 0 0 16-3584 chrM 12679 0 0 0 0 0 0 0 16-3584 chrM 12680 0 0 0 0 0 0 0 16-3584 chrM 12681 0 0 0 0 0 0 0 16-3584 chrM 12682 0 0 0 0 0 0 0 16-3584 chrM 12683 0 0 0 0 0 0 0 16-3584 chrM 12684 0 0 0 0 0 0 0 16-3584 chrM 12685 0 0 0 0 0 0 0 16-3584 chrM 12686 0 0 0 0 0 0 0 16-3584 chrM 12687 0 0 0 0 0 0 0 16-3584 chrM 12688 0 0 0 0 0 0 0 16-3584 chrM 12689 0 0 0 0 0 0 0 16-3584 chrM 12690 0 0 0 0 0 0 0 16-3584 chrM 12691 0 0 0 0 0 0 0 16-3584 chrM 12692 0 0 0 0 0 0 0 16-3584 chrM 12693 0 0 0 0 0 0 0 16-3584 chrM 12694 0 0 0 0 0 0 0 16-3584 chrM 12695 0 0 0 0 0 0 0 16-3584 chrM 12696 0 0 0 0 0 0 0 16-3584 chrM 12697 0 0 0 0 0 0 0 16-3584 chrM 12698 0 0 0 0 0 0 0 16-3584 chrM 12699 0 0 0 0 0 0 0 16-3584 chrM 12700 0 0 0 0 0 0 0 16-3584 chrM 12701 0 0 0 0 0 0 0 16-3584 chrM 12702 0 0 0 0 0 0 0 16-3584 chrM 12703 0 0 0 0 0 0 0 16-3584 chrM 12704 0 0 0 0 0 0 0 16-3584 chrM 12705 0 0 0 0 0 0 0 16-3584 chrM 12706 0 0 0 0 0 0 0 16-3584 chrM 12707 0 0 0 0 0 0 0 16-3584 chrM 12708 0 0 0 0 0 0 0 16-3584 chrM 12709 0 0 0 0 0 0 0 16-3584 chrM 12710 0 0 0 0 0 0 0 16-3584 chrM 12711 0 0 0 0 0 0 0 16-3584 chrM 12712 0 0 0 0 0 0 0 16-3584 chrM 12713 0 0 0 0 0 0 0 16-3584 chrM 12714 0 0 0 0 0 0 0 16-3584 chrM 12715 0 0 0 0 0 0 0 16-3584 chrM 12716 0 0 0 0 0 0 0 16-3584 chrM 12717 0 0 0 0 0 0 0 16-3584 chrM 12718 0 0 0 0 0 0 0 16-3584 chrM 12719 0 0 0 0 0 0 0 16-3584 chrM 12720 0 0 0 0 0 0 0 16-3584 chrM 12721 0 0 0 0 0 0 0 16-3584 chrM 12722 0 0 0 0 0 0 0 16-3584 chrM 12723 0 0 0 0 0 0 0 16-3584 chrM 12724 0 0 0 0 0 0 0 16-3584 chrM 12725 0 0 0 0 0 0 0 16-3584 chrM 12726 0 0 0 0 0 0 0 16-3584 chrM 12727 0 0 0 0 0 0 0 16-3584 chrM 12728 0 0 0 0 0 0 0 16-3584 chrM 12729 0 0 0 0 0 0 0 16-3584 chrM 12730 0 0 0 0 0 0 0 16-3584 chrM 12731 0 0 0 0 0 0 0 16-3584 chrM 12732 0 0 0 0 0 0 0 16-3584 chrM 12733 0 0 0 0 0 0 0 16-3584 chrM 12734 0 0 0 0 0 0 0 16-3584 chrM 12735 0 0 0 0 0 0 0 16-3584 chrM 12736 0 0 0 0 0 0 0 16-3584 chrM 12737 0 0 0 0 0 0 0 16-3584 chrM 12738 0 0 0 0 0 0 0 16-3584 chrM 12739 0 0 0 0 0 0 0 16-3584 chrM 12740 0 0 0 0 0 0 0 16-3584 chrM 12741 0 0 0 0 0 0 0 16-3584 chrM 12742 0 0 0 0 0 0 0 16-3584 chrM 12743 0 0 0 0 0 0 0 16-3584 chrM 12744 0 0 0 0 0 0 0 16-3584 chrM 12745 0 0 0 0 0 0 0 16-3584 chrM 12746 0 0 0 0 0 0 0 16-3584 chrM 12747 0 0 0 0 0 0 0 16-3584 chrM 12748 0 0 0 0 0 0 0 16-3584 chrM 12749 0 0 0 0 0 0 0 16-3584 chrM 12750 0 0 0 0 0 0 0 16-3584 chrM 12751 0 0 0 0 0 0 0 16-3584 chrM 12752 0 0 0 0 0 0 0 16-3584 chrM 12753 0 0 0 0 0 0 0 16-3584 chrM 12754 0 0 0 0 0 0 0 16-3584 chrM 12755 0 0 0 0 0 0 0 16-3584 chrM 12756 0 0 0 0 0 0 0 16-3584 chrM 12757 0 0 0 0 0 0 0 16-3584 chrM 12758 0 0 0 0 0 0 0 16-3584 chrM 12759 0 0 0 0 0 0 0 16-3584 chrM 12760 0 0 0 0 0 0 0 16-3584 chrM 12761 0 0 0 0 0 0 0 16-3584 chrM 12762 0 0 0 0 0 0 0 16-3584 chrM 12763 0 0 0 0 0 0 0 16-3584 chrM 12764 0 0 0 0 0 0 0 16-3584 chrM 12765 0 0 0 0 0 0 0 16-3584 chrM 12766 0 0 0 0 0 0 0 16-3584 chrM 12767 0 0 0 0 0 0 0 16-3584 chrM 12768 0 0 0 0 0 0 0 16-3584 chrM 12769 0 0 0 0 0 0 0 16-3584 chrM 12770 0 0 0 0 0 0 0 16-3584 chrM 12771 0 0 0 0 0 0 0 16-3584 chrM 12772 0 0 0 0 0 0 0 16-3584 chrM 12773 0 0 0 0 0 0 0 16-3584 chrM 12774 0 0 0 0 0 0 0 16-3584 chrM 12775 0 0 0 0 0 0 0 16-3584 chrM 12776 0 0 0 0 0 0 0 16-3584 chrM 12777 0 0 0 0 0 0 0 16-3584 chrM 12778 0 0 0 0 0 0 0 16-3584 chrM 12779 0 0 0 0 0 0 0 16-3584 chrM 12780 0 0 0 0 0 0 0 16-3584 chrM 12781 0 0 0 0 0 0 0 16-3584 chrM 12782 0 0 0 0 0 0 0 16-3584 chrM 12783 0 0 0 0 0 0 0 16-3584 chrM 12784 0 0 0 0 0 0 0 16-3584 chrM 12785 0 0 0 0 0 0 0 16-3584 chrM 12786 0 0 0 0 0 0 0 16-3584 chrM 12787 0 0 0 0 0 0 0 16-3584 chrM 12788 0 0 0 0 0 0 0 16-3584 chrM 12789 0 0 0 0 0 0 0 16-3584 chrM 12790 0 0 0 0 0 0 0 16-3584 chrM 12791 0 0 0 0 0 0 0 16-3584 chrM 12792 0 0 0 0 0 0 0 16-3584 chrM 12793 0 0 0 0 0 0 0 16-3584 chrM 12794 0 0 0 0 0 0 0 16-3584 chrM 12795 0 0 0 0 0 0 0 16-3584 chrM 12796 0 0 0 0 0 0 0 16-3584 chrM 12797 0 0 0 0 0 0 0 16-3584 chrM 12798 0 0 0 0 0 0 0 16-3584 chrM 12799 0 0 0 0 0 0 0 16-3584 chrM 12800 0 0 0 0 0 0 0 16-3584 chrM 12801 0 0 0 0 0 0 0 16-3584 chrM 12802 0 0 0 0 0 0 0 16-3584 chrM 12803 0 0 0 0 0 0 0 16-3584 chrM 12804 0 0 0 0 0 0 0 16-3584 chrM 12805 0 0 0 0 0 0 0 16-3584 chrM 12806 0 0 0 0 0 0 0 16-3584 chrM 12807 0 0 0 0 0 0 0 16-3584 chrM 12808 0 0 0 0 0 0 0 16-3584 chrM 12809 0 0 0 0 0 0 0 16-3584 chrM 12810 0 0 0 0 0 0 0 16-3584 chrM 12811 0 0 0 0 0 0 0 16-3584 chrM 12812 0 0 0 0 0 0 0 16-3584 chrM 12813 0 0 0 0 0 0 0 16-3584 chrM 12814 0 0 0 0 0 0 0 16-3584 chrM 12815 0 0 0 0 0 0 0 16-3584 chrM 12816 0 0 0 0 0 0 0 16-3584 chrM 12817 0 0 0 0 0 0 0 16-3584 chrM 12818 0 0 0 0 0 0 0 16-3584 chrM 12819 0 0 0 0 0 0 0 16-3584 chrM 12820 0 0 0 0 0 0 0 16-3584 chrM 12821 0 0 0 0 0 0 0 16-3584 chrM 12822 0 0 0 0 0 0 0 16-3584 chrM 12823 0 0 0 0 0 0 0 16-3584 chrM 12824 0 0 0 0 0 0 0 16-3584 chrM 12825 0 0 0 0 0 0 0 16-3584 chrM 12826 0 0 0 0 0 0 0 16-3584 chrM 12827 0 0 0 0 0 0 0 16-3584 chrM 12828 0 0 0 0 0 0 0 16-3584 chrM 12829 0 0 0 0 0 0 0 16-3584 chrM 12830 0 0 0 0 0 0 0 16-3584 chrM 12831 0 0 0 0 0 0 0 16-3584 chrM 12832 0 0 0 0 0 0 0 16-3584 chrM 12833 0 0 0 0 0 0 0 16-3584 chrM 12834 0 0 0 0 0 0 0 16-3584 chrM 12835 0 0 0 0 0 0 0 16-3584 chrM 12836 0 0 0 0 0 0 0 16-3584 chrM 12837 0 0 0 0 0 0 0 16-3584 chrM 12838 0 0 0 0 0 0 0 16-3584 chrM 12839 0 0 0 0 0 0 0 16-3584 chrM 12840 0 0 0 0 0 0 0 16-3584 chrM 12841 0 0 0 0 0 0 0 16-3584 chrM 12842 0 0 0 0 0 0 0 16-3584 chrM 12843 0 0 0 0 0 0 0 16-3584 chrM 12844 0 0 0 0 0 0 0 16-3584 chrM 12845 0 0 0 0 0 0 0 16-3584 chrM 12846 0 0 0 0 0 0 0 16-3584 chrM 12847 0 0 0 0 0 0 0 16-3584 chrM 12848 0 0 0 0 0 0 0 16-3584 chrM 12849 0 0 0 0 0 0 0 16-3584 chrM 12850 0 0 0 0 0 0 0 16-3584 chrM 12851 0 0 0 0 0 0 0 16-3584 chrM 12852 0 0 0 0 0 0 0 16-3584 chrM 12853 0 0 0 0 0 0 0 16-3584 chrM 12854 0 0 0 0 0 0 0 16-3584 chrM 12855 0 0 0 0 0 0 0 16-3584 chrM 12856 0 0 0 0 0 0 0 16-3584 chrM 12857 0 0 0 0 0 0 0 16-3584 chrM 12858 0 0 0 0 0 0 0 16-3584 chrM 12859 0 0 0 0 0 0 0 16-3584 chrM 12860 0 0 0 0 0 0 0 16-3584 chrM 12861 0 0 0 0 0 0 0 16-3584 chrM 12862 0 0 0 0 0 0 0 16-3584 chrM 12863 0 0 0 0 0 0 0 16-3584 chrM 12864 0 0 0 0 0 0 0 16-3584 chrM 12865 0 0 0 0 0 0 0 16-3584 chrM 12866 0 0 0 0 0 0 0 16-3584 chrM 12867 0 0 0 0 0 0 0 16-3584 chrM 12868 0 0 0 0 0 0 0 16-3584 chrM 12869 0 0 0 0 0 0 0 16-3584 chrM 12870 0 0 0 0 0 0 0 16-3584 chrM 12871 0 0 0 0 0 0 0 16-3584 chrM 12872 0 0 0 0 0 0 0 16-3584 chrM 12873 0 0 0 0 0 0 0 16-3584 chrM 12874 0 0 0 0 0 0 0 16-3584 chrM 12875 0 0 0 0 0 0 0 16-3584 chrM 12876 0 0 0 0 0 0 0 16-3584 chrM 12877 0 0 0 0 0 0 0 16-3584 chrM 12878 0 0 0 0 0 0 0 16-3584 chrM 12879 0 0 0 0 0 0 0 16-3584 chrM 12880 0 0 0 0 0 0 0 16-3584 chrM 12881 0 0 0 0 0 0 0 16-3584 chrM 12882 0 0 0 0 0 0 0 16-3584 chrM 12883 0 0 0 0 0 0 0 16-3584 chrM 12884 0 0 0 0 0 0 0 16-3584 chrM 12885 0 0 0 0 0 0 0 16-3584 chrM 12886 0 0 0 0 0 0 0 16-3584 chrM 12887 0 0 0 0 0 0 0 16-3584 chrM 12888 0 0 0 0 0 0 0 16-3584 chrM 12889 0 0 0 0 0 0 0 16-3584 chrM 12890 0 0 0 0 0 0 0 16-3584 chrM 12891 0 0 0 0 0 0 0 16-3584 chrM 12892 0 0 0 0 0 0 0 16-3584 chrM 12893 0 0 0 0 0 0 0 16-3584 chrM 12894 0 0 0 0 0 0 0 16-3584 chrM 12895 0 0 0 0 0 0 0 16-3584 chrM 12896 0 0 0 0 0 0 0 16-3584 chrM 12897 0 0 0 0 0 0 0 16-3584 chrM 12898 0 0 0 0 0 0 0 16-3584 chrM 12899 0 0 0 0 0 0 0 16-3584 chrM 12900 0 0 0 0 0 0 0 16-3584 chrM 12901 0 0 0 0 0 0 0 16-3584 chrM 12902 0 0 0 0 0 0 0 16-3584 chrM 12903 0 0 0 0 0 0 0 16-3584 chrM 12904 0 0 0 0 0 0 0 16-3584 chrM 12905 0 0 0 0 0 0 0 16-3584 chrM 12906 0 0 0 0 0 0 0 16-3584 chrM 12907 0 0 0 0 0 0 0 16-3584 chrM 12908 0 0 0 0 0 0 0 16-3584 chrM 12909 0 0 0 0 0 0 0 16-3584 chrM 12910 0 0 0 0 0 0 0 16-3584 chrM 12911 0 0 0 0 0 0 0 16-3584 chrM 12912 0 0 0 0 0 0 0 16-3584 chrM 12913 0 0 0 0 0 0 0 16-3584 chrM 12914 0 0 0 0 0 0 0 16-3584 chrM 12915 0 0 0 0 0 0 0 16-3584 chrM 12916 0 0 0 0 0 0 0 16-3584 chrM 12917 0 0 0 0 0 0 0 16-3584 chrM 12918 0 0 0 0 0 0 0 16-3584 chrM 12919 0 0 0 0 0 0 0 16-3584 chrM 12920 0 0 0 0 0 0 0 16-3584 chrM 12921 0 0 0 0 0 0 0 16-3584 chrM 12922 0 0 0 0 0 0 0 16-3584 chrM 12923 0 0 0 0 0 0 0 16-3584 chrM 12924 0 0 0 0 0 0 0 16-3584 chrM 12925 0 0 0 0 0 0 0 16-3584 chrM 12926 0 0 0 0 0 0 0 16-3584 chrM 12927 0 0 0 0 0 0 0 16-3584 chrM 12928 0 0 0 0 0 0 0 16-3584 chrM 12929 0 0 0 0 0 0 0 16-3584 chrM 12930 0 0 0 0 0 0 0 16-3584 chrM 12931 0 0 0 0 0 0 0 16-3584 chrM 12932 0 0 0 0 0 0 0 16-3584 chrM 12933 0 0 0 0 0 0 0 16-3584 chrM 12934 0 0 0 0 0 0 0 16-3584 chrM 12935 0 0 0 0 0 0 0 16-3584 chrM 12936 0 0 0 0 0 0 0 16-3584 chrM 12937 0 0 0 0 0 0 0 16-3584 chrM 12938 0 0 0 0 0 0 0 16-3584 chrM 12939 0 0 0 0 0 0 0 16-3584 chrM 12940 0 0 0 0 0 0 0 16-3584 chrM 12941 0 0 0 0 0 0 0 16-3584 chrM 12942 0 0 0 0 0 0 0 16-3584 chrM 12943 0 0 0 0 0 0 0 16-3584 chrM 12944 0 0 0 0 0 0 0 16-3584 chrM 12945 0 0 0 0 0 0 0 16-3584 chrM 12946 0 0 0 0 0 0 0 16-3584 chrM 12947 0 0 0 0 0 0 0 16-3584 chrM 12948 0 0 0 0 0 0 0 16-3584 chrM 12949 0 0 0 0 0 0 0 16-3584 chrM 12950 0 0 0 0 0 0 0 16-3584 chrM 12951 0 0 0 0 0 0 0 16-3584 chrM 12952 0 0 0 0 0 0 0 16-3584 chrM 12953 0 0 0 0 0 0 0 16-3584 chrM 12954 0 0 0 0 0 0 0 16-3584 chrM 12955 0 0 0 0 0 0 0 16-3584 chrM 12956 0 0 0 0 0 0 0 16-3584 chrM 12957 0 0 0 0 0 0 0 16-3584 chrM 12958 0 0 0 0 0 0 0 16-3584 chrM 12959 0 0 0 0 0 0 0 16-3584 chrM 12960 0 0 0 0 0 0 0 16-3584 chrM 12961 0 0 0 0 0 0 0 16-3584 chrM 12962 0 0 0 0 0 0 0 16-3584 chrM 12963 0 0 0 0 0 0 0 16-3584 chrM 12964 0 0 0 0 0 0 0 16-3584 chrM 12965 0 0 0 0 0 0 0 16-3584 chrM 12966 0 0 0 0 0 0 0 16-3584 chrM 12967 0 0 0 0 0 0 0 16-3584 chrM 12968 0 0 0 0 0 0 0 16-3584 chrM 12969 0 0 0 0 0 0 0 16-3584 chrM 12970 0 0 0 0 0 0 0 16-3584 chrM 12971 0 0 0 0 0 0 0 16-3584 chrM 12972 0 0 0 0 0 0 0 16-3584 chrM 12973 0 0 0 0 0 0 0 16-3584 chrM 12974 0 0 0 0 0 0 0 16-3584 chrM 12975 0 0 0 0 0 0 0 16-3584 chrM 12976 0 0 0 0 0 0 0 16-3584 chrM 12977 0 0 0 0 0 0 0 16-3584 chrM 12978 0 0 0 0 0 0 0 16-3584 chrM 12979 0 0 0 0 0 0 0 16-3584 chrM 12980 0 0 0 0 0 0 0 16-3584 chrM 12981 0 0 0 0 0 0 0 16-3584 chrM 12982 0 0 0 0 0 0 0 16-3584 chrM 12983 0 0 0 0 0 0 0 16-3584 chrM 12984 0 0 0 0 0 0 0 16-3584 chrM 12985 0 0 0 0 0 0 0 16-3584 chrM 12986 0 0 0 0 0 0 0 16-3584 chrM 12987 0 0 0 0 0 0 0 16-3584 chrM 12988 0 0 0 0 0 0 0 16-3584 chrM 12989 0 0 0 0 0 0 0 16-3584 chrM 12990 0 0 0 0 0 0 0 16-3584 chrM 12991 0 0 0 0 0 0 0 16-3584 chrM 12992 0 0 0 0 0 0 0 16-3584 chrM 12993 0 0 0 0 0 0 0 16-3584 chrM 12994 0 0 0 0 0 0 0 16-3584 chrM 12995 0 0 0 0 0 0 0 16-3584 chrM 12996 0 0 0 0 0 0 0 16-3584 chrM 12997 0 0 0 0 0 0 0 16-3584 chrM 12998 0 0 0 0 0 0 0 16-3584 chrM 12999 0 0 0 0 0 0 0 16-3584 chrM 13000 0 0 0 0 0 0 0 16-3584 chrM 13001 0 0 0 0 0 0 0 16-3584 chrM 13002 0 0 0 0 0 0 0 16-3584 chrM 13003 0 0 0 0 0 0 0 16-3584 chrM 13004 0 0 0 0 0 0 0 16-3584 chrM 13005 0 0 0 0 0 0 0 16-3584 chrM 13006 0 0 0 0 0 0 0 16-3584 chrM 13007 0 0 0 0 0 0 0 16-3584 chrM 13008 0 0 0 0 0 0 0 16-3584 chrM 13009 0 0 0 0 0 0 0 16-3584 chrM 13010 0 0 0 0 0 0 0 16-3584 chrM 13011 0 0 0 0 0 0 0 16-3584 chrM 13012 0 0 0 0 0 0 0 16-3584 chrM 13013 0 0 0 0 0 0 0 16-3584 chrM 13014 0 0 0 0 0 0 0 16-3584 chrM 13015 0 0 0 0 0 0 0 16-3584 chrM 13016 0 0 0 0 0 0 0 16-3584 chrM 13017 0 0 0 0 0 0 0 16-3584 chrM 13018 0 0 0 0 0 0 0 16-3584 chrM 13019 0 0 0 0 0 0 0 16-3584 chrM 13020 0 0 0 0 0 0 0 16-3584 chrM 13021 0 0 0 0 0 0 0 16-3584 chrM 13022 0 0 0 0 0 0 0 16-3584 chrM 13023 0 0 0 0 0 0 0 16-3584 chrM 13024 0 0 0 0 0 0 0 16-3584 chrM 13025 0 0 0 0 0 0 0 16-3584 chrM 13026 0 0 0 0 0 0 0 16-3584 chrM 13027 0 0 0 0 0 0 0 16-3584 chrM 13028 0 0 0 0 0 0 0 16-3584 chrM 13029 0 0 0 0 0 0 0 16-3584 chrM 13030 0 0 0 0 0 0 0 16-3584 chrM 13031 0 0 0 0 0 0 0 16-3584 chrM 13032 0 0 0 0 0 0 0 16-3584 chrM 13033 0 0 0 0 0 0 0 16-3584 chrM 13034 0 0 0 0 0 0 0 16-3584 chrM 13035 0 0 0 0 0 0 0 16-3584 chrM 13036 0 0 0 0 0 0 0 16-3584 chrM 13037 0 0 0 0 0 0 0 16-3584 chrM 13038 0 0 0 0 0 0 0 16-3584 chrM 13039 0 0 0 0 0 0 0 16-3584 chrM 13040 0 0 0 0 0 0 0 16-3584 chrM 13041 0 0 0 0 0 0 0 16-3584 chrM 13042 0 0 0 0 0 0 0 16-3584 chrM 13043 0 0 0 0 0 0 0 16-3584 chrM 13044 0 0 0 0 0 0 0 16-3584 chrM 13045 0 0 0 0 0 0 0 16-3584 chrM 13046 0 0 0 0 0 0 0 16-3584 chrM 13047 0 0 0 0 0 0 0 16-3584 chrM 13048 0 0 0 0 0 0 0 16-3584 chrM 13049 0 0 0 0 0 0 0 16-3584 chrM 13050 0 0 0 0 0 0 0 16-3584 chrM 13051 0 0 0 0 0 0 0 16-3584 chrM 13052 0 0 0 0 0 0 0 16-3584 chrM 13053 0 0 0 0 0 0 0 16-3584 chrM 13054 0 0 0 0 0 0 0 16-3584 chrM 13055 0 0 0 0 0 0 0 16-3584 chrM 13056 0 0 0 0 0 0 0 16-3584 chrM 13057 0 0 0 0 0 0 0 16-3584 chrM 13058 0 0 0 0 0 0 0 16-3584 chrM 13059 0 0 0 0 0 0 0 16-3584 chrM 13060 0 0 0 0 0 0 0 16-3584 chrM 13061 0 0 0 0 0 0 0 16-3584 chrM 13062 0 0 0 0 0 0 0 16-3584 chrM 13063 0 0 0 0 0 0 0 16-3584 chrM 13064 0 0 0 0 0 0 0 16-3584 chrM 13065 0 0 0 0 0 0 0 16-3584 chrM 13066 0 0 0 0 0 0 0 16-3584 chrM 13067 0 0 0 0 0 0 0 16-3584 chrM 13068 0 0 0 0 0 0 0 16-3584 chrM 13069 0 0 0 0 0 0 0 16-3584 chrM 13070 0 0 0 0 0 0 0 16-3584 chrM 13071 0 0 0 0 0 0 0 16-3584 chrM 13072 0 0 0 0 0 0 0 16-3584 chrM 13073 0 0 0 0 0 0 0 16-3584 chrM 13074 0 0 0 0 0 0 0 16-3584 chrM 13075 0 0 0 0 0 0 0 16-3584 chrM 13076 0 0 0 0 0 0 0 16-3584 chrM 13077 0 0 0 0 0 0 0 16-3584 chrM 13078 0 0 0 0 0 0 0 16-3584 chrM 13079 0 0 0 0 0 0 0 16-3584 chrM 13080 0 0 0 0 0 0 0 16-3584 chrM 13081 0 0 0 0 0 0 0 16-3584 chrM 13082 0 0 0 0 0 0 0 16-3584 chrM 13083 0 0 0 0 0 0 0 16-3584 chrM 13084 0 0 0 0 0 0 0 16-3584 chrM 13085 0 0 0 0 0 0 0 16-3584 chrM 13086 0 0 0 0 0 0 0 16-3584 chrM 13087 0 0 0 0 0 0 0 16-3584 chrM 13088 0 0 0 0 0 0 0 16-3584 chrM 13089 0 0 0 0 0 0 0 16-3584 chrM 13090 0 0 0 0 0 0 0 16-3584 chrM 13091 0 0 0 0 0 0 0 16-3584 chrM 13092 0 0 0 0 0 0 0 16-3584 chrM 13093 0 0 0 0 0 0 0 16-3584 chrM 13094 0 0 0 0 0 0 0 16-3584 chrM 13095 0 0 0 0 0 0 0 16-3584 chrM 13096 0 0 0 0 0 0 0 16-3584 chrM 13097 0 0 0 0 0 0 0 16-3584 chrM 13098 0 0 0 0 0 0 0 16-3584 chrM 13099 0 0 0 0 0 0 0 16-3584 chrM 13100 0 0 0 0 0 0 0 16-3584 chrM 13101 0 0 0 0 0 0 0 16-3584 chrM 13102 0 0 0 0 0 0 0 16-3584 chrM 13103 0 0 0 0 0 0 0 16-3584 chrM 13104 0 0 0 0 0 0 0 16-3584 chrM 13105 0 0 0 0 0 0 0 16-3584 chrM 13106 0 0 0 0 0 0 0 16-3584 chrM 13107 0 0 0 0 0 0 0 16-3584 chrM 13108 0 0 0 0 0 0 0 16-3584 chrM 13109 0 0 0 0 0 0 0 16-3584 chrM 13110 0 0 0 0 0 0 0 16-3584 chrM 13111 0 0 0 0 0 0 0 16-3584 chrM 13112 0 0 0 0 0 0 0 16-3584 chrM 13113 0 0 0 0 0 0 0 16-3584 chrM 13114 0 0 0 0 0 0 0 16-3584 chrM 13115 0 0 0 0 0 0 0 16-3584 chrM 13116 0 0 0 0 0 0 0 16-3584 chrM 13117 0 0 0 0 0 0 0 16-3584 chrM 13118 0 0 0 0 0 0 0 16-3584 chrM 13119 0 0 0 0 0 0 0 16-3584 chrM 13120 0 0 0 0 0 0 0 16-3584 chrM 13121 0 0 0 0 0 0 0 16-3584 chrM 13122 0 0 0 0 0 0 0 16-3584 chrM 13123 0 0 0 0 0 0 0 16-3584 chrM 13124 0 0 0 0 0 0 0 16-3584 chrM 13125 0 0 0 0 0 0 0 16-3584 chrM 13126 0 0 0 0 0 0 0 16-3584 chrM 13127 0 0 0 0 0 0 0 16-3584 chrM 13128 0 0 0 0 0 0 0 16-3584 chrM 13129 0 0 0 0 0 0 0 16-3584 chrM 13130 0 0 0 0 0 0 0 16-3584 chrM 13131 0 0 0 0 0 0 0 16-3584 chrM 13132 0 0 0 0 0 0 0 16-3584 chrM 13133 0 0 0 0 0 0 0 16-3584 chrM 13134 0 0 0 0 0 0 0 16-3584 chrM 13135 0 0 0 0 0 0 0 16-3584 chrM 13136 0 0 0 0 0 0 0 16-3584 chrM 13137 0 0 0 0 0 0 0 16-3584 chrM 13138 0 0 0 0 0 0 0 16-3584 chrM 13139 0 0 0 0 0 0 0 16-3584 chrM 13140 0 0 0 0 0 0 0 16-3584 chrM 13141 0 0 0 0 0 0 0 16-3584 chrM 13142 0 0 0 0 0 0 0 16-3584 chrM 13143 0 0 0 0 0 0 0 16-3584 chrM 13144 0 0 0 0 0 0 0 16-3584 chrM 13145 0 0 0 0 0 0 0 16-3584 chrM 13146 0 0 0 0 0 0 0 16-3584 chrM 13147 0 0 0 0 0 0 0 16-3584 chrM 13148 0 0 0 0 0 0 0 16-3584 chrM 13149 0 0 0 0 0 0 0 16-3584 chrM 13150 0 0 0 0 0 0 0 16-3584 chrM 13151 0 0 0 0 0 0 0 16-3584 chrM 13152 0 0 0 0 0 0 0 16-3584 chrM 13153 0 0 0 0 0 0 0 16-3584 chrM 13154 0 0 0 0 0 0 0 16-3584 chrM 13155 0 0 0 0 0 0 0 16-3584 chrM 13156 0 0 0 0 0 0 0 16-3584 chrM 13157 0 0 0 0 0 0 0 16-3584 chrM 13158 0 0 0 0 0 0 0 16-3584 chrM 13159 0 0 0 0 0 0 0 16-3584 chrM 13160 0 0 0 0 0 0 0 16-3584 chrM 13161 0 0 0 0 0 0 0 16-3584 chrM 13162 0 0 0 0 0 0 0 16-3584 chrM 13163 0 0 0 0 0 0 0 16-3584 chrM 13164 0 0 0 0 0 0 0 16-3584 chrM 13165 0 0 0 0 0 0 0 16-3584 chrM 13166 0 0 0 0 0 0 0 16-3584 chrM 13167 0 0 0 0 0 0 0 16-3584 chrM 13168 0 0 0 0 0 0 0 16-3584 chrM 13169 0 0 0 0 0 0 0 16-3584 chrM 13170 0 0 0 0 0 0 0 16-3584 chrM 13171 0 0 0 0 0 0 0 16-3584 chrM 13172 0 0 0 0 0 0 0 16-3584 chrM 13173 0 0 0 0 0 0 0 16-3584 chrM 13174 0 0 0 0 0 0 0 16-3584 chrM 13175 0 0 0 0 0 0 0 16-3584 chrM 13176 0 0 0 0 0 0 0 16-3584 chrM 13177 0 0 0 0 0 0 0 16-3584 chrM 13178 0 0 0 0 0 0 0 16-3584 chrM 13179 0 0 0 0 0 0 0 16-3584 chrM 13180 0 0 0 0 0 0 0 16-3584 chrM 13181 0 0 0 0 0 0 0 16-3584 chrM 13182 0 0 0 0 0 0 0 16-3584 chrM 13183 0 0 0 0 0 0 0 16-3584 chrM 13184 0 0 0 0 0 0 0 16-3584 chrM 13185 0 0 0 0 0 0 0 16-3584 chrM 13186 0 0 0 0 0 0 0 16-3584 chrM 13187 0 0 0 0 0 0 0 16-3584 chrM 13188 0 0 0 0 0 0 0 16-3584 chrM 13189 0 0 0 0 0 0 0 16-3584 chrM 13190 0 0 0 0 0 0 0 16-3584 chrM 13191 0 0 0 0 0 0 0 16-3584 chrM 13192 0 0 0 0 0 0 0 16-3584 chrM 13193 0 0 0 0 0 0 0 16-3584 chrM 13194 0 0 0 0 0 0 0 16-3584 chrM 13195 0 0 0 0 0 0 0 16-3584 chrM 13196 0 0 0 0 0 0 0 16-3584 chrM 13197 0 0 0 0 0 0 0 16-3584 chrM 13198 0 0 0 0 0 0 0 16-3584 chrM 13199 0 0 0 0 0 0 0 16-3584 chrM 13200 0 0 0 0 0 0 0 16-3584 chrM 13201 0 0 0 0 0 0 0 16-3584 chrM 13202 0 0 0 0 0 0 0 16-3584 chrM 13203 0 0 0 0 0 0 0 16-3584 chrM 13204 0 0 0 0 0 0 0 16-3584 chrM 13205 0 0 0 0 0 0 0 16-3584 chrM 13206 0 0 0 0 0 0 0 16-3584 chrM 13207 0 0 0 0 0 0 0 16-3584 chrM 13208 0 0 0 0 0 0 0 16-3584 chrM 13209 0 0 0 0 0 0 0 16-3584 chrM 13210 0 0 0 0 0 0 0 16-3584 chrM 13211 0 0 0 0 0 0 0 16-3584 chrM 13212 0 0 0 0 0 0 0 16-3584 chrM 13213 0 0 0 0 0 0 0 16-3584 chrM 13214 0 0 0 0 0 0 0 16-3584 chrM 13215 0 0 0 0 0 0 0 16-3584 chrM 13216 0 0 0 0 0 0 0 16-3584 chrM 13217 0 0 0 0 0 0 0 16-3584 chrM 13218 0 0 0 0 0 0 0 16-3584 chrM 13219 0 0 0 0 0 0 0 16-3584 chrM 13220 0 0 0 0 0 0 0 16-3584 chrM 13221 0 0 0 0 0 0 0 16-3584 chrM 13222 0 0 0 0 0 0 0 16-3584 chrM 13223 0 0 0 0 0 0 0 16-3584 chrM 13224 0 0 0 0 0 0 0 16-3584 chrM 13225 0 0 0 0 0 0 0 16-3584 chrM 13226 0 0 0 0 0 0 0 16-3584 chrM 13227 0 0 0 0 0 0 0 16-3584 chrM 13228 0 0 0 0 0 0 0 16-3584 chrM 13229 0 0 0 0 0 0 0 16-3584 chrM 13230 0 0 0 0 0 0 0 16-3584 chrM 13231 0 0 0 0 0 0 0 16-3584 chrM 13232 0 0 0 0 0 0 0 16-3584 chrM 13233 0 0 0 0 0 0 0 16-3584 chrM 13234 0 0 0 0 0 0 0 16-3584 chrM 13235 0 0 0 0 0 0 0 16-3584 chrM 13236 0 0 0 0 0 0 0 16-3584 chrM 13237 0 0 0 0 0 0 0 16-3584 chrM 13238 0 0 0 0 0 0 0 16-3584 chrM 13239 0 0 0 0 0 0 0 16-3584 chrM 13240 0 0 0 0 0 0 0 16-3584 chrM 13241 0 0 0 0 0 0 0 16-3584 chrM 13242 0 0 0 0 0 0 0 16-3584 chrM 13243 0 0 0 0 0 0 0 16-3584 chrM 13244 0 0 0 0 0 0 0 16-3584 chrM 13245 0 0 0 0 0 0 0 16-3584 chrM 13246 0 0 0 0 0 0 0 16-3584 chrM 13247 0 0 0 0 0 0 0 16-3584 chrM 13248 0 0 0 0 0 0 0 16-3584 chrM 13249 0 0 0 0 0 0 0 16-3584 chrM 13250 0 0 0 0 0 0 0 16-3584 chrM 13251 0 0 0 0 0 0 0 16-3584 chrM 13252 0 0 0 0 0 0 0 16-3584 chrM 13253 0 0 0 0 0 0 0 16-3584 chrM 13254 0 0 0 0 0 0 0 16-3584 chrM 13255 0 0 0 0 0 0 0 16-3584 chrM 13256 0 0 0 0 0 0 0 16-3584 chrM 13257 0 0 0 0 0 0 0 16-3584 chrM 13258 0 0 0 0 0 0 0 16-3584 chrM 13259 0 0 0 0 0 0 0 16-3584 chrM 13260 0 0 0 0 0 0 0 16-3584 chrM 13261 0 0 0 0 0 0 0 16-3584 chrM 13262 0 0 0 0 0 0 0 16-3584 chrM 13263 0 0 0 0 0 0 0 16-3584 chrM 13264 0 0 0 0 0 0 0 16-3584 chrM 13265 0 0 0 0 0 0 0 16-3584 chrM 13266 0 0 0 0 0 0 0 16-3584 chrM 13267 0 0 0 0 0 0 0 16-3584 chrM 13268 0 0 0 0 0 0 0 16-3584 chrM 13269 0 0 0 0 0 0 0 16-3584 chrM 13270 0 0 0 0 0 0 0 16-3584 chrM 13271 0 0 0 0 0 0 0 16-3584 chrM 13272 0 0 0 0 0 0 0 16-3584 chrM 13273 0 0 0 0 0 0 0 16-3584 chrM 13274 0 0 0 0 0 0 0 16-3584 chrM 13275 0 0 0 0 0 0 0 16-3584 chrM 13276 0 0 0 0 0 0 0 16-3584 chrM 13277 0 0 0 0 0 0 0 16-3584 chrM 13278 0 0 0 0 0 0 0 16-3584 chrM 13279 0 0 0 0 0 0 0 16-3584 chrM 13280 0 0 0 0 0 0 0 16-3584 chrM 13281 0 0 0 0 0 0 0 16-3584 chrM 13282 0 0 0 0 0 0 0 16-3584 chrM 13283 0 0 0 0 0 0 0 16-3584 chrM 13284 0 0 0 0 0 0 0 16-3584 chrM 13285 0 0 0 0 0 0 0 16-3584 chrM 13286 0 0 0 0 0 0 0 16-3584 chrM 13287 0 0 0 0 0 0 0 16-3584 chrM 13288 0 0 0 0 0 0 0 16-3584 chrM 13289 0 0 0 0 0 0 0 16-3584 chrM 13290 0 0 0 0 0 0 0 16-3584 chrM 13291 0 0 0 0 0 0 0 16-3584 chrM 13292 0 0 0 0 0 0 0 16-3584 chrM 13293 0 0 0 0 0 0 0 16-3584 chrM 13294 0 0 0 0 0 0 0 16-3584 chrM 13295 0 0 0 0 0 0 0 16-3584 chrM 13296 0 0 0 0 0 0 0 16-3584 chrM 13297 0 0 0 0 0 0 0 16-3584 chrM 13298 0 0 0 0 0 0 0 16-3584 chrM 13299 0 0 0 0 0 0 0 16-3584 chrM 13300 0 0 0 0 0 0 0 16-3584 chrM 13301 0 0 0 0 0 0 0 16-3584 chrM 13302 0 0 0 0 0 0 0 16-3584 chrM 13303 0 0 0 0 0 0 0 16-3584 chrM 13304 0 0 0 0 0 0 0 16-3584 chrM 13305 0 0 0 0 0 0 0 16-3584 chrM 13306 0 0 0 0 0 0 0 16-3584 chrM 13307 0 0 0 0 0 0 0 16-3584 chrM 13308 0 0 0 0 0 0 0 16-3584 chrM 13309 0 0 0 0 0 0 0 16-3584 chrM 13310 0 0 0 0 0 0 0 16-3584 chrM 13311 0 0 0 0 0 0 0 16-3584 chrM 13312 0 0 0 0 0 0 0 16-3584 chrM 13313 0 0 0 0 0 0 0 16-3584 chrM 13314 0 0 0 0 0 0 0 16-3584 chrM 13315 0 0 0 0 0 0 0 16-3584 chrM 13316 0 0 0 0 0 0 0 16-3584 chrM 13317 0 0 0 0 0 0 0 16-3584 chrM 13318 0 0 0 0 0 0 0 16-3584 chrM 13319 0 0 0 0 0 0 0 16-3584 chrM 13320 0 0 0 0 0 0 0 16-3584 chrM 13321 0 0 0 0 0 0 0 16-3584 chrM 13322 0 0 0 0 0 0 0 16-3584 chrM 13323 0 0 0 0 0 0 0 16-3584 chrM 13324 0 0 0 0 0 0 0 16-3584 chrM 13325 0 0 0 0 0 0 0 16-3584 chrM 13326 0 0 0 0 0 0 0 16-3584 chrM 13327 0 0 0 0 0 0 0 16-3584 chrM 13328 0 0 0 0 0 0 0 16-3584 chrM 13329 0 0 0 0 0 0 0 16-3584 chrM 13330 0 0 0 0 0 0 0 16-3584 chrM 13331 0 0 0 0 0 0 0 16-3584 chrM 13332 0 0 0 0 0 0 0 16-3584 chrM 13333 0 0 0 0 0 0 0 16-3584 chrM 13334 0 0 0 0 0 0 0 16-3584 chrM 13335 0 0 0 0 0 0 0 16-3584 chrM 13336 0 0 0 0 0 0 0 16-3584 chrM 13337 0 0 0 0 0 0 0 16-3584 chrM 13338 0 0 0 0 0 0 0 16-3584 chrM 13339 0 0 0 0 0 0 0 16-3584 chrM 13340 0 0 0 0 0 0 0 16-3584 chrM 13341 0 0 0 0 0 0 0 16-3584 chrM 13342 0 0 0 0 0 0 0 16-3584 chrM 13343 0 0 0 0 0 0 0 16-3584 chrM 13344 0 0 0 0 0 0 0 16-3584 chrM 13345 0 0 0 0 0 0 0 16-3584 chrM 13346 0 0 0 0 0 0 0 16-3584 chrM 13347 0 0 0 0 0 0 0 16-3584 chrM 13348 0 0 0 0 0 0 0 16-3584 chrM 13349 0 0 0 0 0 0 0 16-3584 chrM 13350 0 0 0 0 0 0 0 16-3584 chrM 13351 0 0 0 0 0 0 0 16-3584 chrM 13352 0 0 0 0 0 0 0 16-3584 chrM 13353 0 0 0 0 0 0 0 16-3584 chrM 13354 0 0 0 0 0 0 0 16-3584 chrM 13355 0 0 0 0 0 0 0 16-3584 chrM 13356 0 0 0 0 0 0 0 16-3584 chrM 13357 0 0 0 0 0 0 0 16-3584 chrM 13358 0 0 0 0 0 0 0 16-3584 chrM 13359 0 0 0 0 0 0 0 16-3584 chrM 13360 0 0 0 0 0 0 0 16-3584 chrM 13361 0 0 0 0 0 0 0 16-3584 chrM 13362 0 0 0 0 0 0 0 16-3584 chrM 13363 0 0 0 0 0 0 0 16-3584 chrM 13364 0 0 0 0 0 0 0 16-3584 chrM 13365 1 1 0 0 0 0 0 16-3584 chrM 13366 1 0 0 0 1 0 0 16-3584 chrM 13367 1 0 1 0 0 0 0 16-3584 chrM 13368 1 1 0 0 0 0 0 16-3584 chrM 13369 1 0 0 0 1 0 0 16-3584 chrM 13370 1 1 0 0 0 0 0 16-3584 chrM 13371 1 0 0 1 0 0 0 16-3584 chrM 13372 1 0 0 0 1 0 0 16-3584 chrM 13373 1 0 0 0 1 0 0 16-3584 chrM 13374 1 0 1 0 0 0 0 16-3584 chrM 13375 1 1 0 0 0 0 0 16-3584 chrM 13376 1 0 0 1 0 0 0 16-3584 chrM 13377 1 0 0 0 1 0 0 16-3584 chrM 13378 1 1 0 0 0 0 0 16-3584 chrM 13379 1 0 1 0 0 0 0 16-3584 chrM 13380 1 0 0 1 0 0 0 16-3584 chrM 13381 1 1 0 0 0 0 0 16-3584 chrM 13382 1 1 0 0 0 0 0 16-3584 chrM 13383 1 0 0 0 1 0 0 16-3584 chrM 13384 1 1 0 0 0 0 0 16-3584 chrM 13385 1 1 0 0 0 0 0 16-3584 chrM 13386 1 0 0 1 0 0 0 16-3584 chrM 13387 1 1 0 0 0 0 0 16-3584 chrM 13388 1 0 1 0 0 0 0 16-3584 chrM 13389 1 1 0 0 0 0 0 16-3584 chrM 13390 1 1 0 0 0 0 0 16-3584 chrM 13391 1 0 1 0 0 0 0 16-3584 chrM 13392 1 1 0 0 0 0 0 16-3584 chrM 13393 1 0 1 0 0 0 0 16-3584 chrM 13394 1 0 0 0 1 0 0 16-3584 chrM 13395 1 1 0 0 0 0 0 16-3584 chrM 13396 1 1 0 0 0 0 0 16-3584 chrM 13397 1 0 0 0 1 0 0 16-3584 chrM 13398 1 1 0 0 0 0 0 16-3584 chrM 13399 1 0 0 0 1 0 0 16-3584 chrM 13400 1 0 1 0 0 0 0 16-3584 chrM 13401 1 1 0 0 0 0 0 16-3584 chrM 13402 1 0 0 1 0 0 0 16-3584 chrM 13403 1 0 0 1 0 0 0 16-3584 chrM 13404 1 1 0 0 0 0 0 16-3584 chrM 13405 1 0 0 1 0 0 0 16-3584 chrM 13406 2 1 0 1 0 0 0 16-3584 chrM 13407 2 1 0 0 1 0 0 16-3584 chrM 13408 2 1 0 0 1 0 0 16-3584 chrM 13409 2 1 0 1 0 0 0 16-3584 chrM 13410 2 0 1 0 1 0 0 16-3584 chrM 13411 2 0 1 1 0 0 0 16-3584 chrM 13412 2 0 0 2 0 0 0 16-3584 chrM 13413 2 0 1 0 1 0 0 16-3584 chrM 13414 2 1 0 0 1 0 0 16-3584 chrM 13415 2 1 0 0 1 0 0 16-3584 chrM 13416 2 0 0 1 1 0 0 16-3584 chrM 13417 2 1 0 0 1 0 0 16-3584 chrM 13418 2 0 0 1 1 0 0 16-3584 chrM 13419 2 0 1 0 1 0 0 16-3584 chrM 13420 2 0 1 1 0 0 0 16-3584 chrM 13421 2 0 1 0 1 0 0 16-3584 chrM 13422 2 0 0 1 1 0 0 16-3584 chrM 13423 2 2 0 0 0 0 0 16-3584 chrM 13424 2 0 1 0 1 0 0 16-3584 chrM 13425 2 0 0 1 1 0 0 16-3584 chrM 13426 2 1 0 0 1 0 0 16-3584 chrM 13427 2 1 0 1 0 0 0 16-3584 chrM 13428 2 0 1 1 0 0 0 16-3584 chrM 13429 2 0 0 2 0 0 0 16-3584 chrM 13430 2 0 0 1 1 0 0 16-3584 chrM 13431 2 0 1 1 0 0 0 16-3584 chrM 13432 2 0 1 1 0 0 0 16-3584 chrM 13433 2 0 1 1 0 0 0 16-3584 chrM 13434 2 1 1 0 0 0 0 16-3584 chrM 13435 2 1 0 1 0 0 0 16-3584 chrM 13436 2 1 0 1 0 0 0 16-3584 chrM 13437 2 0 1 0 1 0 0 16-3584 chrM 13438 2 0 1 0 1 0 0 16-3584 chrM 13439 2 1 1 0 0 0 0 16-3584 chrM 13440 2 1 0 1 0 0 0 16-3584 chrM 13441 2 0 1 1 0 0 0 16-3584 chrM 13442 2 1 0 0 1 0 0 16-3584 chrM 13443 2 0 0 0 2 0 0 16-3584 chrM 13444 2 0 1 0 1 0 0 16-3584 chrM 13445 2 1 0 0 1 0 0 16-3584 chrM 13446 2 0 0 0 2 0 0 16-3584 chrM 13447 2 1 0 0 1 0 0 16-3584 chrM 13448 2 0 0 0 2 0 0 16-3584 chrM 13449 2 0 2 0 0 0 0 16-3584 chrM 13450 2 2 0 0 0 0 0 16-3584 chrM 13451 2 1 0 1 0 0 0 16-3584 chrM 13452 2 0 1 0 1 0 0 16-3584 chrM 13453 2 1 0 0 1 0 0 16-3584 chrM 13454 2 2 0 0 0 0 0 16-3584 chrM 13455 2 0 1 0 1 0 0 16-3584 chrM 13456 2 0 2 0 0 0 0 16-3584 chrM 13457 2 0 1 0 1 0 0 16-3584 chrM 13458 2 1 1 0 0 0 0 16-3584 chrM 13459 2 1 0 0 1 0 0 16-3584 chrM 13460 2 0 0 0 2 0 0 16-3584 chrM 13461 2 1 0 0 1 0 0 16-3584 chrM 13462 2 1 1 0 0 0 0 16-3584 chrM 13463 2 1 0 1 0 0 0 16-3584 chrM 13464 2 0 1 1 0 0 0 16-3584 chrM 13465 2 1 0 0 1 0 0 16-3584 chrM 13466 2 0 0 2 0 0 0 16-3584 chrM 13467 2 0 1 1 0 0 0 16-3584 chrM 13468 2 0 2 0 0 0 0 16-3584 chrM 13469 2 1 1 0 0 0 0 16-3584 chrM 13470 2 0 0 0 2 0 0 16-3584 chrM 13471 2 1 1 0 0 0 0 16-3584 chrM 13472 2 0 1 0 1 0 0 16-3584 chrM 13473 2 1 0 1 0 0 0 16-3584 chrM 13474 2 1 0 0 1 0 0 16-3584 chrM 13475 2 0 0 0 2 0 0 16-3584 chrM 13476 2 0 1 1 0 0 0 16-3584 chrM 13477 2 1 1 0 0 0 0 16-3584 chrM 13478 2 0 1 0 1 0 0 16-3584 chrM 13479 2 0 1 1 0 0 0 16-3584 chrM 13480 2 0 1 1 0 0 0 16-3584 chrM 13481 2 2 0 0 0 0 0 16-3584 chrM 13482 2 1 0 1 0 0 0 16-3584 chrM 13483 2 1 1 0 0 0 0 16-3584 chrM 13484 2 0 1 0 1 0 0 16-3584 chrM 13485 2 1 0 0 1 0 0 16-3584 chrM 13486 2 0 0 0 2 0 0 16-3584 chrM 13487 2 2 0 0 0 0 0 16-3584 chrM 13488 2 1 1 0 0 0 0 16-3584 chrM 13489 2 0 1 1 0 0 0 16-3584 chrM 13490 2 2 0 0 0 0 0 16-3584 chrM 13491 2 0 1 0 1 0 0 16-3584 chrM 13492 2 0 2 0 0 0 0 16-3584 chrM 13493 2 1 0 0 1 0 0 16-3584 chrM 13494 2 0 0 0 2 0 0 16-3584 chrM 13495 2 1 1 0 0 0 0 16-3584 chrM 13496 2 1 1 0 0 0 0 16-3584 chrM 13497 2 1 0 1 0 0 0 16-3584 chrM 13498 2 1 1 0 0 0 0 16-3584 chrM 13499 2 0 2 0 0 0 0 16-3584 chrM 13500 2 0 0 0 2 0 0 16-3584 chrM 13501 2 1 0 1 0 0 0 16-3584 chrM 13502 2 1 1 0 0 0 0 16-3584 chrM 13503 2 0 1 1 0 0 0 16-3584 chrM 13504 2 0 1 1 0 0 0 16-3584 chrM 13505 2 2 0 0 0 0 0 16-3584 chrM 13506 2 1 0 1 0 0 0 16-3584 chrM 13507 2 0 1 0 1 0 0 16-3584 chrM 13508 2 1 0 1 0 0 0 16-3584 chrM 13509 2 0 0 0 2 0 0 16-3584 chrM 13510 1 0 0 1 0 0 0 16-3584 chrM 13511 1 0 0 0 1 0 0 16-3584 chrM 13512 1 0 0 0 1 0 0 16-3584 chrM 13513 1 0 0 0 1 0 0 16-3584 chrM 13514 1 1 0 0 0 0 0 16-3584 chrM 13515 1 0 0 0 1 0 0 16-3584 chrM 13516 1 1 0 0 0 0 0 16-3584 chrM 13517 1 0 0 1 0 0 0 16-3584 chrM 13518 1 0 0 1 0 0 0 16-3584 chrM 13519 1 1 0 0 0 0 0 16-3584 chrM 13520 1 0 0 1 0 0 0 16-3584 chrM 13521 1 0 0 1 0 0 0 16-3584 chrM 13522 1 0 0 1 0 0 0 16-3584 chrM 13523 1 0 0 1 0 0 0 16-3584 chrM 13524 1 0 0 1 0 0 0 16-3584 chrM 13525 1 0 0 1 0 0 0 16-3584 chrM 13526 1 0 0 1 0 0 0 16-3584 chrM 13527 1 0 1 0 0 0 0 16-3584 chrM 13528 1 0 0 1 0 0 0 16-3584 chrM 13529 1 0 0 1 0 0 0 16-3584 chrM 13530 1 0 1 0 0 0 0 16-3584 chrM 13531 1 1 0 0 0 0 0 16-3584 chrM 13532 1 1 0 0 0 0 0 16-3584 chrM 13533 1 1 0 0 0 0 0 16-3584 chrM 13534 1 0 0 1 0 0 0 16-3584 chrM 13535 1 1 0 0 0 0 0 16-3584 chrM 13536 1 0 0 0 1 0 0 16-3584 chrM 13537 1 0 0 1 0 0 0 16-3584 chrM 13538 1 0 0 1 0 0 0 16-3584 chrM 13539 1 0 1 0 0 0 0 16-3584 chrM 13540 1 0 0 0 1 0 0 16-3584 chrM 13541 1 0 0 1 0 0 0 16-3584 chrM 13542 1 0 0 1 0 0 0 16-3584 chrM 13543 1 1 0 0 0 0 0 16-3584 chrM 13544 1 0 0 1 0 0 0 16-3584 chrM 13545 1 0 0 0 1 0 0 16-3584 chrM 13546 1 0 0 1 0 0 0 16-3584 chrM 13547 1 0 1 0 0 0 0 16-3584 chrM 13548 1 1 0 0 0 0 0 16-3584 chrM 13549 1 0 0 0 1 0 0 16-3584 chrM 13550 1 0 0 0 1 0 0 16-3584 chrM 13551 1 1 0 0 0 0 0 16-3584 chrM 13552 0 0 0 0 0 0 0 16-3584 chrM 13553 0 0 0 0 0 0 0 16-3584 chrM 13554 0 0 0 0 0 0 0 16-3584 chrM 13555 0 0 0 0 0 0 0 16-3584 chrM 13556 0 0 0 0 0 0 0 16-3584 chrM 13557 0 0 0 0 0 0 0 16-3584 chrM 13558 0 0 0 0 0 0 0 16-3584 chrM 13559 0 0 0 0 0 0 0 16-3584 chrM 13560 0 0 0 0 0 0 0 16-3584 chrM 13561 0 0 0 0 0 0 0 16-3584 chrM 13562 0 0 0 0 0 0 0 16-3584 chrM 13563 0 0 0 0 0 0 0 16-3584 chrM 13564 0 0 0 0 0 0 0 16-3584 chrM 13565 0 0 0 0 0 0 0 16-3584 chrM 13566 0 0 0 0 0 0 0 16-3584 chrM 13567 0 0 0 0 0 0 0 16-3584 chrM 13568 0 0 0 0 0 0 0 16-3584 chrM 13569 0 0 0 0 0 0 0 16-3584 chrM 13570 0 0 0 0 0 0 0 16-3584 chrM 13571 0 0 0 0 0 0 0 16-3584 chrM 13572 0 0 0 0 0 0 0 16-3584 chrM 13573 0 0 0 0 0 0 0 16-3584 chrM 13574 0 0 0 0 0 0 0 16-3584 chrM 13575 0 0 0 0 0 0 0 16-3584 chrM 13576 0 0 0 0 0 0 0 16-3584 chrM 13577 0 0 0 0 0 0 0 16-3584 chrM 13578 0 0 0 0 0 0 0 16-3584 chrM 13579 0 0 0 0 0 0 0 16-3584 chrM 13580 0 0 0 0 0 0 0 16-3584 chrM 13581 0 0 0 0 0 0 0 16-3584 chrM 13582 0 0 0 0 0 0 0 16-3584 chrM 13583 0 0 0 0 0 0 0 16-3584 chrM 13584 0 0 0 0 0 0 0 16-3584 chrM 13585 0 0 0 0 0 0 0 16-3584 chrM 13586 0 0 0 0 0 0 0 16-3584 chrM 13587 0 0 0 0 0 0 0 16-3584 chrM 13588 0 0 0 0 0 0 0 16-3584 chrM 13589 0 0 0 0 0 0 0 16-3584 chrM 13590 0 0 0 0 0 0 0 16-3584 chrM 13591 0 0 0 0 0 0 0 16-3584 chrM 13592 0 0 0 0 0 0 0 16-3584 chrM 13593 0 0 0 0 0 0 0 16-3584 chrM 13594 0 0 0 0 0 0 0 16-3584 chrM 13595 0 0 0 0 0 0 0 16-3584 chrM 13596 0 0 0 0 0 0 0 16-3584 chrM 13597 0 0 0 0 0 0 0 16-3584 chrM 13598 0 0 0 0 0 0 0 16-3584 chrM 13599 0 0 0 0 0 0 0 16-3584 chrM 13600 0 0 0 0 0 0 0 16-3584 chrM 13601 0 0 0 0 0 0 0 16-3584 chrM 13602 0 0 0 0 0 0 0 16-3584 chrM 13603 0 0 0 0 0 0 0 16-3584 chrM 13604 0 0 0 0 0 0 0 16-3584 chrM 13605 0 0 0 0 0 0 0 16-3584 chrM 13606 0 0 0 0 0 0 0 16-3584 chrM 13607 0 0 0 0 0 0 0 16-3584 chrM 13608 0 0 0 0 0 0 0 16-3584 chrM 13609 0 0 0 0 0 0 0 16-3584 chrM 13610 0 0 0 0 0 0 0 16-3584 chrM 13611 0 0 0 0 0 0 0 16-3584 chrM 13612 0 0 0 0 0 0 0 16-3584 chrM 13613 0 0 0 0 0 0 0 16-3584 chrM 13614 0 0 0 0 0 0 0 16-3584 chrM 13615 0 0 0 0 0 0 0 16-3584 chrM 13616 0 0 0 0 0 0 0 16-3584 chrM 13617 0 0 0 0 0 0 0 16-3584 chrM 13618 0 0 0 0 0 0 0 16-3584 chrM 13619 0 0 0 0 0 0 0 16-3584 chrM 13620 0 0 0 0 0 0 0 16-3584 chrM 13621 0 0 0 0 0 0 0 16-3584 chrM 13622 0 0 0 0 0 0 0 16-3584 chrM 13623 0 0 0 0 0 0 0 16-3584 chrM 13624 0 0 0 0 0 0 0 16-3584 chrM 13625 0 0 0 0 0 0 0 16-3584 chrM 13626 0 0 0 0 0 0 0 16-3584 chrM 13627 0 0 0 0 0 0 0 16-3584 chrM 13628 0 0 0 0 0 0 0 16-3584 chrM 13629 0 0 0 0 0 0 0 16-3584 chrM 13630 0 0 0 0 0 0 0 16-3584 chrM 13631 0 0 0 0 0 0 0 16-3584 chrM 13632 0 0 0 0 0 0 0 16-3584 chrM 13633 0 0 0 0 0 0 0 16-3584 chrM 13634 0 0 0 0 0 0 0 16-3584 chrM 13635 0 0 0 0 0 0 0 16-3584 chrM 13636 0 0 0 0 0 0 0 16-3584 chrM 13637 0 0 0 0 0 0 0 16-3584 chrM 13638 0 0 0 0 0 0 0 16-3584 chrM 13639 0 0 0 0 0 0 0 16-3584 chrM 13640 0 0 0 0 0 0 0 16-3584 chrM 13641 0 0 0 0 0 0 0 16-3584 chrM 13642 0 0 0 0 0 0 0 16-3584 chrM 13643 0 0 0 0 0 0 0 16-3584 chrM 13644 0 0 0 0 0 0 0 16-3584 chrM 13645 0 0 0 0 0 0 0 16-3584 chrM 13646 0 0 0 0 0 0 0 16-3584 chrM 13647 0 0 0 0 0 0 0 16-3584 chrM 13648 0 0 0 0 0 0 0 16-3584 chrM 13649 0 0 0 0 0 0 0 16-3584 chrM 13650 0 0 0 0 0 0 0 16-3584 chrM 13651 0 0 0 0 0 0 0 16-3584 chrM 13652 0 0 0 0 0 0 0 16-3584 chrM 13653 0 0 0 0 0 0 0 16-3584 chrM 13654 0 0 0 0 0 0 0 16-3584 chrM 13655 0 0 0 0 0 0 0 16-3584 chrM 13656 0 0 0 0 0 0 0 16-3584 chrM 13657 0 0 0 0 0 0 0 16-3584 chrM 13658 0 0 0 0 0 0 0 16-3584 chrM 13659 0 0 0 0 0 0 0 16-3584 chrM 13660 0 0 0 0 0 0 0 16-3584 chrM 13661 0 0 0 0 0 0 0 16-3584 chrM 13662 0 0 0 0 0 0 0 16-3584 chrM 13663 0 0 0 0 0 0 0 16-3584 chrM 13664 0 0 0 0 0 0 0 16-3584 chrM 13665 0 0 0 0 0 0 0 16-3584 chrM 13666 0 0 0 0 0 0 0 16-3584 chrM 13667 0 0 0 0 0 0 0 16-3584 chrM 13668 0 0 0 0 0 0 0 16-3584 chrM 13669 0 0 0 0 0 0 0 16-3584 chrM 13670 0 0 0 0 0 0 0 16-3584 chrM 13671 0 0 0 0 0 0 0 16-3584 chrM 13672 0 0 0 0 0 0 0 16-3584 chrM 13673 0 0 0 0 0 0 0 16-3584 chrM 13674 0 0 0 0 0 0 0 16-3584 chrM 13675 0 0 0 0 0 0 0 16-3584 chrM 13676 0 0 0 0 0 0 0 16-3584 chrM 13677 0 0 0 0 0 0 0 16-3584 chrM 13678 0 0 0 0 0 0 0 16-3584 chrM 13679 0 0 0 0 0 0 0 16-3584 chrM 13680 0 0 0 0 0 0 0 16-3584 chrM 13681 0 0 0 0 0 0 0 16-3584 chrM 13682 0 0 0 0 0 0 0 16-3584 chrM 13683 0 0 0 0 0 0 0 16-3584 chrM 13684 0 0 0 0 0 0 0 16-3584 chrM 13685 0 0 0 0 0 0 0 16-3584 chrM 13686 0 0 0 0 0 0 0 16-3584 chrM 13687 0 0 0 0 0 0 0 16-3584 chrM 13688 0 0 0 0 0 0 0 16-3584 chrM 13689 0 0 0 0 0 0 0 16-3584 chrM 13690 0 0 0 0 0 0 0 16-3584 chrM 13691 0 0 0 0 0 0 0 16-3584 chrM 13692 0 0 0 0 0 0 0 16-3584 chrM 13693 0 0 0 0 0 0 0 16-3584 chrM 13694 0 0 0 0 0 0 0 16-3584 chrM 13695 0 0 0 0 0 0 0 16-3584 chrM 13696 0 0 0 0 0 0 0 16-3584 chrM 13697 0 0 0 0 0 0 0 16-3584 chrM 13698 0 0 0 0 0 0 0 16-3584 chrM 13699 0 0 0 0 0 0 0 16-3584 chrM 13700 0 0 0 0 0 0 0 16-3584 chrM 13701 0 0 0 0 0 0 0 16-3584 chrM 13702 0 0 0 0 0 0 0 16-3584 chrM 13703 0 0 0 0 0 0 0 16-3584 chrM 13704 0 0 0 0 0 0 0 16-3584 chrM 13705 0 0 0 0 0 0 0 16-3584 chrM 13706 0 0 0 0 0 0 0 16-3584 chrM 13707 0 0 0 0 0 0 0 16-3584 chrM 13708 0 0 0 0 0 0 0 16-3584 chrM 13709 0 0 0 0 0 0 0 16-3584 chrM 13710 0 0 0 0 0 0 0 16-3584 chrM 13711 0 0 0 0 0 0 0 16-3584 chrM 13712 0 0 0 0 0 0 0 16-3584 chrM 13713 0 0 0 0 0 0 0 16-3584 chrM 13714 0 0 0 0 0 0 0 16-3584 chrM 13715 0 0 0 0 0 0 0 16-3584 chrM 13716 0 0 0 0 0 0 0 16-3584 chrM 13717 0 0 0 0 0 0 0 16-3584 chrM 13718 0 0 0 0 0 0 0 16-3584 chrM 13719 0 0 0 0 0 0 0 16-3584 chrM 13720 0 0 0 0 0 0 0 16-3584 chrM 13721 0 0 0 0 0 0 0 16-3584 chrM 13722 0 0 0 0 0 0 0 16-3584 chrM 13723 0 0 0 0 0 0 0 16-3584 chrM 13724 0 0 0 0 0 0 0 16-3584 chrM 13725 0 0 0 0 0 0 0 16-3584 chrM 13726 0 0 0 0 0 0 0 16-3584 chrM 13727 0 0 0 0 0 0 0 16-3584 chrM 13728 0 0 0 0 0 0 0 16-3584 chrM 13729 0 0 0 0 0 0 0 16-3584 chrM 13730 0 0 0 0 0 0 0 16-3584 chrM 13731 0 0 0 0 0 0 0 16-3584 chrM 13732 0 0 0 0 0 0 0 16-3584 chrM 13733 0 0 0 0 0 0 0 16-3584 chrM 13734 0 0 0 0 0 0 0 16-3584 chrM 13735 0 0 0 0 0 0 0 16-3584 chrM 13736 0 0 0 0 0 0 0 16-3584 chrM 13737 0 0 0 0 0 0 0 16-3584 chrM 13738 0 0 0 0 0 0 0 16-3584 chrM 13739 0 0 0 0 0 0 0 16-3584 chrM 13740 0 0 0 0 0 0 0 16-3584 chrM 13741 0 0 0 0 0 0 0 16-3584 chrM 13742 0 0 0 0 0 0 0 16-3584 chrM 13743 0 0 0 0 0 0 0 16-3584 chrM 13744 0 0 0 0 0 0 0 16-3584 chrM 13745 0 0 0 0 0 0 0 16-3584 chrM 13746 0 0 0 0 0 0 0 16-3584 chrM 13747 0 0 0 0 0 0 0 16-3584 chrM 13748 0 0 0 0 0 0 0 16-3584 chrM 13749 0 0 0 0 0 0 0 16-3584 chrM 13750 0 0 0 0 0 0 0 16-3584 chrM 13751 0 0 0 0 0 0 0 16-3584 chrM 13752 0 0 0 0 0 0 0 16-3584 chrM 13753 0 0 0 0 0 0 0 16-3584 chrM 13754 0 0 0 0 0 0 0 16-3584 chrM 13755 0 0 0 0 0 0 0 16-3584 chrM 13756 0 0 0 0 0 0 0 16-3584 chrM 13757 0 0 0 0 0 0 0 16-3584 chrM 13758 0 0 0 0 0 0 0 16-3584 chrM 13759 0 0 0 0 0 0 0 16-3584 chrM 13760 0 0 0 0 0 0 0 16-3584 chrM 13761 0 0 0 0 0 0 0 16-3584 chrM 13762 0 0 0 0 0 0 0 16-3584 chrM 13763 0 0 0 0 0 0 0 16-3584 chrM 13764 0 0 0 0 0 0 0 16-3584 chrM 13765 0 0 0 0 0 0 0 16-3584 chrM 13766 0 0 0 0 0 0 0 16-3584 chrM 13767 0 0 0 0 0 0 0 16-3584 chrM 13768 0 0 0 0 0 0 0 16-3584 chrM 13769 0 0 0 0 0 0 0 16-3584 chrM 13770 0 0 0 0 0 0 0 16-3584 chrM 13771 0 0 0 0 0 0 0 16-3584 chrM 13772 0 0 0 0 0 0 0 16-3584 chrM 13773 0 0 0 0 0 0 0 16-3584 chrM 13774 0 0 0 0 0 0 0 16-3584 chrM 13775 0 0 0 0 0 0 0 16-3584 chrM 13776 0 0 0 0 0 0 0 16-3584 chrM 13777 0 0 0 0 0 0 0 16-3584 chrM 13778 0 0 0 0 0 0 0 16-3584 chrM 13779 0 0 0 0 0 0 0 16-3584 chrM 13780 0 0 0 0 0 0 0 16-3584 chrM 13781 0 0 0 0 0 0 0 16-3584 chrM 13782 0 0 0 0 0 0 0 16-3584 chrM 13783 0 0 0 0 0 0 0 16-3584 chrM 13784 0 0 0 0 0 0 0 16-3584 chrM 13785 0 0 0 0 0 0 0 16-3584 chrM 13786 0 0 0 0 0 0 0 16-3584 chrM 13787 0 0 0 0 0 0 0 16-3584 chrM 13788 0 0 0 0 0 0 0 16-3584 chrM 13789 0 0 0 0 0 0 0 16-3584 chrM 13790 0 0 0 0 0 0 0 16-3584 chrM 13791 0 0 0 0 0 0 0 16-3584 chrM 13792 0 0 0 0 0 0 0 16-3584 chrM 13793 0 0 0 0 0 0 0 16-3584 chrM 13794 0 0 0 0 0 0 0 16-3584 chrM 13795 0 0 0 0 0 0 0 16-3584 chrM 13796 0 0 0 0 0 0 0 16-3584 chrM 13797 0 0 0 0 0 0 0 16-3584 chrM 13798 0 0 0 0 0 0 0 16-3584 chrM 13799 0 0 0 0 0 0 0 16-3584 chrM 13800 0 0 0 0 0 0 0 16-3584 chrM 13801 0 0 0 0 0 0 0 16-3584 chrM 13802 0 0 0 0 0 0 0 16-3584 chrM 13803 0 0 0 0 0 0 0 16-3584 chrM 13804 0 0 0 0 0 0 0 16-3584 chrM 13805 0 0 0 0 0 0 0 16-3584 chrM 13806 0 0 0 0 0 0 0 16-3584 chrM 13807 0 0 0 0 0 0 0 16-3584 chrM 13808 0 0 0 0 0 0 0 16-3584 chrM 13809 0 0 0 0 0 0 0 16-3584 chrM 13810 0 0 0 0 0 0 0 16-3584 chrM 13811 0 0 0 0 0 0 0 16-3584 chrM 13812 0 0 0 0 0 0 0 16-3584 chrM 13813 0 0 0 0 0 0 0 16-3584 chrM 13814 0 0 0 0 0 0 0 16-3584 chrM 13815 0 0 0 0 0 0 0 16-3584 chrM 13816 0 0 0 0 0 0 0 16-3584 chrM 13817 0 0 0 0 0 0 0 16-3584 chrM 13818 0 0 0 0 0 0 0 16-3584 chrM 13819 0 0 0 0 0 0 0 16-3584 chrM 13820 0 0 0 0 0 0 0 16-3584 chrM 13821 0 0 0 0 0 0 0 16-3584 chrM 13822 0 0 0 0 0 0 0 16-3584 chrM 13823 0 0 0 0 0 0 0 16-3584 chrM 13824 0 0 0 0 0 0 0 16-3584 chrM 13825 0 0 0 0 0 0 0 16-3584 chrM 13826 0 0 0 0 0 0 0 16-3584 chrM 13827 0 0 0 0 0 0 0 16-3584 chrM 13828 0 0 0 0 0 0 0 16-3584 chrM 13829 0 0 0 0 0 0 0 16-3584 chrM 13830 0 0 0 0 0 0 0 16-3584 chrM 13831 0 0 0 0 0 0 0 16-3584 chrM 13832 0 0 0 0 0 0 0 16-3584 chrM 13833 0 0 0 0 0 0 0 16-3584 chrM 13834 0 0 0 0 0 0 0 16-3584 chrM 13835 0 0 0 0 0 0 0 16-3584 chrM 13836 0 0 0 0 0 0 0 16-3584 chrM 13837 0 0 0 0 0 0 0 16-3584 chrM 13838 0 0 0 0 0 0 0 16-3584 chrM 13839 0 0 0 0 0 0 0 16-3584 chrM 13840 0 0 0 0 0 0 0 16-3584 chrM 13841 0 0 0 0 0 0 0 16-3584 chrM 13842 0 0 0 0 0 0 0 16-3584 chrM 13843 0 0 0 0 0 0 0 16-3584 chrM 13844 0 0 0 0 0 0 0 16-3584 chrM 13845 0 0 0 0 0 0 0 16-3584 chrM 13846 0 0 0 0 0 0 0 16-3584 chrM 13847 0 0 0 0 0 0 0 16-3584 chrM 13848 0 0 0 0 0 0 0 16-3584 chrM 13849 0 0 0 0 0 0 0 16-3584 chrM 13850 0 0 0 0 0 0 0 16-3584 chrM 13851 0 0 0 0 0 0 0 16-3584 chrM 13852 0 0 0 0 0 0 0 16-3584 chrM 13853 0 0 0 0 0 0 0 16-3584 chrM 13854 0 0 0 0 0 0 0 16-3584 chrM 13855 0 0 0 0 0 0 0 16-3584 chrM 13856 0 0 0 0 0 0 0 16-3584 chrM 13857 0 0 0 0 0 0 0 16-3584 chrM 13858 0 0 0 0 0 0 0 16-3584 chrM 13859 0 0 0 0 0 0 0 16-3584 chrM 13860 0 0 0 0 0 0 0 16-3584 chrM 13861 0 0 0 0 0 0 0 16-3584 chrM 13862 0 0 0 0 0 0 0 16-3584 chrM 13863 0 0 0 0 0 0 0 16-3584 chrM 13864 0 0 0 0 0 0 0 16-3584 chrM 13865 0 0 0 0 0 0 0 16-3584 chrM 13866 0 0 0 0 0 0 0 16-3584 chrM 13867 0 0 0 0 0 0 0 16-3584 chrM 13868 0 0 0 0 0 0 0 16-3584 chrM 13869 0 0 0 0 0 0 0 16-3584 chrM 13870 0 0 0 0 0 0 0 16-3584 chrM 13871 0 0 0 0 0 0 0 16-3584 chrM 13872 0 0 0 0 0 0 0 16-3584 chrM 13873 0 0 0 0 0 0 0 16-3584 chrM 13874 0 0 0 0 0 0 0 16-3584 chrM 13875 0 0 0 0 0 0 0 16-3584 chrM 13876 0 0 0 0 0 0 0 16-3584 chrM 13877 0 0 0 0 0 0 0 16-3584 chrM 13878 0 0 0 0 0 0 0 16-3584 chrM 13879 0 0 0 0 0 0 0 16-3584 chrM 13880 0 0 0 0 0 0 0 16-3584 chrM 13881 0 0 0 0 0 0 0 16-3584 chrM 13882 0 0 0 0 0 0 0 16-3584 chrM 13883 0 0 0 0 0 0 0 16-3584 chrM 13884 0 0 0 0 0 0 0 16-3584 chrM 13885 0 0 0 0 0 0 0 16-3584 chrM 13886 0 0 0 0 0 0 0 16-3584 chrM 13887 0 0 0 0 0 0 0 16-3584 chrM 13888 0 0 0 0 0 0 0 16-3584 chrM 13889 0 0 0 0 0 0 0 16-3584 chrM 13890 0 0 0 0 0 0 0 16-3584 chrM 13891 0 0 0 0 0 0 0 16-3584 chrM 13892 0 0 0 0 0 0 0 16-3584 chrM 13893 0 0 0 0 0 0 0 16-3584 chrM 13894 0 0 0 0 0 0 0 16-3584 chrM 13895 0 0 0 0 0 0 0 16-3584 chrM 13896 0 0 0 0 0 0 0 16-3584 chrM 13897 0 0 0 0 0 0 0 16-3584 chrM 13898 0 0 0 0 0 0 0 16-3584 chrM 13899 0 0 0 0 0 0 0 16-3584 chrM 13900 0 0 0 0 0 0 0 16-3584 chrM 13901 0 0 0 0 0 0 0 16-3584 chrM 13902 0 0 0 0 0 0 0 16-3584 chrM 13903 0 0 0 0 0 0 0 16-3584 chrM 13904 0 0 0 0 0 0 0 16-3584 chrM 13905 0 0 0 0 0 0 0 16-3584 chrM 13906 0 0 0 0 0 0 0 16-3584 chrM 13907 0 0 0 0 0 0 0 16-3584 chrM 13908 0 0 0 0 0 0 0 16-3584 chrM 13909 0 0 0 0 0 0 0 16-3584 chrM 13910 0 0 0 0 0 0 0 16-3584 chrM 13911 0 0 0 0 0 0 0 16-3584 chrM 13912 0 0 0 0 0 0 0 16-3584 chrM 13913 0 0 0 0 0 0 0 16-3584 chrM 13914 0 0 0 0 0 0 0 16-3584 chrM 13915 0 0 0 0 0 0 0 16-3584 chrM 13916 0 0 0 0 0 0 0 16-3584 chrM 13917 0 0 0 0 0 0 0 16-3584 chrM 13918 0 0 0 0 0 0 0 16-3584 chrM 13919 0 0 0 0 0 0 0 16-3584 chrM 13920 0 0 0 0 0 0 0 16-3584 chrM 13921 0 0 0 0 0 0 0 16-3584 chrM 13922 0 0 0 0 0 0 0 16-3584 chrM 13923 0 0 0 0 0 0 0 16-3584 chrM 13924 0 0 0 0 0 0 0 16-3584 chrM 13925 0 0 0 0 0 0 0 16-3584 chrM 13926 0 0 0 0 0 0 0 16-3584 chrM 13927 0 0 0 0 0 0 0 16-3584 chrM 13928 0 0 0 0 0 0 0 16-3584 chrM 13929 0 0 0 0 0 0 0 16-3584 chrM 13930 0 0 0 0 0 0 0 16-3584 chrM 13931 0 0 0 0 0 0 0 16-3584 chrM 13932 0 0 0 0 0 0 0 16-3584 chrM 13933 0 0 0 0 0 0 0 16-3584 chrM 13934 0 0 0 0 0 0 0 16-3584 chrM 13935 0 0 0 0 0 0 0 16-3584 chrM 13936 0 0 0 0 0 0 0 16-3584 chrM 13937 0 0 0 0 0 0 0 16-3584 chrM 13938 0 0 0 0 0 0 0 16-3584 chrM 13939 0 0 0 0 0 0 0 16-3584 chrM 13940 0 0 0 0 0 0 0 16-3584 chrM 13941 0 0 0 0 0 0 0 16-3584 chrM 13942 0 0 0 0 0 0 0 16-3584 chrM 13943 0 0 0 0 0 0 0 16-3584 chrM 13944 0 0 0 0 0 0 0 16-3584 chrM 13945 0 0 0 0 0 0 0 16-3584 chrM 13946 0 0 0 0 0 0 0 16-3584 chrM 13947 0 0 0 0 0 0 0 16-3584 chrM 13948 0 0 0 0 0 0 0 16-3584 chrM 13949 0 0 0 0 0 0 0 16-3584 chrM 13950 0 0 0 0 0 0 0 16-3584 chrM 13951 0 0 0 0 0 0 0 16-3584 chrM 13952 0 0 0 0 0 0 0 16-3584 chrM 13953 0 0 0 0 0 0 0 16-3584 chrM 13954 0 0 0 0 0 0 0 16-3584 chrM 13955 0 0 0 0 0 0 0 16-3584 chrM 13956 0 0 0 0 0 0 0 16-3584 chrM 13957 0 0 0 0 0 0 0 16-3584 chrM 13958 0 0 0 0 0 0 0 16-3584 chrM 13959 0 0 0 0 0 0 0 16-3584 chrM 13960 0 0 0 0 0 0 0 16-3584 chrM 13961 0 0 0 0 0 0 0 16-3584 chrM 13962 0 0 0 0 0 0 0 16-3584 chrM 13963 0 0 0 0 0 0 0 16-3584 chrM 13964 0 0 0 0 0 0 0 16-3584 chrM 13965 0 0 0 0 0 0 0 16-3584 chrM 13966 0 0 0 0 0 0 0 16-3584 chrM 13967 0 0 0 0 0 0 0 16-3584 chrM 13968 0 0 0 0 0 0 0 16-3584 chrM 13969 0 0 0 0 0 0 0 16-3584 chrM 13970 0 0 0 0 0 0 0 16-3584 chrM 13971 0 0 0 0 0 0 0 16-3584 chrM 13972 0 0 0 0 0 0 0 16-3584 chrM 13973 0 0 0 0 0 0 0 16-3584 chrM 13974 0 0 0 0 0 0 0 16-3584 chrM 13975 0 0 0 0 0 0 0 16-3584 chrM 13976 0 0 0 0 0 0 0 16-3584 chrM 13977 0 0 0 0 0 0 0 16-3584 chrM 13978 0 0 0 0 0 0 0 16-3584 chrM 13979 0 0 0 0 0 0 0 16-3584 chrM 13980 0 0 0 0 0 0 0 16-3584 chrM 13981 0 0 0 0 0 0 0 16-3584 chrM 13982 0 0 0 0 0 0 0 16-3584 chrM 13983 0 0 0 0 0 0 0 16-3584 chrM 13984 0 0 0 0 0 0 0 16-3584 chrM 13985 0 0 0 0 0 0 0 16-3584 chrM 13986 0 0 0 0 0 0 0 16-3584 chrM 13987 0 0 0 0 0 0 0 16-3584 chrM 13988 0 0 0 0 0 0 0 16-3584 chrM 13989 0 0 0 0 0 0 0 16-3584 chrM 13990 0 0 0 0 0 0 0 16-3584 chrM 13991 0 0 0 0 0 0 0 16-3584 chrM 13992 0 0 0 0 0 0 0 16-3584 chrM 13993 0 0 0 0 0 0 0 16-3584 chrM 13994 0 0 0 0 0 0 0 16-3584 chrM 13995 0 0 0 0 0 0 0 16-3584 chrM 13996 0 0 0 0 0 0 0 16-3584 chrM 13997 0 0 0 0 0 0 0 16-3584 chrM 13998 0 0 0 0 0 0 0 16-3584 chrM 13999 0 0 0 0 0 0 0 16-3584 chrM 14000 0 0 0 0 0 0 0 16-3584 chrM 14001 0 0 0 0 0 0 0 16-3584 chrM 14002 0 0 0 0 0 0 0 16-3584 chrM 14003 0 0 0 0 0 0 0 16-3584 chrM 14004 0 0 0 0 0 0 0 16-3584 chrM 14005 0 0 0 0 0 0 0 16-3584 chrM 14006 0 0 0 0 0 0 0 16-3584 chrM 14007 0 0 0 0 0 0 0 16-3584 chrM 14008 0 0 0 0 0 0 0 16-3584 chrM 14009 0 0 0 0 0 0 0 16-3584 chrM 14010 0 0 0 0 0 0 0 16-3584 chrM 14011 0 0 0 0 0 0 0 16-3584 chrM 14012 0 0 0 0 0 0 0 16-3584 chrM 14013 0 0 0 0 0 0 0 16-3584 chrM 14014 0 0 0 0 0 0 0 16-3584 chrM 14015 0 0 0 0 0 0 0 16-3584 chrM 14016 0 0 0 0 0 0 0 16-3584 chrM 14017 0 0 0 0 0 0 0 16-3584 chrM 14018 0 0 0 0 0 0 0 16-3584 chrM 14019 0 0 0 0 0 0 0 16-3584 chrM 14020 0 0 0 0 0 0 0 16-3584 chrM 14021 0 0 0 0 0 0 0 16-3584 chrM 14022 0 0 0 0 0 0 0 16-3584 chrM 14023 0 0 0 0 0 0 0 16-3584 chrM 14024 0 0 0 0 0 0 0 16-3584 chrM 14025 0 0 0 0 0 0 0 16-3584 chrM 14026 0 0 0 0 0 0 0 16-3584 chrM 14027 0 0 0 0 0 0 0 16-3584 chrM 14028 0 0 0 0 0 0 0 16-3584 chrM 14029 0 0 0 0 0 0 0 16-3584 chrM 14030 0 0 0 0 0 0 0 16-3584 chrM 14031 0 0 0 0 0 0 0 16-3584 chrM 14032 0 0 0 0 0 0 0 16-3584 chrM 14033 0 0 0 0 0 0 0 16-3584 chrM 14034 0 0 0 0 0 0 0 16-3584 chrM 14035 0 0 0 0 0 0 0 16-3584 chrM 14036 0 0 0 0 0 0 0 16-3584 chrM 14037 0 0 0 0 0 0 0 16-3584 chrM 14038 0 0 0 0 0 0 0 16-3584 chrM 14039 0 0 0 0 0 0 0 16-3584 chrM 14040 0 0 0 0 0 0 0 16-3584 chrM 14041 0 0 0 0 0 0 0 16-3584 chrM 14042 0 0 0 0 0 0 0 16-3584 chrM 14043 0 0 0 0 0 0 0 16-3584 chrM 14044 0 0 0 0 0 0 0 16-3584 chrM 14045 0 0 0 0 0 0 0 16-3584 chrM 14046 0 0 0 0 0 0 0 16-3584 chrM 14047 0 0 0 0 0 0 0 16-3584 chrM 14048 0 0 0 0 0 0 0 16-3584 chrM 14049 0 0 0 0 0 0 0 16-3584 chrM 14050 0 0 0 0 0 0 0 16-3584 chrM 14051 0 0 0 0 0 0 0 16-3584 chrM 14052 0 0 0 0 0 0 0 16-3584 chrM 14053 0 0 0 0 0 0 0 16-3584 chrM 14054 0 0 0 0 0 0 0 16-3584 chrM 14055 0 0 0 0 0 0 0 16-3584 chrM 14056 0 0 0 0 0 0 0 16-3584 chrM 14057 0 0 0 0 0 0 0 16-3584 chrM 14058 0 0 0 0 0 0 0 16-3584 chrM 14059 0 0 0 0 0 0 0 16-3584 chrM 14060 0 0 0 0 0 0 0 16-3584 chrM 14061 0 0 0 0 0 0 0 16-3584 chrM 14062 0 0 0 0 0 0 0 16-3584 chrM 14063 0 0 0 0 0 0 0 16-3584 chrM 14064 0 0 0 0 0 0 0 16-3584 chrM 14065 0 0 0 0 0 0 0 16-3584 chrM 14066 0 0 0 0 0 0 0 16-3584 chrM 14067 0 0 0 0 0 0 0 16-3584 chrM 14068 0 0 0 0 0 0 0 16-3584 chrM 14069 0 0 0 0 0 0 0 16-3584 chrM 14070 0 0 0 0 0 0 0 16-3584 chrM 14071 0 0 0 0 0 0 0 16-3584 chrM 14072 0 0 0 0 0 0 0 16-3584 chrM 14073 0 0 0 0 0 0 0 16-3584 chrM 14074 0 0 0 0 0 0 0 16-3584 chrM 14075 0 0 0 0 0 0 0 16-3584 chrM 14076 0 0 0 0 0 0 0 16-3584 chrM 14077 0 0 0 0 0 0 0 16-3584 chrM 14078 0 0 0 0 0 0 0 16-3584 chrM 14079 0 0 0 0 0 0 0 16-3584 chrM 14080 0 0 0 0 0 0 0 16-3584 chrM 14081 0 0 0 0 0 0 0 16-3584 chrM 14082 0 0 0 0 0 0 0 16-3584 chrM 14083 0 0 0 0 0 0 0 16-3584 chrM 14084 0 0 0 0 0 0 0 16-3584 chrM 14085 0 0 0 0 0 0 0 16-3584 chrM 14086 0 0 0 0 0 0 0 16-3584 chrM 14087 0 0 0 0 0 0 0 16-3584 chrM 14088 0 0 0 0 0 0 0 16-3584 chrM 14089 0 0 0 0 0 0 0 16-3584 chrM 14090 0 0 0 0 0 0 0 16-3584 chrM 14091 0 0 0 0 0 0 0 16-3584 chrM 14092 0 0 0 0 0 0 0 16-3584 chrM 14093 0 0 0 0 0 0 0 16-3584 chrM 14094 0 0 0 0 0 0 0 16-3584 chrM 14095 0 0 0 0 0 0 0 16-3584 chrM 14096 0 0 0 0 0 0 0 16-3584 chrM 14097 0 0 0 0 0 0 0 16-3584 chrM 14098 0 0 0 0 0 0 0 16-3584 chrM 14099 0 0 0 0 0 0 0 16-3584 chrM 14100 0 0 0 0 0 0 0 16-3584 chrM 14101 0 0 0 0 0 0 0 16-3584 chrM 14102 0 0 0 0 0 0 0 16-3584 chrM 14103 0 0 0 0 0 0 0 16-3584 chrM 14104 0 0 0 0 0 0 0 16-3584 chrM 14105 0 0 0 0 0 0 0 16-3584 chrM 14106 0 0 0 0 0 0 0 16-3584 chrM 14107 0 0 0 0 0 0 0 16-3584 chrM 14108 0 0 0 0 0 0 0 16-3584 chrM 14109 0 0 0 0 0 0 0 16-3584 chrM 14110 0 0 0 0 0 0 0 16-3584 chrM 14111 0 0 0 0 0 0 0 16-3584 chrM 14112 0 0 0 0 0 0 0 16-3584 chrM 14113 0 0 0 0 0 0 0 16-3584 chrM 14114 0 0 0 0 0 0 0 16-3584 chrM 14115 0 0 0 0 0 0 0 16-3584 chrM 14116 0 0 0 0 0 0 0 16-3584 chrM 14117 0 0 0 0 0 0 0 16-3584 chrM 14118 0 0 0 0 0 0 0 16-3584 chrM 14119 0 0 0 0 0 0 0 16-3584 chrM 14120 0 0 0 0 0 0 0 16-3584 chrM 14121 0 0 0 0 0 0 0 16-3584 chrM 14122 0 0 0 0 0 0 0 16-3584 chrM 14123 0 0 0 0 0 0 0 16-3584 chrM 14124 0 0 0 0 0 0 0 16-3584 chrM 14125 0 0 0 0 0 0 0 16-3584 chrM 14126 0 0 0 0 0 0 0 16-3584 chrM 14127 0 0 0 0 0 0 0 16-3584 chrM 14128 0 0 0 0 0 0 0 16-3584 chrM 14129 0 0 0 0 0 0 0 16-3584 chrM 14130 0 0 0 0 0 0 0 16-3584 chrM 14131 0 0 0 0 0 0 0 16-3584 chrM 14132 0 0 0 0 0 0 0 16-3584 chrM 14133 0 0 0 0 0 0 0 16-3584 chrM 14134 0 0 0 0 0 0 0 16-3584 chrM 14135 0 0 0 0 0 0 0 16-3584 chrM 14136 0 0 0 0 0 0 0 16-3584 chrM 14137 0 0 0 0 0 0 0 16-3584 chrM 14138 0 0 0 0 0 0 0 16-3584 chrM 14139 0 0 0 0 0 0 0 16-3584 chrM 14140 0 0 0 0 0 0 0 16-3584 chrM 14141 0 0 0 0 0 0 0 16-3584 chrM 14142 0 0 0 0 0 0 0 16-3584 chrM 14143 0 0 0 0 0 0 0 16-3584 chrM 14144 0 0 0 0 0 0 0 16-3584 chrM 14145 0 0 0 0 0 0 0 16-3584 chrM 14146 0 0 0 0 0 0 0 16-3584 chrM 14147 0 0 0 0 0 0 0 16-3584 chrM 14148 0 0 0 0 0 0 0 16-3584 chrM 14149 0 0 0 0 0 0 0 16-3584 chrM 14150 0 0 0 0 0 0 0 16-3584 chrM 14151 0 0 0 0 0 0 0 16-3584 chrM 14152 0 0 0 0 0 0 0 16-3584 chrM 14153 0 0 0 0 0 0 0 16-3584 chrM 14154 0 0 0 0 0 0 0 16-3584 chrM 14155 0 0 0 0 0 0 0 16-3584 chrM 14156 0 0 0 0 0 0 0 16-3584 chrM 14157 0 0 0 0 0 0 0 16-3584 chrM 14158 0 0 0 0 0 0 0 16-3584 chrM 14159 0 0 0 0 0 0 0 16-3584 chrM 14160 0 0 0 0 0 0 0 16-3584 chrM 14161 0 0 0 0 0 0 0 16-3584 chrM 14162 0 0 0 0 0 0 0 16-3584 chrM 14163 0 0 0 0 0 0 0 16-3584 chrM 14164 0 0 0 0 0 0 0 16-3584 chrM 14165 0 0 0 0 0 0 0 16-3584 chrM 14166 0 0 0 0 0 0 0 16-3584 chrM 14167 0 0 0 0 0 0 0 16-3584 chrM 14168 0 0 0 0 0 0 0 16-3584 chrM 14169 0 0 0 0 0 0 0 16-3584 chrM 14170 0 0 0 0 0 0 0 16-3584 chrM 14171 0 0 0 0 0 0 0 16-3584 chrM 14172 0 0 0 0 0 0 0 16-3584 chrM 14173 0 0 0 0 0 0 0 16-3584 chrM 14174 0 0 0 0 0 0 0 16-3584 chrM 14175 0 0 0 0 0 0 0 16-3584 chrM 14176 0 0 0 0 0 0 0 16-3584 chrM 14177 0 0 0 0 0 0 0 16-3584 chrM 14178 0 0 0 0 0 0 0 16-3584 chrM 14179 0 0 0 0 0 0 0 16-3584 chrM 14180 0 0 0 0 0 0 0 16-3584 chrM 14181 0 0 0 0 0 0 0 16-3584 chrM 14182 0 0 0 0 0 0 0 16-3584 chrM 14183 0 0 0 0 0 0 0 16-3584 chrM 14184 0 0 0 0 0 0 0 16-3584 chrM 14185 0 0 0 0 0 0 0 16-3584 chrM 14186 0 0 0 0 0 0 0 16-3584 chrM 14187 0 0 0 0 0 0 0 16-3584 chrM 14188 0 0 0 0 0 0 0 16-3584 chrM 14189 0 0 0 0 0 0 0 16-3584 chrM 14190 0 0 0 0 0 0 0 16-3584 chrM 14191 0 0 0 0 0 0 0 16-3584 chrM 14192 0 0 0 0 0 0 0 16-3584 chrM 14193 0 0 0 0 0 0 0 16-3584 chrM 14194 0 0 0 0 0 0 0 16-3584 chrM 14195 0 0 0 0 0 0 0 16-3584 chrM 14196 0 0 0 0 0 0 0 16-3584 chrM 14197 0 0 0 0 0 0 0 16-3584 chrM 14198 0 0 0 0 0 0 0 16-3584 chrM 14199 0 0 0 0 0 0 0 16-3584 chrM 14200 0 0 0 0 0 0 0 16-3584 chrM 14201 0 0 0 0 0 0 0 16-3584 chrM 14202 0 0 0 0 0 0 0 16-3584 chrM 14203 0 0 0 0 0 0 0 16-3584 chrM 14204 0 0 0 0 0 0 0 16-3584 chrM 14205 0 0 0 0 0 0 0 16-3584 chrM 14206 0 0 0 0 0 0 0 16-3584 chrM 14207 0 0 0 0 0 0 0 16-3584 chrM 14208 0 0 0 0 0 0 0 16-3584 chrM 14209 0 0 0 0 0 0 0 16-3584 chrM 14210 0 0 0 0 0 0 0 16-3584 chrM 14211 0 0 0 0 0 0 0 16-3584 chrM 14212 0 0 0 0 0 0 0 16-3584 chrM 14213 0 0 0 0 0 0 0 16-3584 chrM 14214 0 0 0 0 0 0 0 16-3584 chrM 14215 0 0 0 0 0 0 0 16-3584 chrM 14216 0 0 0 0 0 0 0 16-3584 chrM 14217 0 0 0 0 0 0 0 16-3584 chrM 14218 0 0 0 0 0 0 0 16-3584 chrM 14219 0 0 0 0 0 0 0 16-3584 chrM 14220 0 0 0 0 0 0 0 16-3584 chrM 14221 0 0 0 0 0 0 0 16-3584 chrM 14222 0 0 0 0 0 0 0 16-3584 chrM 14223 0 0 0 0 0 0 0 16-3584 chrM 14224 0 0 0 0 0 0 0 16-3584 chrM 14225 0 0 0 0 0 0 0 16-3584 chrM 14226 0 0 0 0 0 0 0 16-3584 chrM 14227 0 0 0 0 0 0 0 16-3584 chrM 14228 0 0 0 0 0 0 0 16-3584 chrM 14229 0 0 0 0 0 0 0 16-3584 chrM 14230 0 0 0 0 0 0 0 16-3584 chrM 14231 0 0 0 0 0 0 0 16-3584 chrM 14232 0 0 0 0 0 0 0 16-3584 chrM 14233 0 0 0 0 0 0 0 16-3584 chrM 14234 0 0 0 0 0 0 0 16-3584 chrM 14235 0 0 0 0 0 0 0 16-3584 chrM 14236 0 0 0 0 0 0 0 16-3584 chrM 14237 0 0 0 0 0 0 0 16-3584 chrM 14238 0 0 0 0 0 0 0 16-3584 chrM 14239 0 0 0 0 0 0 0 16-3584 chrM 14240 0 0 0 0 0 0 0 16-3584 chrM 14241 0 0 0 0 0 0 0 16-3584 chrM 14242 0 0 0 0 0 0 0 16-3584 chrM 14243 0 0 0 0 0 0 0 16-3584 chrM 14244 0 0 0 0 0 0 0 16-3584 chrM 14245 0 0 0 0 0 0 0 16-3584 chrM 14246 0 0 0 0 0 0 0 16-3584 chrM 14247 0 0 0 0 0 0 0 16-3584 chrM 14248 0 0 0 0 0 0 0 16-3584 chrM 14249 0 0 0 0 0 0 0 16-3584 chrM 14250 0 0 0 0 0 0 0 16-3584 chrM 14251 0 0 0 0 0 0 0 16-3584 chrM 14252 0 0 0 0 0 0 0 16-3584 chrM 14253 0 0 0 0 0 0 0 16-3584 chrM 14254 0 0 0 0 0 0 0 16-3584 chrM 14255 0 0 0 0 0 0 0 16-3584 chrM 14256 0 0 0 0 0 0 0 16-3584 chrM 14257 0 0 0 0 0 0 0 16-3584 chrM 14258 0 0 0 0 0 0 0 16-3584 chrM 14259 0 0 0 0 0 0 0 16-3584 chrM 14260 0 0 0 0 0 0 0 16-3584 chrM 14261 0 0 0 0 0 0 0 16-3584 chrM 14262 0 0 0 0 0 0 0 16-3584 chrM 14263 0 0 0 0 0 0 0 16-3584 chrM 14264 0 0 0 0 0 0 0 16-3584 chrM 14265 0 0 0 0 0 0 0 16-3584 chrM 14266 0 0 0 0 0 0 0 16-3584 chrM 14267 0 0 0 0 0 0 0 16-3584 chrM 14268 0 0 0 0 0 0 0 16-3584 chrM 14269 0 0 0 0 0 0 0 16-3584 chrM 14270 0 0 0 0 0 0 0 16-3584 chrM 14271 0 0 0 0 0 0 0 16-3584 chrM 14272 0 0 0 0 0 0 0 16-3584 chrM 14273 0 0 0 0 0 0 0 16-3584 chrM 14274 0 0 0 0 0 0 0 16-3584 chrM 14275 0 0 0 0 0 0 0 16-3584 chrM 14276 0 0 0 0 0 0 0 16-3584 chrM 14277 0 0 0 0 0 0 0 16-3584 chrM 14278 0 0 0 0 0 0 0 16-3584 chrM 14279 0 0 0 0 0 0 0 16-3584 chrM 14280 0 0 0 0 0 0 0 16-3584 chrM 14281 0 0 0 0 0 0 0 16-3584 chrM 14282 0 0 0 0 0 0 0 16-3584 chrM 14283 0 0 0 0 0 0 0 16-3584 chrM 14284 0 0 0 0 0 0 0 16-3584 chrM 14285 0 0 0 0 0 0 0 16-3584 chrM 14286 0 0 0 0 0 0 0 16-3584 chrM 14287 0 0 0 0 0 0 0 16-3584 chrM 14288 0 0 0 0 0 0 0 16-3584 chrM 14289 0 0 0 0 0 0 0 16-3584 chrM 14290 0 0 0 0 0 0 0 16-3584 chrM 14291 0 0 0 0 0 0 0 16-3584 chrM 14292 0 0 0 0 0 0 0 16-3584 chrM 14293 0 0 0 0 0 0 0 16-3584 chrM 14294 0 0 0 0 0 0 0 16-3584 chrM 14295 0 0 0 0 0 0 0 16-3584 chrM 14296 0 0 0 0 0 0 0 16-3584 chrM 14297 0 0 0 0 0 0 0 16-3584 chrM 14298 0 0 0 0 0 0 0 16-3584 chrM 14299 0 0 0 0 0 0 0 16-3584 chrM 14300 0 0 0 0 0 0 0 16-3584 chrM 14301 0 0 0 0 0 0 0 16-3584 chrM 14302 0 0 0 0 0 0 0 16-3584 chrM 14303 0 0 0 0 0 0 0 16-3584 chrM 14304 0 0 0 0 0 0 0 16-3584 chrM 14305 0 0 0 0 0 0 0 16-3584 chrM 14306 0 0 0 0 0 0 0 16-3584 chrM 14307 0 0 0 0 0 0 0 16-3584 chrM 14308 0 0 0 0 0 0 0 16-3584 chrM 14309 0 0 0 0 0 0 0 16-3584 chrM 14310 0 0 0 0 0 0 0 16-3584 chrM 14311 0 0 0 0 0 0 0 16-3584 chrM 14312 0 0 0 0 0 0 0 16-3584 chrM 14313 0 0 0 0 0 0 0 16-3584 chrM 14314 0 0 0 0 0 0 0 16-3584 chrM 14315 0 0 0 0 0 0 0 16-3584 chrM 14316 0 0 0 0 0 0 0 16-3584 chrM 14317 0 0 0 0 0 0 0 16-3584 chrM 14318 0 0 0 0 0 0 0 16-3584 chrM 14319 0 0 0 0 0 0 0 16-3584 chrM 14320 0 0 0 0 0 0 0 16-3584 chrM 14321 0 0 0 0 0 0 0 16-3584 chrM 14322 0 0 0 0 0 0 0 16-3584 chrM 14323 0 0 0 0 0 0 0 16-3584 chrM 14324 0 0 0 0 0 0 0 16-3584 chrM 14325 0 0 0 0 0 0 0 16-3584 chrM 14326 0 0 0 0 0 0 0 16-3584 chrM 14327 0 0 0 0 0 0 0 16-3584 chrM 14328 0 0 0 0 0 0 0 16-3584 chrM 14329 0 0 0 0 0 0 0 16-3584 chrM 14330 0 0 0 0 0 0 0 16-3584 chrM 14331 0 0 0 0 0 0 0 16-3584 chrM 14332 0 0 0 0 0 0 0 16-3584 chrM 14333 0 0 0 0 0 0 0 16-3584 chrM 14334 0 0 0 0 0 0 0 16-3584 chrM 14335 0 0 0 0 0 0 0 16-3584 chrM 14336 0 0 0 0 0 0 0 16-3584 chrM 14337 0 0 0 0 0 0 0 16-3584 chrM 14338 0 0 0 0 0 0 0 16-3584 chrM 14339 0 0 0 0 0 0 0 16-3584 chrM 14340 0 0 0 0 0 0 0 16-3584 chrM 14341 0 0 0 0 0 0 0 16-3584 chrM 14342 0 0 0 0 0 0 0 16-3584 chrM 14343 0 0 0 0 0 0 0 16-3584 chrM 14344 0 0 0 0 0 0 0 16-3584 chrM 14345 0 0 0 0 0 0 0 16-3584 chrM 14346 0 0 0 0 0 0 0 16-3584 chrM 14347 0 0 0 0 0 0 0 16-3584 chrM 14348 0 0 0 0 0 0 0 16-3584 chrM 14349 0 0 0 0 0 0 0 16-3584 chrM 14350 0 0 0 0 0 0 0 16-3584 chrM 14351 0 0 0 0 0 0 0 16-3584 chrM 14352 0 0 0 0 0 0 0 16-3584 chrM 14353 0 0 0 0 0 0 0 16-3584 chrM 14354 0 0 0 0 0 0 0 16-3584 chrM 14355 0 0 0 0 0 0 0 16-3584 chrM 14356 0 0 0 0 0 0 0 16-3584 chrM 14357 0 0 0 0 0 0 0 16-3584 chrM 14358 0 0 0 0 0 0 0 16-3584 chrM 14359 0 0 0 0 0 0 0 16-3584 chrM 14360 0 0 0 0 0 0 0 16-3584 chrM 14361 0 0 0 0 0 0 0 16-3584 chrM 14362 0 0 0 0 0 0 0 16-3584 chrM 14363 0 0 0 0 0 0 0 16-3584 chrM 14364 0 0 0 0 0 0 0 16-3584 chrM 14365 0 0 0 0 0 0 0 16-3584 chrM 14366 0 0 0 0 0 0 0 16-3584 chrM 14367 0 0 0 0 0 0 0 16-3584 chrM 14368 0 0 0 0 0 0 0 16-3584 chrM 14369 0 0 0 0 0 0 0 16-3584 chrM 14370 0 0 0 0 0 0 0 16-3584 chrM 14371 0 0 0 0 0 0 0 16-3584 chrM 14372 0 0 0 0 0 0 0 16-3584 chrM 14373 0 0 0 0 0 0 0 16-3584 chrM 14374 0 0 0 0 0 0 0 16-3584 chrM 14375 0 0 0 0 0 0 0 16-3584 chrM 14376 0 0 0 0 0 0 0 16-3584 chrM 14377 0 0 0 0 0 0 0 16-3584 chrM 14378 0 0 0 0 0 0 0 16-3584 chrM 14379 0 0 0 0 0 0 0 16-3584 chrM 14380 0 0 0 0 0 0 0 16-3584 chrM 14381 0 0 0 0 0 0 0 16-3584 chrM 14382 0 0 0 0 0 0 0 16-3584 chrM 14383 0 0 0 0 0 0 0 16-3584 chrM 14384 0 0 0 0 0 0 0 16-3584 chrM 14385 0 0 0 0 0 0 0 16-3584 chrM 14386 0 0 0 0 0 0 0 16-3584 chrM 14387 0 0 0 0 0 0 0 16-3584 chrM 14388 0 0 0 0 0 0 0 16-3584 chrM 14389 0 0 0 0 0 0 0 16-3584 chrM 14390 0 0 0 0 0 0 0 16-3584 chrM 14391 0 0 0 0 0 0 0 16-3584 chrM 14392 0 0 0 0 0 0 0 16-3584 chrM 14393 0 0 0 0 0 0 0 16-3584 chrM 14394 0 0 0 0 0 0 0 16-3584 chrM 14395 0 0 0 0 0 0 0 16-3584 chrM 14396 0 0 0 0 0 0 0 16-3584 chrM 14397 0 0 0 0 0 0 0 16-3584 chrM 14398 0 0 0 0 0 0 0 16-3584 chrM 14399 0 0 0 0 0 0 0 16-3584 chrM 14400 0 0 0 0 0 0 0 16-3584 chrM 14401 0 0 0 0 0 0 0 16-3584 chrM 14402 0 0 0 0 0 0 0 16-3584 chrM 14403 0 0 0 0 0 0 0 16-3584 chrM 14404 0 0 0 0 0 0 0 16-3584 chrM 14405 0 0 0 0 0 0 0 16-3584 chrM 14406 0 0 0 0 0 0 0 16-3584 chrM 14407 0 0 0 0 0 0 0 16-3584 chrM 14408 0 0 0 0 0 0 0 16-3584 chrM 14409 0 0 0 0 0 0 0 16-3584 chrM 14410 0 0 0 0 0 0 0 16-3584 chrM 14411 0 0 0 0 0 0 0 16-3584 chrM 14412 0 0 0 0 0 0 0 16-3584 chrM 14413 0 0 0 0 0 0 0 16-3584 chrM 14414 0 0 0 0 0 0 0 16-3584 chrM 14415 0 0 0 0 0 0 0 16-3584 chrM 14416 0 0 0 0 0 0 0 16-3584 chrM 14417 0 0 0 0 0 0 0 16-3584 chrM 14418 0 0 0 0 0 0 0 16-3584 chrM 14419 0 0 0 0 0 0 0 16-3584 chrM 14420 0 0 0 0 0 0 0 16-3584 chrM 14421 0 0 0 0 0 0 0 16-3584 chrM 14422 0 0 0 0 0 0 0 16-3584 chrM 14423 0 0 0 0 0 0 0 16-3584 chrM 14424 0 0 0 0 0 0 0 16-3584 chrM 14425 0 0 0 0 0 0 0 16-3584 chrM 14426 0 0 0 0 0 0 0 16-3584 chrM 14427 0 0 0 0 0 0 0 16-3584 chrM 14428 0 0 0 0 0 0 0 16-3584 chrM 14429 0 0 0 0 0 0 0 16-3584 chrM 14430 0 0 0 0 0 0 0 16-3584 chrM 14431 0 0 0 0 0 0 0 16-3584 chrM 14432 0 0 0 0 0 0 0 16-3584 chrM 14433 0 0 0 0 0 0 0 16-3584 chrM 14434 0 0 0 0 0 0 0 16-3584 chrM 14435 0 0 0 0 0 0 0 16-3584 chrM 14436 0 0 0 0 0 0 0 16-3584 chrM 14437 0 0 0 0 0 0 0 16-3584 chrM 14438 0 0 0 0 0 0 0 16-3584 chrM 14439 0 0 0 0 0 0 0 16-3584 chrM 14440 0 0 0 0 0 0 0 16-3584 chrM 14441 0 0 0 0 0 0 0 16-3584 chrM 14442 0 0 0 0 0 0 0 16-3584 chrM 14443 0 0 0 0 0 0 0 16-3584 chrM 14444 0 0 0 0 0 0 0 16-3584 chrM 14445 0 0 0 0 0 0 0 16-3584 chrM 14446 0 0 0 0 0 0 0 16-3584 chrM 14447 0 0 0 0 0 0 0 16-3584 chrM 14448 0 0 0 0 0 0 0 16-3584 chrM 14449 0 0 0 0 0 0 0 16-3584 chrM 14450 0 0 0 0 0 0 0 16-3584 chrM 14451 0 0 0 0 0 0 0 16-3584 chrM 14452 0 0 0 0 0 0 0 16-3584 chrM 14453 0 0 0 0 0 0 0 16-3584 chrM 14454 0 0 0 0 0 0 0 16-3584 chrM 14455 0 0 0 0 0 0 0 16-3584 chrM 14456 0 0 0 0 0 0 0 16-3584 chrM 14457 0 0 0 0 0 0 0 16-3584 chrM 14458 0 0 0 0 0 0 0 16-3584 chrM 14459 0 0 0 0 0 0 0 16-3584 chrM 14460 0 0 0 0 0 0 0 16-3584 chrM 14461 0 0 0 0 0 0 0 16-3584 chrM 14462 0 0 0 0 0 0 0 16-3584 chrM 14463 0 0 0 0 0 0 0 16-3584 chrM 14464 0 0 0 0 0 0 0 16-3584 chrM 14465 0 0 0 0 0 0 0 16-3584 chrM 14466 0 0 0 0 0 0 0 16-3584 chrM 14467 0 0 0 0 0 0 0 16-3584 chrM 14468 0 0 0 0 0 0 0 16-3584 chrM 14469 0 0 0 0 0 0 0 16-3584 chrM 14470 0 0 0 0 0 0 0 16-3584 chrM 14471 0 0 0 0 0 0 0 16-3584 chrM 14472 0 0 0 0 0 0 0 16-3584 chrM 14473 0 0 0 0 0 0 0 16-3584 chrM 14474 0 0 0 0 0 0 0 16-3584 chrM 14475 0 0 0 0 0 0 0 16-3584 chrM 14476 0 0 0 0 0 0 0 16-3584 chrM 14477 0 0 0 0 0 0 0 16-3584 chrM 14478 0 0 0 0 0 0 0 16-3584 chrM 14479 0 0 0 0 0 0 0 16-3584 chrM 14480 0 0 0 0 0 0 0 16-3584 chrM 14481 0 0 0 0 0 0 0 16-3584 chrM 14482 0 0 0 0 0 0 0 16-3584 chrM 14483 0 0 0 0 0 0 0 16-3584 chrM 14484 0 0 0 0 0 0 0 16-3584 chrM 14485 0 0 0 0 0 0 0 16-3584 chrM 14486 0 0 0 0 0 0 0 16-3584 chrM 14487 0 0 0 0 0 0 0 16-3584 chrM 14488 0 0 0 0 0 0 0 16-3584 chrM 14489 0 0 0 0 0 0 0 16-3584 chrM 14490 0 0 0 0 0 0 0 16-3584 chrM 14491 0 0 0 0 0 0 0 16-3584 chrM 14492 0 0 0 0 0 0 0 16-3584 chrM 14493 0 0 0 0 0 0 0 16-3584 chrM 14494 0 0 0 0 0 0 0 16-3584 chrM 14495 0 0 0 0 0 0 0 16-3584 chrM 14496 0 0 0 0 0 0 0 16-3584 chrM 14497 0 0 0 0 0 0 0 16-3584 chrM 14498 0 0 0 0 0 0 0 16-3584 chrM 14499 0 0 0 0 0 0 0 16-3584 chrM 14500 0 0 0 0 0 0 0 16-3584 chrM 14501 0 0 0 0 0 0 0 16-3584 chrM 14502 0 0 0 0 0 0 0 16-3584 chrM 14503 0 0 0 0 0 0 0 16-3584 chrM 14504 0 0 0 0 0 0 0 16-3584 chrM 14505 0 0 0 0 0 0 0 16-3584 chrM 14506 0 0 0 0 0 0 0 16-3584 chrM 14507 0 0 0 0 0 0 0 16-3584 chrM 14508 0 0 0 0 0 0 0 16-3584 chrM 14509 0 0 0 0 0 0 0 16-3584 chrM 14510 0 0 0 0 0 0 0 16-3584 chrM 14511 0 0 0 0 0 0 0 16-3584 chrM 14512 0 0 0 0 0 0 0 16-3584 chrM 14513 0 0 0 0 0 0 0 16-3584 chrM 14514 0 0 0 0 0 0 0 16-3584 chrM 14515 0 0 0 0 0 0 0 16-3584 chrM 14516 0 0 0 0 0 0 0 16-3584 chrM 14517 0 0 0 0 0 0 0 16-3584 chrM 14518 0 0 0 0 0 0 0 16-3584 chrM 14519 0 0 0 0 0 0 0 16-3584 chrM 14520 0 0 0 0 0 0 0 16-3584 chrM 14521 0 0 0 0 0 0 0 16-3584 chrM 14522 0 0 0 0 0 0 0 16-3584 chrM 14523 0 0 0 0 0 0 0 16-3584 chrM 14524 0 0 0 0 0 0 0 16-3584 chrM 14525 0 0 0 0 0 0 0 16-3584 chrM 14526 0 0 0 0 0 0 0 16-3584 chrM 14527 0 0 0 0 0 0 0 16-3584 chrM 14528 0 0 0 0 0 0 0 16-3584 chrM 14529 0 0 0 0 0 0 0 16-3584 chrM 14530 0 0 0 0 0 0 0 16-3584 chrM 14531 0 0 0 0 0 0 0 16-3584 chrM 14532 0 0 0 0 0 0 0 16-3584 chrM 14533 0 0 0 0 0 0 0 16-3584 chrM 14534 0 0 0 0 0 0 0 16-3584 chrM 14535 0 0 0 0 0 0 0 16-3584 chrM 14536 0 0 0 0 0 0 0 16-3584 chrM 14537 0 0 0 0 0 0 0 16-3584 chrM 14538 0 0 0 0 0 0 0 16-3584 chrM 14539 0 0 0 0 0 0 0 16-3584 chrM 14540 0 0 0 0 0 0 0 16-3584 chrM 14541 0 0 0 0 0 0 0 16-3584 chrM 14542 0 0 0 0 0 0 0 16-3584 chrM 14543 0 0 0 0 0 0 0 16-3584 chrM 14544 0 0 0 0 0 0 0 16-3584 chrM 14545 0 0 0 0 0 0 0 16-3584 chrM 14546 0 0 0 0 0 0 0 16-3584 chrM 14547 0 0 0 0 0 0 0 16-3584 chrM 14548 0 0 0 0 0 0 0 16-3584 chrM 14549 0 0 0 0 0 0 0 16-3584 chrM 14550 0 0 0 0 0 0 0 16-3584 chrM 14551 0 0 0 0 0 0 0 16-3584 chrM 14552 0 0 0 0 0 0 0 16-3584 chrM 14553 0 0 0 0 0 0 0 16-3584 chrM 14554 0 0 0 0 0 0 0 16-3584 chrM 14555 0 0 0 0 0 0 0 16-3584 chrM 14556 0 0 0 0 0 0 0 16-3584 chrM 14557 0 0 0 0 0 0 0 16-3584 chrM 14558 0 0 0 0 0 0 0 16-3584 chrM 14559 0 0 0 0 0 0 0 16-3584 chrM 14560 0 0 0 0 0 0 0 16-3584 chrM 14561 0 0 0 0 0 0 0 16-3584 chrM 14562 0 0 0 0 0 0 0 16-3584 chrM 14563 0 0 0 0 0 0 0 16-3584 chrM 14564 0 0 0 0 0 0 0 16-3584 chrM 14565 0 0 0 0 0 0 0 16-3584 chrM 14566 0 0 0 0 0 0 0 16-3584 chrM 14567 0 0 0 0 0 0 0 16-3584 chrM 14568 0 0 0 0 0 0 0 16-3584 chrM 14569 0 0 0 0 0 0 0 16-3584 chrM 14570 0 0 0 0 0 0 0 16-3584 chrM 14571 0 0 0 0 0 0 0 16-3584 chrM 14572 0 0 0 0 0 0 0 16-3584 chrM 14573 0 0 0 0 0 0 0 16-3584 chrM 14574 0 0 0 0 0 0 0 16-3584 chrM 14575 0 0 0 0 0 0 0 16-3584 chrM 14576 0 0 0 0 0 0 0 16-3584 chrM 14577 0 0 0 0 0 0 0 16-3584 chrM 14578 0 0 0 0 0 0 0 16-3584 chrM 14579 0 0 0 0 0 0 0 16-3584 chrM 14580 0 0 0 0 0 0 0 16-3584 chrM 14581 0 0 0 0 0 0 0 16-3584 chrM 14582 0 0 0 0 0 0 0 16-3584 chrM 14583 0 0 0 0 0 0 0 16-3584 chrM 14584 0 0 0 0 0 0 0 16-3584 chrM 14585 0 0 0 0 0 0 0 16-3584 chrM 14586 0 0 0 0 0 0 0 16-3584 chrM 14587 0 0 0 0 0 0 0 16-3584 chrM 14588 0 0 0 0 0 0 0 16-3584 chrM 14589 0 0 0 0 0 0 0 16-3584 chrM 14590 0 0 0 0 0 0 0 16-3584 chrM 14591 0 0 0 0 0 0 0 16-3584 chrM 14592 0 0 0 0 0 0 0 16-3584 chrM 14593 0 0 0 0 0 0 0 16-3584 chrM 14594 0 0 0 0 0 0 0 16-3584 chrM 14595 0 0 0 0 0 0 0 16-3584 chrM 14596 0 0 0 0 0 0 0 16-3584 chrM 14597 0 0 0 0 0 0 0 16-3584 chrM 14598 0 0 0 0 0 0 0 16-3584 chrM 14599 0 0 0 0 0 0 0 16-3584 chrM 14600 0 0 0 0 0 0 0 16-3584 chrM 14601 0 0 0 0 0 0 0 16-3584 chrM 14602 0 0 0 0 0 0 0 16-3584 chrM 14603 0 0 0 0 0 0 0 16-3584 chrM 14604 0 0 0 0 0 0 0 16-3584 chrM 14605 0 0 0 0 0 0 0 16-3584 chrM 14606 0 0 0 0 0 0 0 16-3584 chrM 14607 0 0 0 0 0 0 0 16-3584 chrM 14608 0 0 0 0 0 0 0 16-3584 chrM 14609 0 0 0 0 0 0 0 16-3584 chrM 14610 0 0 0 0 0 0 0 16-3584 chrM 14611 0 0 0 0 0 0 0 16-3584 chrM 14612 0 0 0 0 0 0 0 16-3584 chrM 14613 0 0 0 0 0 0 0 16-3584 chrM 14614 0 0 0 0 0 0 0 16-3584 chrM 14615 0 0 0 0 0 0 0 16-3584 chrM 14616 0 0 0 0 0 0 0 16-3584 chrM 14617 0 0 0 0 0 0 0 16-3584 chrM 14618 0 0 0 0 0 0 0 16-3584 chrM 14619 0 0 0 0 0 0 0 16-3584 chrM 14620 0 0 0 0 0 0 0 16-3584 chrM 14621 0 0 0 0 0 0 0 16-3584 chrM 14622 0 0 0 0 0 0 0 16-3584 chrM 14623 0 0 0 0 0 0 0 16-3584 chrM 14624 0 0 0 0 0 0 0 16-3584 chrM 14625 0 0 0 0 0 0 0 16-3584 chrM 14626 0 0 0 0 0 0 0 16-3584 chrM 14627 0 0 0 0 0 0 0 16-3584 chrM 14628 0 0 0 0 0 0 0 16-3584 chrM 14629 0 0 0 0 0 0 0 16-3584 chrM 14630 0 0 0 0 0 0 0 16-3584 chrM 14631 0 0 0 0 0 0 0 16-3584 chrM 14632 0 0 0 0 0 0 0 16-3584 chrM 14633 0 0 0 0 0 0 0 16-3584 chrM 14634 0 0 0 0 0 0 0 16-3584 chrM 14635 0 0 0 0 0 0 0 16-3584 chrM 14636 0 0 0 0 0 0 0 16-3584 chrM 14637 0 0 0 0 0 0 0 16-3584 chrM 14638 0 0 0 0 0 0 0 16-3584 chrM 14639 0 0 0 0 0 0 0 16-3584 chrM 14640 0 0 0 0 0 0 0 16-3584 chrM 14641 0 0 0 0 0 0 0 16-3584 chrM 14642 0 0 0 0 0 0 0 16-3584 chrM 14643 0 0 0 0 0 0 0 16-3584 chrM 14644 0 0 0 0 0 0 0 16-3584 chrM 14645 0 0 0 0 0 0 0 16-3584 chrM 14646 0 0 0 0 0 0 0 16-3584 chrM 14647 0 0 0 0 0 0 0 16-3584 chrM 14648 0 0 0 0 0 0 0 16-3584 chrM 14649 0 0 0 0 0 0 0 16-3584 chrM 14650 0 0 0 0 0 0 0 16-3584 chrM 14651 0 0 0 0 0 0 0 16-3584 chrM 14652 0 0 0 0 0 0 0 16-3584 chrM 14653 0 0 0 0 0 0 0 16-3584 chrM 14654 0 0 0 0 0 0 0 16-3584 chrM 14655 0 0 0 0 0 0 0 16-3584 chrM 14656 0 0 0 0 0 0 0 16-3584 chrM 14657 0 0 0 0 0 0 0 16-3584 chrM 14658 0 0 0 0 0 0 0 16-3584 chrM 14659 0 0 0 0 0 0 0 16-3584 chrM 14660 0 0 0 0 0 0 0 16-3584 chrM 14661 0 0 0 0 0 0 0 16-3584 chrM 14662 0 0 0 0 0 0 0 16-3584 chrM 14663 0 0 0 0 0 0 0 16-3584 chrM 14664 0 0 0 0 0 0 0 16-3584 chrM 14665 0 0 0 0 0 0 0 16-3584 chrM 14666 0 0 0 0 0 0 0 16-3584 chrM 14667 0 0 0 0 0 0 0 16-3584 chrM 14668 0 0 0 0 0 0 0 16-3584 chrM 14669 0 0 0 0 0 0 0 16-3584 chrM 14670 0 0 0 0 0 0 0 16-3584 chrM 14671 0 0 0 0 0 0 0 16-3584 chrM 14672 0 0 0 0 0 0 0 16-3584 chrM 14673 0 0 0 0 0 0 0 16-3584 chrM 14674 0 0 0 0 0 0 0 16-3584 chrM 14675 0 0 0 0 0 0 0 16-3584 chrM 14676 0 0 0 0 0 0 0 16-3584 chrM 14677 0 0 0 0 0 0 0 16-3584 chrM 14678 0 0 0 0 0 0 0 16-3584 chrM 14679 0 0 0 0 0 0 0 16-3584 chrM 14680 0 0 0 0 0 0 0 16-3584 chrM 14681 0 0 0 0 0 0 0 16-3584 chrM 14682 0 0 0 0 0 0 0 16-3584 chrM 14683 0 0 0 0 0 0 0 16-3584 chrM 14684 0 0 0 0 0 0 0 16-3584 chrM 14685 0 0 0 0 0 0 0 16-3584 chrM 14686 0 0 0 0 0 0 0 16-3584 chrM 14687 0 0 0 0 0 0 0 16-3584 chrM 14688 0 0 0 0 0 0 0 16-3584 chrM 14689 0 0 0 0 0 0 0 16-3584 chrM 14690 0 0 0 0 0 0 0 16-3584 chrM 14691 0 0 0 0 0 0 0 16-3584 chrM 14692 0 0 0 0 0 0 0 16-3584 chrM 14693 0 0 0 0 0 0 0 16-3584 chrM 14694 0 0 0 0 0 0 0 16-3584 chrM 14695 0 0 0 0 0 0 0 16-3584 chrM 14696 0 0 0 0 0 0 0 16-3584 chrM 14697 0 0 0 0 0 0 0 16-3584 chrM 14698 0 0 0 0 0 0 0 16-3584 chrM 14699 0 0 0 0 0 0 0 16-3584 chrM 14700 0 0 0 0 0 0 0 16-3584 chrM 14701 0 0 0 0 0 0 0 16-3584 chrM 14702 0 0 0 0 0 0 0 16-3584 chrM 14703 0 0 0 0 0 0 0 16-3584 chrM 14704 0 0 0 0 0 0 0 16-3584 chrM 14705 0 0 0 0 0 0 0 16-3584 chrM 14706 0 0 0 0 0 0 0 16-3584 chrM 14707 0 0 0 0 0 0 0 16-3584 chrM 14708 0 0 0 0 0 0 0 16-3584 chrM 14709 0 0 0 0 0 0 0 16-3584 chrM 14710 0 0 0 0 0 0 0 16-3584 chrM 14711 0 0 0 0 0 0 0 16-3584 chrM 14712 0 0 0 0 0 0 0 16-3584 chrM 14713 0 0 0 0 0 0 0 16-3584 chrM 14714 0 0 0 0 0 0 0 16-3584 chrM 14715 0 0 0 0 0 0 0 16-3584 chrM 14716 0 0 0 0 0 0 0 16-3584 chrM 14717 0 0 0 0 0 0 0 16-3584 chrM 14718 0 0 0 0 0 0 0 16-3584 chrM 14719 0 0 0 0 0 0 0 16-3584 chrM 14720 0 0 0 0 0 0 0 16-3584 chrM 14721 0 0 0 0 0 0 0 16-3584 chrM 14722 0 0 0 0 0 0 0 16-3584 chrM 14723 0 0 0 0 0 0 0 16-3584 chrM 14724 0 0 0 0 0 0 0 16-3584 chrM 14725 0 0 0 0 0 0 0 16-3584 chrM 14726 0 0 0 0 0 0 0 16-3584 chrM 14727 0 0 0 0 0 0 0 16-3584 chrM 14728 0 0 0 0 0 0 0 16-3584 chrM 14729 0 0 0 0 0 0 0 16-3584 chrM 14730 0 0 0 0 0 0 0 16-3584 chrM 14731 0 0 0 0 0 0 0 16-3584 chrM 14732 0 0 0 0 0 0 0 16-3584 chrM 14733 0 0 0 0 0 0 0 16-3584 chrM 14734 0 0 0 0 0 0 0 16-3584 chrM 14735 0 0 0 0 0 0 0 16-3584 chrM 14736 0 0 0 0 0 0 0 16-3584 chrM 14737 0 0 0 0 0 0 0 16-3584 chrM 14738 0 0 0 0 0 0 0 16-3584 chrM 14739 0 0 0 0 0 0 0 16-3584 chrM 14740 0 0 0 0 0 0 0 16-3584 chrM 14741 0 0 0 0 0 0 0 16-3584 chrM 14742 0 0 0 0 0 0 0 16-3584 chrM 14743 0 0 0 0 0 0 0 16-3584 chrM 14744 0 0 0 0 0 0 0 16-3584 chrM 14745 0 0 0 0 0 0 0 16-3584 chrM 14746 0 0 0 0 0 0 0 16-3584 chrM 14747 0 0 0 0 0 0 0 16-3584 chrM 14748 0 0 0 0 0 0 0 16-3584 chrM 14749 0 0 0 0 0 0 0 16-3584 chrM 14750 0 0 0 0 0 0 0 16-3584 chrM 14751 0 0 0 0 0 0 0 16-3584 chrM 14752 0 0 0 0 0 0 0 16-3584 chrM 14753 0 0 0 0 0 0 0 16-3584 chrM 14754 0 0 0 0 0 0 0 16-3584 chrM 14755 0 0 0 0 0 0 0 16-3584 chrM 14756 0 0 0 0 0 0 0 16-3584 chrM 14757 0 0 0 0 0 0 0 16-3584 chrM 14758 0 0 0 0 0 0 0 16-3584 chrM 14759 0 0 0 0 0 0 0 16-3584 chrM 14760 0 0 0 0 0 0 0 16-3584 chrM 14761 0 0 0 0 0 0 0 16-3584 chrM 14762 0 0 0 0 0 0 0 16-3584 chrM 14763 0 0 0 0 0 0 0 16-3584 chrM 14764 0 0 0 0 0 0 0 16-3584 chrM 14765 0 0 0 0 0 0 0 16-3584 chrM 14766 0 0 0 0 0 0 0 16-3584 chrM 14767 0 0 0 0 0 0 0 16-3584 chrM 14768 0 0 0 0 0 0 0 16-3584 chrM 14769 0 0 0 0 0 0 0 16-3584 chrM 14770 0 0 0 0 0 0 0 16-3584 chrM 14771 0 0 0 0 0 0 0 16-3584 chrM 14772 0 0 0 0 0 0 0 16-3584 chrM 14773 0 0 0 0 0 0 0 16-3584 chrM 14774 0 0 0 0 0 0 0 16-3584 chrM 14775 0 0 0 0 0 0 0 16-3584 chrM 14776 0 0 0 0 0 0 0 16-3584 chrM 14777 0 0 0 0 0 0 0 16-3584 chrM 14778 0 0 0 0 0 0 0 16-3584 chrM 14779 0 0 0 0 0 0 0 16-3584 chrM 14780 0 0 0 0 0 0 0 16-3584 chrM 14781 0 0 0 0 0 0 0 16-3584 chrM 14782 0 0 0 0 0 0 0 16-3584 chrM 14783 0 0 0 0 0 0 0 16-3584 chrM 14784 0 0 0 0 0 0 0 16-3584 chrM 14785 0 0 0 0 0 0 0 16-3584 chrM 14786 0 0 0 0 0 0 0 16-3584 chrM 14787 0 0 0 0 0 0 0 16-3584 chrM 14788 0 0 0 0 0 0 0 16-3584 chrM 14789 0 0 0 0 0 0 0 16-3584 chrM 14790 0 0 0 0 0 0 0 16-3584 chrM 14791 0 0 0 0 0 0 0 16-3584 chrM 14792 0 0 0 0 0 0 0 16-3584 chrM 14793 0 0 0 0 0 0 0 16-3584 chrM 14794 1 0 0 1 0 0 0 16-3584 chrM 14795 1 0 0 1 0 0 0 16-3584 chrM 14796 1 0 0 0 1 0 0 16-3584 chrM 14797 1 1 0 0 0 0 0 16-3584 chrM 14798 1 1 0 0 0 0 0 16-3584 chrM 14799 1 1 0 0 0 0 0 16-3584 chrM 14800 1 0 1 0 0 0 0 16-3584 chrM 14801 1 0 1 0 0 0 0 16-3584 chrM 14802 1 0 0 1 0 0 0 16-3584 chrM 14803 1 0 0 0 1 0 0 16-3584 chrM 14804 1 0 0 0 1 0 0 16-3584 chrM 14805 1 0 1 0 0 0 0 16-3584 chrM 14806 1 0 1 0 0 0 0 16-3584 chrM 14807 1 0 1 0 0 0 0 16-3584 chrM 14808 1 0 0 0 1 0 0 16-3584 chrM 14809 1 0 0 0 1 0 0 16-3584 chrM 14810 1 0 0 1 0 0 0 16-3584 chrM 14811 1 0 0 1 0 0 0 16-3584 chrM 14812 1 0 1 0 0 0 0 16-3584 chrM 14813 1 0 0 0 1 0 0 16-3584 chrM 14814 1 0 1 0 0 0 0 16-3584 chrM 14815 1 0 0 1 0 0 0 16-3584 chrM 14816 1 0 1 0 0 0 0 16-3584 chrM 14817 1 0 0 1 0 0 0 16-3584 chrM 14818 1 1 0 0 0 0 0 16-3584 chrM 14819 1 0 0 1 0 0 0 16-3584 chrM 14820 2 0 1 0 1 0 0 16-3584 chrM 14821 2 0 1 0 1 0 0 16-3584 chrM 14822 2 0 1 0 1 0 0 16-3584 chrM 14823 2 0 1 1 0 0 0 16-3584 chrM 14824 2 1 1 0 0 0 0 16-3584 chrM 14825 2 0 0 1 1 0 0 16-3584 chrM 14826 2 0 1 1 0 0 0 16-3584 chrM 14827 2 1 0 1 0 0 0 16-3584 chrM 14828 2 0 1 0 1 0 0 16-3584 chrM 14829 2 1 1 0 0 0 0 16-3584 chrM 14830 2 0 0 2 0 0 0 16-3584 chrM 14831 2 0 0 1 1 0 0 16-3584 chrM 14832 2 0 1 1 0 0 0 16-3584 chrM 14833 2 0 2 0 0 0 0 16-3584 chrM 14834 2 1 0 1 0 0 0 16-3584 chrM 14835 2 1 0 1 0 0 0 16-3584 chrM 14836 2 1 1 0 0 0 0 16-3584 chrM 14837 2 0 1 1 0 0 0 16-3584 chrM 14838 2 1 0 1 0 0 0 16-3584 chrM 14839 2 0 1 1 0 0 0 16-3584 chrM 14840 2 0 2 0 0 0 0 16-3584 chrM 14841 2 0 0 2 0 0 0 16-3584 chrM 14842 2 0 1 0 1 0 0 16-3584 chrM 14843 2 0 2 0 0 0 0 16-3584 chrM 14844 2 0 1 0 1 0 0 16-3584 chrM 14845 2 1 1 0 0 0 0 16-3584 chrM 14846 2 1 1 0 0 0 0 16-3584 chrM 14847 2 2 0 0 0 0 0 16-3584 chrM 14848 2 1 1 0 0 0 0 16-3584 chrM 14849 2 0 0 2 0 0 0 16-3584 chrM 14850 2 0 0 2 0 0 0 16-3584 chrM 14851 2 1 1 0 0 0 0 16-3584 chrM 14852 2 0 1 0 1 0 0 16-3584 chrM 14853 2 0 0 0 2 0 0 16-3584 chrM 14854 2 0 2 0 0 0 0 16-3584 chrM 14855 2 2 0 0 0 0 0 16-3584 chrM 14856 2 1 0 1 0 0 0 16-3584 chrM 14857 2 0 1 0 1 0 0 16-3584 chrM 14858 2 0 0 1 1 0 0 16-3584 chrM 14859 2 0 1 1 0 0 0 16-3584 chrM 14860 2 0 1 1 0 0 0 16-3584 chrM 14861 2 0 1 1 0 0 0 16-3584 chrM 14862 2 1 1 0 0 0 0 16-3584 chrM 14863 2 0 0 2 0 0 0 16-3584 chrM 14864 2 2 0 0 0 0 0 16-3584 chrM 14865 2 1 1 0 0 0 0 16-3584 chrM 14866 2 0 1 1 0 0 0 16-3584 chrM 14867 2 0 2 0 0 0 0 16-3584 chrM 14868 2 0 0 0 2 0 0 16-3584 chrM 14869 2 1 1 0 0 0 0 16-3584 chrM 14870 2 1 0 1 0 0 0 16-3584 chrM 14871 2 0 2 0 0 0 0 16-3584 chrM 14872 2 1 0 0 1 0 0 16-3584 chrM 14873 2 1 0 1 0 0 0 16-3584 chrM 14874 2 0 0 1 1 0 0 16-3584 chrM 14875 2 1 0 0 1 0 0 16-3584 chrM 14876 2 0 2 0 0 0 0 16-3584 chrM 14877 2 0 2 0 0 0 0 16-3584 chrM 14878 2 0 0 2 0 0 0 16-3584 chrM 14879 2 0 1 1 0 0 0 16-3584 chrM 14880 2 0 0 2 0 0 0 16-3584 chrM 14881 2 0 0 0 2 0 0 16-3584 chrM 14882 2 0 0 2 0 0 0 16-3584 chrM 14883 2 1 0 0 1 0 0 16-3584 chrM 14884 2 0 1 0 1 0 0 16-3584 chrM 14885 2 0 1 1 0 0 0 16-3584 chrM 14886 2 0 0 1 1 0 0 16-3584 chrM 14887 2 0 1 1 0 0 0 16-3584 chrM 14888 2 0 0 1 1 0 0 16-3584 chrM 14889 2 0 1 0 1 0 0 16-3584 chrM 14890 2 1 0 0 1 0 0 16-3584 chrM 14891 2 0 1 1 0 0 0 16-3584 chrM 14892 2 0 1 0 1 0 0 16-3584 chrM 14893 2 1 0 1 0 0 0 16-3584 chrM 14894 2 1 0 0 1 0 0 16-3584 chrM 14895 2 2 0 0 0 0 0 16-3584 chrM 14896 2 0 2 0 0 0 0 16-3584 chrM 14897 2 0 1 1 0 0 0 16-3584 chrM 14898 2 0 1 0 1 0 0 16-3584 chrM 14899 2 0 0 0 2 0 0 16-3584 chrM 14900 2 1 0 0 1 0 0 16-3584 chrM 14901 2 1 0 0 1 0 0 16-3584 chrM 14902 2 0 0 2 0 0 0 16-3584 chrM 14903 2 1 0 0 1 0 0 16-3584 chrM 14904 2 1 0 0 1 0 0 16-3584 chrM 14905 2 1 1 0 0 0 0 16-3584 chrM 14906 2 0 1 0 1 0 0 16-3584 chrM 14907 2 0 0 2 0 0 0 16-3584 chrM 14908 2 0 0 1 1 0 0 16-3584 chrM 14909 2 0 0 1 1 0 0 16-3584 chrM 14910 2 0 1 0 1 0 0 16-3584 chrM 14911 2 1 0 0 1 0 0 16-3584 chrM 14912 2 1 0 0 1 0 0 16-3584 chrM 14913 2 2 0 0 0 0 0 16-3584 chrM 14914 2 1 0 0 1 0 0 16-3584 chrM 14915 2 1 0 0 1 0 0 16-3584 chrM 14916 2 1 1 0 0 0 0 16-3584 chrM 14917 2 0 1 1 0 0 0 16-3584 chrM 14918 2 1 0 0 1 0 0 16-3584 chrM 14919 2 1 0 1 0 0 0 16-3584 chrM 14920 2 0 1 1 0 0 0 16-3584 chrM 14921 2 1 0 0 1 0 0 16-3584 chrM 14922 2 0 1 0 1 0 0 16-3584 chrM 14923 2 0 1 1 0 0 0 16-3584 chrM 14924 2 0 0 2 0 0 0 16-3584 chrM 14925 2 1 0 0 1 0 0 16-3584 chrM 14926 2 0 1 1 0 0 0 16-3584 chrM 14927 2 0 1 0 1 0 0 16-3584 chrM 14928 2 0 1 0 1 0 0 16-3584 chrM 14929 2 0 1 0 1 0 0 16-3584 chrM 14930 2 1 1 0 0 0 0 16-3584 chrM 14931 2 1 0 0 1 0 0 16-3584 chrM 14932 2 0 1 0 1 0 0 16-3584 chrM 14933 2 0 0 0 2 0 0 16-3584 chrM 14934 2 1 1 0 0 0 0 16-3584 chrM 14935 2 0 1 1 0 0 0 16-3584 chrM 14936 2 1 0 1 0 0 0 16-3584 chrM 14937 2 1 0 1 0 0 0 16-3584 chrM 14938 2 1 0 0 1 0 0 16-3584 chrM 14939 2 1 1 0 0 0 0 16-3584 chrM 14940 1 0 0 0 1 0 0 16-3584 chrM 14941 1 0 1 0 0 0 0 16-3584 chrM 14942 1 0 0 0 1 0 0 16-3584 chrM 14943 1 0 0 1 0 0 0 16-3584 chrM 14944 1 0 0 1 0 0 0 16-3584 chrM 14945 1 0 1 0 0 0 0 16-3584 chrM 14946 1 0 0 1 0 0 0 16-3584 chrM 14947 1 0 0 1 0 0 0 16-3584 chrM 14948 1 1 0 0 0 0 0 16-3584 chrM 14949 1 1 0 0 0 0 0 16-3584 chrM 14950 1 0 1 0 0 0 0 16-3584 chrM 14951 1 1 0 0 0 0 0 16-3584 chrM 14952 1 0 0 0 1 0 0 16-3584 chrM 14953 1 0 0 1 0 0 0 16-3584 chrM 14954 1 0 0 1 0 0 0 16-3584 chrM 14955 1 0 0 1 0 0 0 16-3584 chrM 14956 1 0 1 0 0 0 0 16-3584 chrM 14957 1 0 0 0 1 0 0 16-3584 chrM 14958 1 1 0 0 0 0 0 16-3584 chrM 14959 1 1 0 0 0 0 0 16-3584 chrM 14960 1 0 1 0 0 0 0 16-3584 chrM 14961 1 1 0 0 0 0 0 16-3584 chrM 14962 1 0 0 1 0 0 0 16-3584 chrM 14963 1 1 0 0 0 0 0 16-3584 chrM 14964 1 0 1 0 0 0 0 16-3584 chrM 14965 0 0 0 0 0 0 0 16-3584 chrM 14966 0 0 0 0 0 0 0 16-3584 chrM 14967 0 0 0 0 0 0 0 16-3584 chrM 14968 0 0 0 0 0 0 0 16-3584 chrM 14969 0 0 0 0 0 0 0 16-3584 chrM 14970 0 0 0 0 0 0 0 16-3584 chrM 14971 0 0 0 0 0 0 0 16-3584 chrM 14972 0 0 0 0 0 0 0 16-3584 chrM 14973 0 0 0 0 0 0 0 16-3584 chrM 14974 0 0 0 0 0 0 0 16-3584 chrM 14975 0 0 0 0 0 0 0 16-3584 chrM 14976 0 0 0 0 0 0 0 16-3584 chrM 14977 0 0 0 0 0 0 0 16-3584 chrM 14978 0 0 0 0 0 0 0 16-3584 chrM 14979 0 0 0 0 0 0 0 16-3584 chrM 14980 0 0 0 0 0 0 0 16-3584 chrM 14981 0 0 0 0 0 0 0 16-3584 chrM 14982 0 0 0 0 0 0 0 16-3584 chrM 14983 0 0 0 0 0 0 0 16-3584 chrM 14984 0 0 0 0 0 0 0 16-3584 chrM 14985 0 0 0 0 0 0 0 16-3584 chrM 14986 0 0 0 0 0 0 0 16-3584 chrM 14987 0 0 0 0 0 0 0 16-3584 chrM 14988 0 0 0 0 0 0 0 16-3584 chrM 14989 0 0 0 0 0 0 0 16-3584 chrM 14990 0 0 0 0 0 0 0 16-3584 chrM 14991 0 0 0 0 0 0 0 16-3584 chrM 14992 0 0 0 0 0 0 0 16-3584 chrM 14993 0 0 0 0 0 0 0 16-3584 chrM 14994 0 0 0 0 0 0 0 16-3584 chrM 14995 0 0 0 0 0 0 0 16-3584 chrM 14996 0 0 0 0 0 0 0 16-3584 chrM 14997 0 0 0 0 0 0 0 16-3584 chrM 14998 0 0 0 0 0 0 0 16-3584 chrM 14999 0 0 0 0 0 0 0 16-3584 chrM 15000 0 0 0 0 0 0 0 16-3584 chrM 15001 0 0 0 0 0 0 0 16-3584 chrM 15002 0 0 0 0 0 0 0 16-3584 chrM 15003 0 0 0 0 0 0 0 16-3584 chrM 15004 0 0 0 0 0 0 0 16-3584 chrM 15005 0 0 0 0 0 0 0 16-3584 chrM 15006 0 0 0 0 0 0 0 16-3584 chrM 15007 0 0 0 0 0 0 0 16-3584 chrM 15008 0 0 0 0 0 0 0 16-3584 chrM 15009 0 0 0 0 0 0 0 16-3584 chrM 15010 0 0 0 0 0 0 0 16-3584 chrM 15011 0 0 0 0 0 0 0 16-3584 chrM 15012 0 0 0 0 0 0 0 16-3584 chrM 15013 0 0 0 0 0 0 0 16-3584 chrM 15014 0 0 0 0 0 0 0 16-3584 chrM 15015 0 0 0 0 0 0 0 16-3584 chrM 15016 0 0 0 0 0 0 0 16-3584 chrM 15017 0 0 0 0 0 0 0 16-3584 chrM 15018 0 0 0 0 0 0 0 16-3584 chrM 15019 0 0 0 0 0 0 0 16-3584 chrM 15020 0 0 0 0 0 0 0 16-3584 chrM 15021 0 0 0 0 0 0 0 16-3584 chrM 15022 0 0 0 0 0 0 0 16-3584 chrM 15023 0 0 0 0 0 0 0 16-3584 chrM 15024 0 0 0 0 0 0 0 16-3584 chrM 15025 0 0 0 0 0 0 0 16-3584 chrM 15026 0 0 0 0 0 0 0 16-3584 chrM 15027 0 0 0 0 0 0 0 16-3584 chrM 15028 0 0 0 0 0 0 0 16-3584 chrM 15029 0 0 0 0 0 0 0 16-3584 chrM 15030 0 0 0 0 0 0 0 16-3584 chrM 15031 0 0 0 0 0 0 0 16-3584 chrM 15032 0 0 0 0 0 0 0 16-3584 chrM 15033 0 0 0 0 0 0 0 16-3584 chrM 15034 0 0 0 0 0 0 0 16-3584 chrM 15035 0 0 0 0 0 0 0 16-3584 chrM 15036 0 0 0 0 0 0 0 16-3584 chrM 15037 0 0 0 0 0 0 0 16-3584 chrM 15038 0 0 0 0 0 0 0 16-3584 chrM 15039 0 0 0 0 0 0 0 16-3584 chrM 15040 0 0 0 0 0 0 0 16-3584 chrM 15041 0 0 0 0 0 0 0 16-3584 chrM 15042 0 0 0 0 0 0 0 16-3584 chrM 15043 0 0 0 0 0 0 0 16-3584 chrM 15044 0 0 0 0 0 0 0 16-3584 chrM 15045 0 0 0 0 0 0 0 16-3584 chrM 15046 0 0 0 0 0 0 0 16-3584 chrM 15047 0 0 0 0 0 0 0 16-3584 chrM 15048 0 0 0 0 0 0 0 16-3584 chrM 15049 0 0 0 0 0 0 0 16-3584 chrM 15050 0 0 0 0 0 0 0 16-3584 chrM 15051 0 0 0 0 0 0 0 16-3584 chrM 15052 0 0 0 0 0 0 0 16-3584 chrM 15053 0 0 0 0 0 0 0 16-3584 chrM 15054 0 0 0 0 0 0 0 16-3584 chrM 15055 0 0 0 0 0 0 0 16-3584 chrM 15056 0 0 0 0 0 0 0 16-3584 chrM 15057 0 0 0 0 0 0 0 16-3584 chrM 15058 0 0 0 0 0 0 0 16-3584 chrM 15059 0 0 0 0 0 0 0 16-3584 chrM 15060 0 0 0 0 0 0 0 16-3584 chrM 15061 0 0 0 0 0 0 0 16-3584 chrM 15062 0 0 0 0 0 0 0 16-3584 chrM 15063 0 0 0 0 0 0 0 16-3584 chrM 15064 0 0 0 0 0 0 0 16-3584 chrM 15065 0 0 0 0 0 0 0 16-3584 chrM 15066 0 0 0 0 0 0 0 16-3584 chrM 15067 0 0 0 0 0 0 0 16-3584 chrM 15068 0 0 0 0 0 0 0 16-3584 chrM 15069 0 0 0 0 0 0 0 16-3584 chrM 15070 0 0 0 0 0 0 0 16-3584 chrM 15071 0 0 0 0 0 0 0 16-3584 chrM 15072 0 0 0 0 0 0 0 16-3584 chrM 15073 0 0 0 0 0 0 0 16-3584 chrM 15074 0 0 0 0 0 0 0 16-3584 chrM 15075 0 0 0 0 0 0 0 16-3584 chrM 15076 0 0 0 0 0 0 0 16-3584 chrM 15077 0 0 0 0 0 0 0 16-3584 chrM 15078 0 0 0 0 0 0 0 16-3584 chrM 15079 0 0 0 0 0 0 0 16-3584 chrM 15080 0 0 0 0 0 0 0 16-3584 chrM 15081 0 0 0 0 0 0 0 16-3584 chrM 15082 0 0 0 0 0 0 0 16-3584 chrM 15083 0 0 0 0 0 0 0 16-3584 chrM 15084 0 0 0 0 0 0 0 16-3584 chrM 15085 0 0 0 0 0 0 0 16-3584 chrM 15086 0 0 0 0 0 0 0 16-3584 chrM 15087 0 0 0 0 0 0 0 16-3584 chrM 15088 0 0 0 0 0 0 0 16-3584 chrM 15089 0 0 0 0 0 0 0 16-3584 chrM 15090 0 0 0 0 0 0 0 16-3584 chrM 15091 0 0 0 0 0 0 0 16-3584 chrM 15092 0 0 0 0 0 0 0 16-3584 chrM 15093 0 0 0 0 0 0 0 16-3584 chrM 15094 0 0 0 0 0 0 0 16-3584 chrM 15095 0 0 0 0 0 0 0 16-3584 chrM 15096 0 0 0 0 0 0 0 16-3584 chrM 15097 0 0 0 0 0 0 0 16-3584 chrM 15098 0 0 0 0 0 0 0 16-3584 chrM 15099 0 0 0 0 0 0 0 16-3584 chrM 15100 0 0 0 0 0 0 0 16-3584 chrM 15101 0 0 0 0 0 0 0 16-3584 chrM 15102 0 0 0 0 0 0 0 16-3584 chrM 15103 0 0 0 0 0 0 0 16-3584 chrM 15104 0 0 0 0 0 0 0 16-3584 chrM 15105 0 0 0 0 0 0 0 16-3584 chrM 15106 0 0 0 0 0 0 0 16-3584 chrM 15107 0 0 0 0 0 0 0 16-3584 chrM 15108 0 0 0 0 0 0 0 16-3584 chrM 15109 0 0 0 0 0 0 0 16-3584 chrM 15110 0 0 0 0 0 0 0 16-3584 chrM 15111 0 0 0 0 0 0 0 16-3584 chrM 15112 0 0 0 0 0 0 0 16-3584 chrM 15113 0 0 0 0 0 0 0 16-3584 chrM 15114 0 0 0 0 0 0 0 16-3584 chrM 15115 0 0 0 0 0 0 0 16-3584 chrM 15116 0 0 0 0 0 0 0 16-3584 chrM 15117 0 0 0 0 0 0 0 16-3584 chrM 15118 0 0 0 0 0 0 0 16-3584 chrM 15119 0 0 0 0 0 0 0 16-3584 chrM 15120 0 0 0 0 0 0 0 16-3584 chrM 15121 0 0 0 0 0 0 0 16-3584 chrM 15122 0 0 0 0 0 0 0 16-3584 chrM 15123 0 0 0 0 0 0 0 16-3584 chrM 15124 0 0 0 0 0 0 0 16-3584 chrM 15125 0 0 0 0 0 0 0 16-3584 chrM 15126 0 0 0 0 0 0 0 16-3584 chrM 15127 0 0 0 0 0 0 0 16-3584 chrM 15128 0 0 0 0 0 0 0 16-3584 chrM 15129 0 0 0 0 0 0 0 16-3584 chrM 15130 0 0 0 0 0 0 0 16-3584 chrM 15131 0 0 0 0 0 0 0 16-3584 chrM 15132 0 0 0 0 0 0 0 16-3584 chrM 15133 0 0 0 0 0 0 0 16-3584 chrM 15134 0 0 0 0 0 0 0 16-3584 chrM 15135 0 0 0 0 0 0 0 16-3584 chrM 15136 0 0 0 0 0 0 0 16-3584 chrM 15137 0 0 0 0 0 0 0 16-3584 chrM 15138 0 0 0 0 0 0 0 16-3584 chrM 15139 0 0 0 0 0 0 0 16-3584 chrM 15140 0 0 0 0 0 0 0 16-3584 chrM 15141 0 0 0 0 0 0 0 16-3584 chrM 15142 0 0 0 0 0 0 0 16-3584 chrM 15143 0 0 0 0 0 0 0 16-3584 chrM 15144 0 0 0 0 0 0 0 16-3584 chrM 15145 0 0 0 0 0 0 0 16-3584 chrM 15146 0 0 0 0 0 0 0 16-3584 chrM 15147 0 0 0 0 0 0 0 16-3584 chrM 15148 0 0 0 0 0 0 0 16-3584 chrM 15149 0 0 0 0 0 0 0 16-3584 chrM 15150 0 0 0 0 0 0 0 16-3584 chrM 15151 0 0 0 0 0 0 0 16-3584 chrM 15152 0 0 0 0 0 0 0 16-3584 chrM 15153 0 0 0 0 0 0 0 16-3584 chrM 15154 0 0 0 0 0 0 0 16-3584 chrM 15155 0 0 0 0 0 0 0 16-3584 chrM 15156 0 0 0 0 0 0 0 16-3584 chrM 15157 0 0 0 0 0 0 0 16-3584 chrM 15158 0 0 0 0 0 0 0 16-3584 chrM 15159 0 0 0 0 0 0 0 16-3584 chrM 15160 0 0 0 0 0 0 0 16-3584 chrM 15161 0 0 0 0 0 0 0 16-3584 chrM 15162 0 0 0 0 0 0 0 16-3584 chrM 15163 0 0 0 0 0 0 0 16-3584 chrM 15164 0 0 0 0 0 0 0 16-3584 chrM 15165 0 0 0 0 0 0 0 16-3584 chrM 15166 0 0 0 0 0 0 0 16-3584 chrM 15167 0 0 0 0 0 0 0 16-3584 chrM 15168 0 0 0 0 0 0 0 16-3584 chrM 15169 0 0 0 0 0 0 0 16-3584 chrM 15170 0 0 0 0 0 0 0 16-3584 chrM 15171 0 0 0 0 0 0 0 16-3584 chrM 15172 0 0 0 0 0 0 0 16-3584 chrM 15173 0 0 0 0 0 0 0 16-3584 chrM 15174 0 0 0 0 0 0 0 16-3584 chrM 15175 0 0 0 0 0 0 0 16-3584 chrM 15176 0 0 0 0 0 0 0 16-3584 chrM 15177 0 0 0 0 0 0 0 16-3584 chrM 15178 0 0 0 0 0 0 0 16-3584 chrM 15179 0 0 0 0 0 0 0 16-3584 chrM 15180 0 0 0 0 0 0 0 16-3584 chrM 15181 0 0 0 0 0 0 0 16-3584 chrM 15182 0 0 0 0 0 0 0 16-3584 chrM 15183 0 0 0 0 0 0 0 16-3584 chrM 15184 0 0 0 0 0 0 0 16-3584 chrM 15185 0 0 0 0 0 0 0 16-3584 chrM 15186 0 0 0 0 0 0 0 16-3584 chrM 15187 0 0 0 0 0 0 0 16-3584 chrM 15188 0 0 0 0 0 0 0 16-3584 chrM 15189 0 0 0 0 0 0 0 16-3584 chrM 15190 0 0 0 0 0 0 0 16-3584 chrM 15191 0 0 0 0 0 0 0 16-3584 chrM 15192 0 0 0 0 0 0 0 16-3584 chrM 15193 0 0 0 0 0 0 0 16-3584 chrM 15194 0 0 0 0 0 0 0 16-3584 chrM 15195 0 0 0 0 0 0 0 16-3584 chrM 15196 0 0 0 0 0 0 0 16-3584 chrM 15197 0 0 0 0 0 0 0 16-3584 chrM 15198 0 0 0 0 0 0 0 16-3584 chrM 15199 0 0 0 0 0 0 0 16-3584 chrM 15200 0 0 0 0 0 0 0 16-3584 chrM 15201 0 0 0 0 0 0 0 16-3584 chrM 15202 0 0 0 0 0 0 0 16-3584 chrM 15203 0 0 0 0 0 0 0 16-3584 chrM 15204 0 0 0 0 0 0 0 16-3584 chrM 15205 0 0 0 0 0 0 0 16-3584 chrM 15206 0 0 0 0 0 0 0 16-3584 chrM 15207 0 0 0 0 0 0 0 16-3584 chrM 15208 0 0 0 0 0 0 0 16-3584 chrM 15209 0 0 0 0 0 0 0 16-3584 chrM 15210 0 0 0 0 0 0 0 16-3584 chrM 15211 0 0 0 0 0 0 0 16-3584 chrM 15212 0 0 0 0 0 0 0 16-3584 chrM 15213 0 0 0 0 0 0 0 16-3584 chrM 15214 0 0 0 0 0 0 0 16-3584 chrM 15215 0 0 0 0 0 0 0 16-3584 chrM 15216 0 0 0 0 0 0 0 16-3584 chrM 15217 0 0 0 0 0 0 0 16-3584 chrM 15218 0 0 0 0 0 0 0 16-3584 chrM 15219 0 0 0 0 0 0 0 16-3584 chrM 15220 0 0 0 0 0 0 0 16-3584 chrM 15221 0 0 0 0 0 0 0 16-3584 chrM 15222 0 0 0 0 0 0 0 16-3584 chrM 15223 0 0 0 0 0 0 0 16-3584 chrM 15224 0 0 0 0 0 0 0 16-3584 chrM 15225 0 0 0 0 0 0 0 16-3584 chrM 15226 0 0 0 0 0 0 0 16-3584 chrM 15227 0 0 0 0 0 0 0 16-3584 chrM 15228 0 0 0 0 0 0 0 16-3584 chrM 15229 0 0 0 0 0 0 0 16-3584 chrM 15230 0 0 0 0 0 0 0 16-3584 chrM 15231 0 0 0 0 0 0 0 16-3584 chrM 15232 0 0 0 0 0 0 0 16-3584 chrM 15233 0 0 0 0 0 0 0 16-3584 chrM 15234 0 0 0 0 0 0 0 16-3584 chrM 15235 0 0 0 0 0 0 0 16-3584 chrM 15236 0 0 0 0 0 0 0 16-3584 chrM 15237 0 0 0 0 0 0 0 16-3584 chrM 15238 0 0 0 0 0 0 0 16-3584 chrM 15239 0 0 0 0 0 0 0 16-3584 chrM 15240 0 0 0 0 0 0 0 16-3584 chrM 15241 0 0 0 0 0 0 0 16-3584 chrM 15242 0 0 0 0 0 0 0 16-3584 chrM 15243 0 0 0 0 0 0 0 16-3584 chrM 15244 0 0 0 0 0 0 0 16-3584 chrM 15245 0 0 0 0 0 0 0 16-3584 chrM 15246 0 0 0 0 0 0 0 16-3584 chrM 15247 0 0 0 0 0 0 0 16-3584 chrM 15248 0 0 0 0 0 0 0 16-3584 chrM 15249 0 0 0 0 0 0 0 16-3584 chrM 15250 0 0 0 0 0 0 0 16-3584 chrM 15251 0 0 0 0 0 0 0 16-3584 chrM 15252 0 0 0 0 0 0 0 16-3584 chrM 15253 0 0 0 0 0 0 0 16-3584 chrM 15254 0 0 0 0 0 0 0 16-3584 chrM 15255 0 0 0 0 0 0 0 16-3584 chrM 15256 0 0 0 0 0 0 0 16-3584 chrM 15257 0 0 0 0 0 0 0 16-3584 chrM 15258 0 0 0 0 0 0 0 16-3584 chrM 15259 0 0 0 0 0 0 0 16-3584 chrM 15260 0 0 0 0 0 0 0 16-3584 chrM 15261 0 0 0 0 0 0 0 16-3584 chrM 15262 0 0 0 0 0 0 0 16-3584 chrM 15263 0 0 0 0 0 0 0 16-3584 chrM 15264 0 0 0 0 0 0 0 16-3584 chrM 15265 0 0 0 0 0 0 0 16-3584 chrM 15266 0 0 0 0 0 0 0 16-3584 chrM 15267 0 0 0 0 0 0 0 16-3584 chrM 15268 0 0 0 0 0 0 0 16-3584 chrM 15269 0 0 0 0 0 0 0 16-3584 chrM 15270 0 0 0 0 0 0 0 16-3584 chrM 15271 0 0 0 0 0 0 0 16-3584 chrM 15272 0 0 0 0 0 0 0 16-3584 chrM 15273 0 0 0 0 0 0 0 16-3584 chrM 15274 0 0 0 0 0 0 0 16-3584 chrM 15275 0 0 0 0 0 0 0 16-3584 chrM 15276 0 0 0 0 0 0 0 16-3584 chrM 15277 0 0 0 0 0 0 0 16-3584 chrM 15278 0 0 0 0 0 0 0 16-3584 chrM 15279 0 0 0 0 0 0 0 16-3584 chrM 15280 0 0 0 0 0 0 0 16-3584 chrM 15281 0 0 0 0 0 0 0 16-3584 chrM 15282 0 0 0 0 0 0 0 16-3584 chrM 15283 0 0 0 0 0 0 0 16-3584 chrM 15284 0 0 0 0 0 0 0 16-3584 chrM 15285 0 0 0 0 0 0 0 16-3584 chrM 15286 0 0 0 0 0 0 0 16-3584 chrM 15287 0 0 0 0 0 0 0 16-3584 chrM 15288 0 0 0 0 0 0 0 16-3584 chrM 15289 0 0 0 0 0 0 0 16-3584 chrM 15290 0 0 0 0 0 0 0 16-3584 chrM 15291 0 0 0 0 0 0 0 16-3584 chrM 15292 0 0 0 0 0 0 0 16-3584 chrM 15293 0 0 0 0 0 0 0 16-3584 chrM 15294 0 0 0 0 0 0 0 16-3584 chrM 15295 0 0 0 0 0 0 0 16-3584 chrM 15296 0 0 0 0 0 0 0 16-3584 chrM 15297 0 0 0 0 0 0 0 16-3584 chrM 15298 0 0 0 0 0 0 0 16-3584 chrM 15299 0 0 0 0 0 0 0 16-3584 chrM 15300 0 0 0 0 0 0 0 16-3584 chrM 15301 0 0 0 0 0 0 0 16-3584 chrM 15302 0 0 0 0 0 0 0 16-3584 chrM 15303 0 0 0 0 0 0 0 16-3584 chrM 15304 0 0 0 0 0 0 0 16-3584 chrM 15305 0 0 0 0 0 0 0 16-3584 chrM 15306 0 0 0 0 0 0 0 16-3584 chrM 15307 0 0 0 0 0 0 0 16-3584 chrM 15308 0 0 0 0 0 0 0 16-3584 chrM 15309 0 0 0 0 0 0 0 16-3584 chrM 15310 0 0 0 0 0 0 0 16-3584 chrM 15311 0 0 0 0 0 0 0 16-3584 chrM 15312 0 0 0 0 0 0 0 16-3584 chrM 15313 0 0 0 0 0 0 0 16-3584 chrM 15314 0 0 0 0 0 0 0 16-3584 chrM 15315 0 0 0 0 0 0 0 16-3584 chrM 15316 0 0 0 0 0 0 0 16-3584 chrM 15317 0 0 0 0 0 0 0 16-3584 chrM 15318 0 0 0 0 0 0 0 16-3584 chrM 15319 0 0 0 0 0 0 0 16-3584 chrM 15320 0 0 0 0 0 0 0 16-3584 chrM 15321 0 0 0 0 0 0 0 16-3584 chrM 15322 0 0 0 0 0 0 0 16-3584 chrM 15323 0 0 0 0 0 0 0 16-3584 chrM 15324 0 0 0 0 0 0 0 16-3584 chrM 15325 0 0 0 0 0 0 0 16-3584 chrM 15326 0 0 0 0 0 0 0 16-3584 chrM 15327 0 0 0 0 0 0 0 16-3584 chrM 15328 0 0 0 0 0 0 0 16-3584 chrM 15329 0 0 0 0 0 0 0 16-3584 chrM 15330 0 0 0 0 0 0 0 16-3584 chrM 15331 0 0 0 0 0 0 0 16-3584 chrM 15332 0 0 0 0 0 0 0 16-3584 chrM 15333 0 0 0 0 0 0 0 16-3584 chrM 15334 0 0 0 0 0 0 0 16-3584 chrM 15335 0 0 0 0 0 0 0 16-3584 chrM 15336 0 0 0 0 0 0 0 16-3584 chrM 15337 0 0 0 0 0 0 0 16-3584 chrM 15338 0 0 0 0 0 0 0 16-3584 chrM 15339 0 0 0 0 0 0 0 16-3584 chrM 15340 0 0 0 0 0 0 0 16-3584 chrM 15341 0 0 0 0 0 0 0 16-3584 chrM 15342 0 0 0 0 0 0 0 16-3584 chrM 15343 0 0 0 0 0 0 0 16-3584 chrM 15344 0 0 0 0 0 0 0 16-3584 chrM 15345 0 0 0 0 0 0 0 16-3584 chrM 15346 0 0 0 0 0 0 0 16-3584 chrM 15347 0 0 0 0 0 0 0 16-3584 chrM 15348 0 0 0 0 0 0 0 16-3584 chrM 15349 0 0 0 0 0 0 0 16-3584 chrM 15350 0 0 0 0 0 0 0 16-3584 chrM 15351 0 0 0 0 0 0 0 16-3584 chrM 15352 0 0 0 0 0 0 0 16-3584 chrM 15353 0 0 0 0 0 0 0 16-3584 chrM 15354 0 0 0 0 0 0 0 16-3584 chrM 15355 0 0 0 0 0 0 0 16-3584 chrM 15356 0 0 0 0 0 0 0 16-3584 chrM 15357 0 0 0 0 0 0 0 16-3584 chrM 15358 0 0 0 0 0 0 0 16-3584 chrM 15359 0 0 0 0 0 0 0 16-3584 chrM 15360 0 0 0 0 0 0 0 16-3584 chrM 15361 0 0 0 0 0 0 0 16-3584 chrM 15362 0 0 0 0 0 0 0 16-3584 chrM 15363 0 0 0 0 0 0 0 16-3584 chrM 15364 0 0 0 0 0 0 0 16-3584 chrM 15365 0 0 0 0 0 0 0 16-3584 chrM 15366 0 0 0 0 0 0 0 16-3584 chrM 15367 0 0 0 0 0 0 0 16-3584 chrM 15368 0 0 0 0 0 0 0 16-3584 chrM 15369 0 0 0 0 0 0 0 16-3584 chrM 15370 0 0 0 0 0 0 0 16-3584 chrM 15371 0 0 0 0 0 0 0 16-3584 chrM 15372 0 0 0 0 0 0 0 16-3584 chrM 15373 0 0 0 0 0 0 0 16-3584 chrM 15374 0 0 0 0 0 0 0 16-3584 chrM 15375 0 0 0 0 0 0 0 16-3584 chrM 15376 0 0 0 0 0 0 0 16-3584 chrM 15377 0 0 0 0 0 0 0 16-3584 chrM 15378 0 0 0 0 0 0 0 16-3584 chrM 15379 0 0 0 0 0 0 0 16-3584 chrM 15380 0 0 0 0 0 0 0 16-3584 chrM 15381 0 0 0 0 0 0 0 16-3584 chrM 15382 0 0 0 0 0 0 0 16-3584 chrM 15383 0 0 0 0 0 0 0 16-3584 chrM 15384 0 0 0 0 0 0 0 16-3584 chrM 15385 0 0 0 0 0 0 0 16-3584 chrM 15386 0 0 0 0 0 0 0 16-3584 chrM 15387 0 0 0 0 0 0 0 16-3584 chrM 15388 0 0 0 0 0 0 0 16-3584 chrM 15389 0 0 0 0 0 0 0 16-3584 chrM 15390 0 0 0 0 0 0 0 16-3584 chrM 15391 0 0 0 0 0 0 0 16-3584 chrM 15392 0 0 0 0 0 0 0 16-3584 chrM 15393 0 0 0 0 0 0 0 16-3584 chrM 15394 0 0 0 0 0 0 0 16-3584 chrM 15395 0 0 0 0 0 0 0 16-3584 chrM 15396 0 0 0 0 0 0 0 16-3584 chrM 15397 0 0 0 0 0 0 0 16-3584 chrM 15398 0 0 0 0 0 0 0 16-3584 chrM 15399 0 0 0 0 0 0 0 16-3584 chrM 15400 0 0 0 0 0 0 0 16-3584 chrM 15401 0 0 0 0 0 0 0 16-3584 chrM 15402 0 0 0 0 0 0 0 16-3584 chrM 15403 0 0 0 0 0 0 0 16-3584 chrM 15404 0 0 0 0 0 0 0 16-3584 chrM 15405 0 0 0 0 0 0 0 16-3584 chrM 15406 0 0 0 0 0 0 0 16-3584 chrM 15407 0 0 0 0 0 0 0 16-3584 chrM 15408 0 0 0 0 0 0 0 16-3584 chrM 15409 0 0 0 0 0 0 0 16-3584 chrM 15410 0 0 0 0 0 0 0 16-3584 chrM 15411 0 0 0 0 0 0 0 16-3584 chrM 15412 0 0 0 0 0 0 0 16-3584 chrM 15413 0 0 0 0 0 0 0 16-3584 chrM 15414 0 0 0 0 0 0 0 16-3584 chrM 15415 0 0 0 0 0 0 0 16-3584 chrM 15416 0 0 0 0 0 0 0 16-3584 chrM 15417 0 0 0 0 0 0 0 16-3584 chrM 15418 0 0 0 0 0 0 0 16-3584 chrM 15419 0 0 0 0 0 0 0 16-3584 chrM 15420 0 0 0 0 0 0 0 16-3584 chrM 15421 0 0 0 0 0 0 0 16-3584 chrM 15422 0 0 0 0 0 0 0 16-3584 chrM 15423 0 0 0 0 0 0 0 16-3584 chrM 15424 0 0 0 0 0 0 0 16-3584 chrM 15425 0 0 0 0 0 0 0 16-3584 chrM 15426 0 0 0 0 0 0 0 16-3584 chrM 15427 0 0 0 0 0 0 0 16-3584 chrM 15428 0 0 0 0 0 0 0 16-3584 chrM 15429 0 0 0 0 0 0 0 16-3584 chrM 15430 0 0 0 0 0 0 0 16-3584 chrM 15431 0 0 0 0 0 0 0 16-3584 chrM 15432 0 0 0 0 0 0 0 16-3584 chrM 15433 0 0 0 0 0 0 0 16-3584 chrM 15434 0 0 0 0 0 0 0 16-3584 chrM 15435 0 0 0 0 0 0 0 16-3584 chrM 15436 0 0 0 0 0 0 0 16-3584 chrM 15437 0 0 0 0 0 0 0 16-3584 chrM 15438 0 0 0 0 0 0 0 16-3584 chrM 15439 0 0 0 0 0 0 0 16-3584 chrM 15440 0 0 0 0 0 0 0 16-3584 chrM 15441 0 0 0 0 0 0 0 16-3584 chrM 15442 0 0 0 0 0 0 0 16-3584 chrM 15443 0 0 0 0 0 0 0 16-3584 chrM 15444 0 0 0 0 0 0 0 16-3584 chrM 15445 0 0 0 0 0 0 0 16-3584 chrM 15446 0 0 0 0 0 0 0 16-3584 chrM 15447 0 0 0 0 0 0 0 16-3584 chrM 15448 0 0 0 0 0 0 0 16-3584 chrM 15449 0 0 0 0 0 0 0 16-3584 chrM 15450 0 0 0 0 0 0 0 16-3584 chrM 15451 0 0 0 0 0 0 0 16-3584 chrM 15452 0 0 0 0 0 0 0 16-3584 chrM 15453 0 0 0 0 0 0 0 16-3584 chrM 15454 0 0 0 0 0 0 0 16-3584 chrM 15455 0 0 0 0 0 0 0 16-3584 chrM 15456 0 0 0 0 0 0 0 16-3584 chrM 15457 0 0 0 0 0 0 0 16-3584 chrM 15458 0 0 0 0 0 0 0 16-3584 chrM 15459 0 0 0 0 0 0 0 16-3584 chrM 15460 0 0 0 0 0 0 0 16-3584 chrM 15461 0 0 0 0 0 0 0 16-3584 chrM 15462 0 0 0 0 0 0 0 16-3584 chrM 15463 0 0 0 0 0 0 0 16-3584 chrM 15464 0 0 0 0 0 0 0 16-3584 chrM 15465 0 0 0 0 0 0 0 16-3584 chrM 15466 0 0 0 0 0 0 0 16-3584 chrM 15467 0 0 0 0 0 0 0 16-3584 chrM 15468 0 0 0 0 0 0 0 16-3584 chrM 15469 0 0 0 0 0 0 0 16-3584 chrM 15470 0 0 0 0 0 0 0 16-3584 chrM 15471 0 0 0 0 0 0 0 16-3584 chrM 15472 0 0 0 0 0 0 0 16-3584 chrM 15473 0 0 0 0 0 0 0 16-3584 chrM 15474 0 0 0 0 0 0 0 16-3584 chrM 15475 0 0 0 0 0 0 0 16-3584 chrM 15476 0 0 0 0 0 0 0 16-3584 chrM 15477 0 0 0 0 0 0 0 16-3584 chrM 15478 0 0 0 0 0 0 0 16-3584 chrM 15479 0 0 0 0 0 0 0 16-3584 chrM 15480 0 0 0 0 0 0 0 16-3584 chrM 15481 0 0 0 0 0 0 0 16-3584 chrM 15482 0 0 0 0 0 0 0 16-3584 chrM 15483 0 0 0 0 0 0 0 16-3584 chrM 15484 0 0 0 0 0 0 0 16-3584 chrM 15485 0 0 0 0 0 0 0 16-3584 chrM 15486 0 0 0 0 0 0 0 16-3584 chrM 15487 0 0 0 0 0 0 0 16-3584 chrM 15488 0 0 0 0 0 0 0 16-3584 chrM 15489 0 0 0 0 0 0 0 16-3584 chrM 15490 0 0 0 0 0 0 0 16-3584 chrM 15491 0 0 0 0 0 0 0 16-3584 chrM 15492 0 0 0 0 0 0 0 16-3584 chrM 15493 0 0 0 0 0 0 0 16-3584 chrM 15494 0 0 0 0 0 0 0 16-3584 chrM 15495 0 0 0 0 0 0 0 16-3584 chrM 15496 0 0 0 0 0 0 0 16-3584 chrM 15497 0 0 0 0 0 0 0 16-3584 chrM 15498 0 0 0 0 0 0 0 16-3584 chrM 15499 0 0 0 0 0 0 0 16-3584 chrM 15500 0 0 0 0 0 0 0 16-3584 chrM 15501 0 0 0 0 0 0 0 16-3584 chrM 15502 0 0 0 0 0 0 0 16-3584 chrM 15503 0 0 0 0 0 0 0 16-3584 chrM 15504 0 0 0 0 0 0 0 16-3584 chrM 15505 0 0 0 0 0 0 0 16-3584 chrM 15506 0 0 0 0 0 0 0 16-3584 chrM 15507 0 0 0 0 0 0 0 16-3584 chrM 15508 0 0 0 0 0 0 0 16-3584 chrM 15509 0 0 0 0 0 0 0 16-3584 chrM 15510 0 0 0 0 0 0 0 16-3584 chrM 15511 0 0 0 0 0 0 0 16-3584 chrM 15512 0 0 0 0 0 0 0 16-3584 chrM 15513 0 0 0 0 0 0 0 16-3584 chrM 15514 0 0 0 0 0 0 0 16-3584 chrM 15515 0 0 0 0 0 0 0 16-3584 chrM 15516 0 0 0 0 0 0 0 16-3584 chrM 15517 0 0 0 0 0 0 0 16-3584 chrM 15518 0 0 0 0 0 0 0 16-3584 chrM 15519 0 0 0 0 0 0 0 16-3584 chrM 15520 0 0 0 0 0 0 0 16-3584 chrM 15521 0 0 0 0 0 0 0 16-3584 chrM 15522 0 0 0 0 0 0 0 16-3584 chrM 15523 0 0 0 0 0 0 0 16-3584 chrM 15524 0 0 0 0 0 0 0 16-3584 chrM 15525 0 0 0 0 0 0 0 16-3584 chrM 15526 0 0 0 0 0 0 0 16-3584 chrM 15527 0 0 0 0 0 0 0 16-3584 chrM 15528 0 0 0 0 0 0 0 16-3584 chrM 15529 0 0 0 0 0 0 0 16-3584 chrM 15530 0 0 0 0 0 0 0 16-3584 chrM 15531 0 0 0 0 0 0 0 16-3584 chrM 15532 0 0 0 0 0 0 0 16-3584 chrM 15533 0 0 0 0 0 0 0 16-3584 chrM 15534 0 0 0 0 0 0 0 16-3584 chrM 15535 0 0 0 0 0 0 0 16-3584 chrM 15536 0 0 0 0 0 0 0 16-3584 chrM 15537 0 0 0 0 0 0 0 16-3584 chrM 15538 0 0 0 0 0 0 0 16-3584 chrM 15539 0 0 0 0 0 0 0 16-3584 chrM 15540 0 0 0 0 0 0 0 16-3584 chrM 15541 0 0 0 0 0 0 0 16-3584 chrM 15542 0 0 0 0 0 0 0 16-3584 chrM 15543 0 0 0 0 0 0 0 16-3584 chrM 15544 0 0 0 0 0 0 0 16-3584 chrM 15545 0 0 0 0 0 0 0 16-3584 chrM 15546 0 0 0 0 0 0 0 16-3584 chrM 15547 0 0 0 0 0 0 0 16-3584 chrM 15548 0 0 0 0 0 0 0 16-3584 chrM 15549 0 0 0 0 0 0 0 16-3584 chrM 15550 0 0 0 0 0 0 0 16-3584 chrM 15551 0 0 0 0 0 0 0 16-3584 chrM 15552 0 0 0 0 0 0 0 16-3584 chrM 15553 0 0 0 0 0 0 0 16-3584 chrM 15554 0 0 0 0 0 0 0 16-3584 chrM 15555 0 0 0 0 0 0 0 16-3584 chrM 15556 0 0 0 0 0 0 0 16-3584 chrM 15557 0 0 0 0 0 0 0 16-3584 chrM 15558 0 0 0 0 0 0 0 16-3584 chrM 15559 0 0 0 0 0 0 0 16-3584 chrM 15560 0 0 0 0 0 0 0 16-3584 chrM 15561 0 0 0 0 0 0 0 16-3584 chrM 15562 0 0 0 0 0 0 0 16-3584 chrM 15563 0 0 0 0 0 0 0 16-3584 chrM 15564 0 0 0 0 0 0 0 16-3584 chrM 15565 0 0 0 0 0 0 0 16-3584 chrM 15566 0 0 0 0 0 0 0 16-3584 chrM 15567 0 0 0 0 0 0 0 16-3584 chrM 15568 0 0 0 0 0 0 0 16-3584 chrM 15569 0 0 0 0 0 0 0 16-3584 chrM 15570 0 0 0 0 0 0 0 16-3584 chrM 15571 0 0 0 0 0 0 0 16-3584 chrM 15572 0 0 0 0 0 0 0 16-3584 chrM 15573 0 0 0 0 0 0 0 16-3584 chrM 15574 0 0 0 0 0 0 0 16-3584 chrM 15575 0 0 0 0 0 0 0 16-3584 chrM 15576 0 0 0 0 0 0 0 16-3584 chrM 15577 0 0 0 0 0 0 0 16-3584 chrM 15578 0 0 0 0 0 0 0 16-3584 chrM 15579 0 0 0 0 0 0 0 16-3584 chrM 15580 0 0 0 0 0 0 0 16-3584 chrM 15581 0 0 0 0 0 0 0 16-3584 chrM 15582 0 0 0 0 0 0 0 16-3584 chrM 15583 0 0 0 0 0 0 0 16-3584 chrM 15584 0 0 0 0 0 0 0 16-3584 chrM 15585 0 0 0 0 0 0 0 16-3584 chrM 15586 0 0 0 0 0 0 0 16-3584 chrM 15587 0 0 0 0 0 0 0 16-3584 chrM 15588 0 0 0 0 0 0 0 16-3584 chrM 15589 0 0 0 0 0 0 0 16-3584 chrM 15590 0 0 0 0 0 0 0 16-3584 chrM 15591 0 0 0 0 0 0 0 16-3584 chrM 15592 0 0 0 0 0 0 0 16-3584 chrM 15593 0 0 0 0 0 0 0 16-3584 chrM 15594 0 0 0 0 0 0 0 16-3584 chrM 15595 0 0 0 0 0 0 0 16-3584 chrM 15596 0 0 0 0 0 0 0 16-3584 chrM 15597 0 0 0 0 0 0 0 16-3584 chrM 15598 0 0 0 0 0 0 0 16-3584 chrM 15599 0 0 0 0 0 0 0 16-3584 chrM 15600 0 0 0 0 0 0 0 16-3584 chrM 15601 0 0 0 0 0 0 0 16-3584 chrM 15602 0 0 0 0 0 0 0 16-3584 chrM 15603 0 0 0 0 0 0 0 16-3584 chrM 15604 0 0 0 0 0 0 0 16-3584 chrM 15605 0 0 0 0 0 0 0 16-3584 chrM 15606 0 0 0 0 0 0 0 16-3584 chrM 15607 0 0 0 0 0 0 0 16-3584 chrM 15608 0 0 0 0 0 0 0 16-3584 chrM 15609 0 0 0 0 0 0 0 16-3584 chrM 15610 0 0 0 0 0 0 0 16-3584 chrM 15611 0 0 0 0 0 0 0 16-3584 chrM 15612 0 0 0 0 0 0 0 16-3584 chrM 15613 0 0 0 0 0 0 0 16-3584 chrM 15614 0 0 0 0 0 0 0 16-3584 chrM 15615 0 0 0 0 0 0 0 16-3584 chrM 15616 0 0 0 0 0 0 0 16-3584 chrM 15617 0 0 0 0 0 0 0 16-3584 chrM 15618 0 0 0 0 0 0 0 16-3584 chrM 15619 0 0 0 0 0 0 0 16-3584 chrM 15620 0 0 0 0 0 0 0 16-3584 chrM 15621 0 0 0 0 0 0 0 16-3584 chrM 15622 0 0 0 0 0 0 0 16-3584 chrM 15623 0 0 0 0 0 0 0 16-3584 chrM 15624 0 0 0 0 0 0 0 16-3584 chrM 15625 0 0 0 0 0 0 0 16-3584 chrM 15626 0 0 0 0 0 0 0 16-3584 chrM 15627 0 0 0 0 0 0 0 16-3584 chrM 15628 0 0 0 0 0 0 0 16-3584 chrM 15629 0 0 0 0 0 0 0 16-3584 chrM 15630 0 0 0 0 0 0 0 16-3584 chrM 15631 0 0 0 0 0 0 0 16-3584 chrM 15632 0 0 0 0 0 0 0 16-3584 chrM 15633 0 0 0 0 0 0 0 16-3584 chrM 15634 0 0 0 0 0 0 0 16-3584 chrM 15635 0 0 0 0 0 0 0 16-3584 chrM 15636 0 0 0 0 0 0 0 16-3584 chrM 15637 0 0 0 0 0 0 0 16-3584 chrM 15638 0 0 0 0 0 0 0 16-3584 chrM 15639 0 0 0 0 0 0 0 16-3584 chrM 15640 0 0 0 0 0 0 0 16-3584 chrM 15641 0 0 0 0 0 0 0 16-3584 chrM 15642 0 0 0 0 0 0 0 16-3584 chrM 15643 0 0 0 0 0 0 0 16-3584 chrM 15644 0 0 0 0 0 0 0 16-3584 chrM 15645 0 0 0 0 0 0 0 16-3584 chrM 15646 0 0 0 0 0 0 0 16-3584 chrM 15647 0 0 0 0 0 0 0 16-3584 chrM 15648 0 0 0 0 0 0 0 16-3584 chrM 15649 0 0 0 0 0 0 0 16-3584 chrM 15650 0 0 0 0 0 0 0 16-3584 chrM 15651 0 0 0 0 0 0 0 16-3584 chrM 15652 0 0 0 0 0 0 0 16-3584 chrM 15653 0 0 0 0 0 0 0 16-3584 chrM 15654 0 0 0 0 0 0 0 16-3584 chrM 15655 0 0 0 0 0 0 0 16-3584 chrM 15656 0 0 0 0 0 0 0 16-3584 chrM 15657 0 0 0 0 0 0 0 16-3584 chrM 15658 0 0 0 0 0 0 0 16-3584 chrM 15659 0 0 0 0 0 0 0 16-3584 chrM 15660 0 0 0 0 0 0 0 16-3584 chrM 15661 0 0 0 0 0 0 0 16-3584 chrM 15662 0 0 0 0 0 0 0 16-3584 chrM 15663 0 0 0 0 0 0 0 16-3584 chrM 15664 0 0 0 0 0 0 0 16-3584 chrM 15665 0 0 0 0 0 0 0 16-3584 chrM 15666 0 0 0 0 0 0 0 16-3584 chrM 15667 0 0 0 0 0 0 0 16-3584 chrM 15668 0 0 0 0 0 0 0 16-3584 chrM 15669 0 0 0 0 0 0 0 16-3584 chrM 15670 0 0 0 0 0 0 0 16-3584 chrM 15671 0 0 0 0 0 0 0 16-3584 chrM 15672 0 0 0 0 0 0 0 16-3584 chrM 15673 0 0 0 0 0 0 0 16-3584 chrM 15674 0 0 0 0 0 0 0 16-3584 chrM 15675 0 0 0 0 0 0 0 16-3584 chrM 15676 0 0 0 0 0 0 0 16-3584 chrM 15677 0 0 0 0 0 0 0 16-3584 chrM 15678 0 0 0 0 0 0 0 16-3584 chrM 15679 0 0 0 0 0 0 0 16-3584 chrM 15680 0 0 0 0 0 0 0 16-3584 chrM 15681 0 0 0 0 0 0 0 16-3584 chrM 15682 0 0 0 0 0 0 0 16-3584 chrM 15683 0 0 0 0 0 0 0 16-3584 chrM 15684 0 0 0 0 0 0 0 16-3584 chrM 15685 0 0 0 0 0 0 0 16-3584 chrM 15686 0 0 0 0 0 0 0 16-3584 chrM 15687 0 0 0 0 0 0 0 16-3584 chrM 15688 0 0 0 0 0 0 0 16-3584 chrM 15689 0 0 0 0 0 0 0 16-3584 chrM 15690 0 0 0 0 0 0 0 16-3584 chrM 15691 0 0 0 0 0 0 0 16-3584 chrM 15692 0 0 0 0 0 0 0 16-3584 chrM 15693 0 0 0 0 0 0 0 16-3584 chrM 15694 0 0 0 0 0 0 0 16-3584 chrM 15695 0 0 0 0 0 0 0 16-3584 chrM 15696 0 0 0 0 0 0 0 16-3584 chrM 15697 0 0 0 0 0 0 0 16-3584 chrM 15698 0 0 0 0 0 0 0 16-3584 chrM 15699 0 0 0 0 0 0 0 16-3584 chrM 15700 0 0 0 0 0 0 0 16-3584 chrM 15701 0 0 0 0 0 0 0 16-3584 chrM 15702 0 0 0 0 0 0 0 16-3584 chrM 15703 0 0 0 0 0 0 0 16-3584 chrM 15704 0 0 0 0 0 0 0 16-3584 chrM 15705 0 0 0 0 0 0 0 16-3584 chrM 15706 0 0 0 0 0 0 0 16-3584 chrM 15707 0 0 0 0 0 0 0 16-3584 chrM 15708 0 0 0 0 0 0 0 16-3584 chrM 15709 0 0 0 0 0 0 0 16-3584 chrM 15710 0 0 0 0 0 0 0 16-3584 chrM 15711 0 0 0 0 0 0 0 16-3584 chrM 15712 0 0 0 0 0 0 0 16-3584 chrM 15713 0 0 0 0 0 0 0 16-3584 chrM 15714 0 0 0 0 0 0 0 16-3584 chrM 15715 0 0 0 0 0 0 0 16-3584 chrM 15716 0 0 0 0 0 0 0 16-3584 chrM 15717 0 0 0 0 0 0 0 16-3584 chrM 15718 0 0 0 0 0 0 0 16-3584 chrM 15719 0 0 0 0 0 0 0 16-3584 chrM 15720 0 0 0 0 0 0 0 16-3584 chrM 15721 0 0 0 0 0 0 0 16-3584 chrM 15722 0 0 0 0 0 0 0 16-3584 chrM 15723 0 0 0 0 0 0 0 16-3584 chrM 15724 0 0 0 0 0 0 0 16-3584 chrM 15725 0 0 0 0 0 0 0 16-3584 chrM 15726 0 0 0 0 0 0 0 16-3584 chrM 15727 0 0 0 0 0 0 0 16-3584 chrM 15728 0 0 0 0 0 0 0 16-3584 chrM 15729 0 0 0 0 0 0 0 16-3584 chrM 15730 0 0 0 0 0 0 0 16-3584 chrM 15731 0 0 0 0 0 0 0 16-3584 chrM 15732 0 0 0 0 0 0 0 16-3584 chrM 15733 0 0 0 0 0 0 0 16-3584 chrM 15734 0 0 0 0 0 0 0 16-3584 chrM 15735 0 0 0 0 0 0 0 16-3584 chrM 15736 0 0 0 0 0 0 0 16-3584 chrM 15737 0 0 0 0 0 0 0 16-3584 chrM 15738 0 0 0 0 0 0 0 16-3584 chrM 15739 0 0 0 0 0 0 0 16-3584 chrM 15740 0 0 0 0 0 0 0 16-3584 chrM 15741 0 0 0 0 0 0 0 16-3584 chrM 15742 0 0 0 0 0 0 0 16-3584 chrM 15743 0 0 0 0 0 0 0 16-3584 chrM 15744 0 0 0 0 0 0 0 16-3584 chrM 15745 0 0 0 0 0 0 0 16-3584 chrM 15746 0 0 0 0 0 0 0 16-3584 chrM 15747 0 0 0 0 0 0 0 16-3584 chrM 15748 0 0 0 0 0 0 0 16-3584 chrM 15749 0 0 0 0 0 0 0 16-3584 chrM 15750 0 0 0 0 0 0 0 16-3584 chrM 15751 0 0 0 0 0 0 0 16-3584 chrM 15752 0 0 0 0 0 0 0 16-3584 chrM 15753 0 0 0 0 0 0 0 16-3584 chrM 15754 0 0 0 0 0 0 0 16-3584 chrM 15755 0 0 0 0 0 0 0 16-3584 chrM 15756 0 0 0 0 0 0 0 16-3584 chrM 15757 0 0 0 0 0 0 0 16-3584 chrM 15758 0 0 0 0 0 0 0 16-3584 chrM 15759 0 0 0 0 0 0 0 16-3584 chrM 15760 0 0 0 0 0 0 0 16-3584 chrM 15761 0 0 0 0 0 0 0 16-3584 chrM 15762 0 0 0 0 0 0 0 16-3584 chrM 15763 0 0 0 0 0 0 0 16-3584 chrM 15764 0 0 0 0 0 0 0 16-3584 chrM 15765 0 0 0 0 0 0 0 16-3584 chrM 15766 0 0 0 0 0 0 0 16-3584 chrM 15767 0 0 0 0 0 0 0 16-3584 chrM 15768 0 0 0 0 0 0 0 16-3584 chrM 15769 0 0 0 0 0 0 0 16-3584 chrM 15770 0 0 0 0 0 0 0 16-3584 chrM 15771 0 0 0 0 0 0 0 16-3584 chrM 15772 0 0 0 0 0 0 0 16-3584 chrM 15773 0 0 0 0 0 0 0 16-3584 chrM 15774 0 0 0 0 0 0 0 16-3584 chrM 15775 0 0 0 0 0 0 0 16-3584 chrM 15776 0 0 0 0 0 0 0 16-3584 chrM 15777 0 0 0 0 0 0 0 16-3584 chrM 15778 0 0 0 0 0 0 0 16-3584 chrM 15779 0 0 0 0 0 0 0 16-3584 chrM 15780 0 0 0 0 0 0 0 16-3584 chrM 15781 0 0 0 0 0 0 0 16-3584 chrM 15782 0 0 0 0 0 0 0 16-3584 chrM 15783 0 0 0 0 0 0 0 16-3584 chrM 15784 0 0 0 0 0 0 0 16-3584 chrM 15785 0 0 0 0 0 0 0 16-3584 chrM 15786 0 0 0 0 0 0 0 16-3584 chrM 15787 0 0 0 0 0 0 0 16-3584 chrM 15788 0 0 0 0 0 0 0 16-3584 chrM 15789 0 0 0 0 0 0 0 16-3584 chrM 15790 0 0 0 0 0 0 0 16-3584 chrM 15791 0 0 0 0 0 0 0 16-3584 chrM 15792 0 0 0 0 0 0 0 16-3584 chrM 15793 0 0 0 0 0 0 0 16-3584 chrM 15794 0 0 0 0 0 0 0 16-3584 chrM 15795 0 0 0 0 0 0 0 16-3584 chrM 15796 0 0 0 0 0 0 0 16-3584 chrM 15797 0 0 0 0 0 0 0 16-3584 chrM 15798 0 0 0 0 0 0 0 16-3584 chrM 15799 0 0 0 0 0 0 0 16-3584 chrM 15800 0 0 0 0 0 0 0 16-3584 chrM 15801 0 0 0 0 0 0 0 16-3584 chrM 15802 0 0 0 0 0 0 0 16-3584 chrM 15803 0 0 0 0 0 0 0 16-3584 chrM 15804 0 0 0 0 0 0 0 16-3584 chrM 15805 0 0 0 0 0 0 0 16-3584 chrM 15806 0 0 0 0 0 0 0 16-3584 chrM 15807 0 0 0 0 0 0 0 16-3584 chrM 15808 0 0 0 0 0 0 0 16-3584 chrM 15809 0 0 0 0 0 0 0 16-3584 chrM 15810 0 0 0 0 0 0 0 16-3584 chrM 15811 0 0 0 0 0 0 0 16-3584 chrM 15812 0 0 0 0 0 0 0 16-3584 chrM 15813 0 0 0 0 0 0 0 16-3584 chrM 15814 0 0 0 0 0 0 0 16-3584 chrM 15815 0 0 0 0 0 0 0 16-3584 chrM 15816 0 0 0 0 0 0 0 16-3584 chrM 15817 0 0 0 0 0 0 0 16-3584 chrM 15818 0 0 0 0 0 0 0 16-3584 chrM 15819 0 0 0 0 0 0 0 16-3584 chrM 15820 0 0 0 0 0 0 0 16-3584 chrM 15821 0 0 0 0 0 0 0 16-3584 chrM 15822 0 0 0 0 0 0 0 16-3584 chrM 15823 0 0 0 0 0 0 0 16-3584 chrM 15824 0 0 0 0 0 0 0 16-3584 chrM 15825 0 0 0 0 0 0 0 16-3584 chrM 15826 0 0 0 0 0 0 0 16-3584 chrM 15827 0 0 0 0 0 0 0 16-3584 chrM 15828 0 0 0 0 0 0 0 16-3584 chrM 15829 0 0 0 0 0 0 0 16-3584 chrM 15830 0 0 0 0 0 0 0 16-3584 chrM 15831 0 0 0 0 0 0 0 16-3584 chrM 15832 0 0 0 0 0 0 0 16-3584 chrM 15833 0 0 0 0 0 0 0 16-3584 chrM 15834 0 0 0 0 0 0 0 16-3584 chrM 15835 0 0 0 0 0 0 0 16-3584 chrM 15836 0 0 0 0 0 0 0 16-3584 chrM 15837 0 0 0 0 0 0 0 16-3584 chrM 15838 0 0 0 0 0 0 0 16-3584 chrM 15839 0 0 0 0 0 0 0 16-3584 chrM 15840 0 0 0 0 0 0 0 16-3584 chrM 15841 0 0 0 0 0 0 0 16-3584 chrM 15842 0 0 0 0 0 0 0 16-3584 chrM 15843 0 0 0 0 0 0 0 16-3584 chrM 15844 0 0 0 0 0 0 0 16-3584 chrM 15845 0 0 0 0 0 0 0 16-3584 chrM 15846 0 0 0 0 0 0 0 16-3584 chrM 15847 0 0 0 0 0 0 0 16-3584 chrM 15848 0 0 0 0 0 0 0 16-3584 chrM 15849 0 0 0 0 0 0 0 16-3584 chrM 15850 0 0 0 0 0 0 0 16-3584 chrM 15851 0 0 0 0 0 0 0 16-3584 chrM 15852 0 0 0 0 0 0 0 16-3584 chrM 15853 0 0 0 0 0 0 0 16-3584 chrM 15854 0 0 0 0 0 0 0 16-3584 chrM 15855 0 0 0 0 0 0 0 16-3584 chrM 15856 0 0 0 0 0 0 0 16-3584 chrM 15857 0 0 0 0 0 0 0 16-3584 chrM 15858 0 0 0 0 0 0 0 16-3584 chrM 15859 0 0 0 0 0 0 0 16-3584 chrM 15860 0 0 0 0 0 0 0 16-3584 chrM 15861 0 0 0 0 0 0 0 16-3584 chrM 15862 0 0 0 0 0 0 0 16-3584 chrM 15863 0 0 0 0 0 0 0 16-3584 chrM 15864 0 0 0 0 0 0 0 16-3584 chrM 15865 0 0 0 0 0 0 0 16-3584 chrM 15866 0 0 0 0 0 0 0 16-3584 chrM 15867 0 0 0 0 0 0 0 16-3584 chrM 15868 0 0 0 0 0 0 0 16-3584 chrM 15869 0 0 0 0 0 0 0 16-3584 chrM 15870 0 0 0 0 0 0 0 16-3584 chrM 15871 0 0 0 0 0 0 0 16-3584 chrM 15872 0 0 0 0 0 0 0 16-3584 chrM 15873 0 0 0 0 0 0 0 16-3584 chrM 15874 0 0 0 0 0 0 0 16-3584 chrM 15875 0 0 0 0 0 0 0 16-3584 chrM 15876 0 0 0 0 0 0 0 16-3584 chrM 15877 0 0 0 0 0 0 0 16-3584 chrM 15878 0 0 0 0 0 0 0 16-3584 chrM 15879 0 0 0 0 0 0 0 16-3584 chrM 15880 0 0 0 0 0 0 0 16-3584 chrM 15881 0 0 0 0 0 0 0 16-3584 chrM 15882 0 0 0 0 0 0 0 16-3584 chrM 15883 0 0 0 0 0 0 0 16-3584 chrM 15884 0 0 0 0 0 0 0 16-3584 chrM 15885 0 0 0 0 0 0 0 16-3584 chrM 15886 0 0 0 0 0 0 0 16-3584 chrM 15887 0 0 0 0 0 0 0 16-3584 chrM 15888 0 0 0 0 0 0 0 16-3584 chrM 15889 0 0 0 0 0 0 0 16-3584 chrM 15890 0 0 0 0 0 0 0 16-3584 chrM 15891 0 0 0 0 0 0 0 16-3584 chrM 15892 0 0 0 0 0 0 0 16-3584 chrM 15893 0 0 0 0 0 0 0 16-3584 chrM 15894 0 0 0 0 0 0 0 16-3584 chrM 15895 0 0 0 0 0 0 0 16-3584 chrM 15896 0 0 0 0 0 0 0 16-3584 chrM 15897 0 0 0 0 0 0 0 16-3584 chrM 15898 0 0 0 0 0 0 0 16-3584 chrM 15899 0 0 0 0 0 0 0 16-3584 chrM 15900 0 0 0 0 0 0 0 16-3584 chrM 15901 0 0 0 0 0 0 0 16-3584 chrM 15902 0 0 0 0 0 0 0 16-3584 chrM 15903 0 0 0 0 0 0 0 16-3584 chrM 15904 0 0 0 0 0 0 0 16-3584 chrM 15905 0 0 0 0 0 0 0 16-3584 chrM 15906 0 0 0 0 0 0 0 16-3584 chrM 15907 0 0 0 0 0 0 0 16-3584 chrM 15908 0 0 0 0 0 0 0 16-3584 chrM 15909 0 0 0 0 0 0 0 16-3584 chrM 15910 0 0 0 0 0 0 0 16-3584 chrM 15911 0 0 0 0 0 0 0 16-3584 chrM 15912 0 0 0 0 0 0 0 16-3584 chrM 15913 0 0 0 0 0 0 0 16-3584 chrM 15914 0 0 0 0 0 0 0 16-3584 chrM 15915 0 0 0 0 0 0 0 16-3584 chrM 15916 0 0 0 0 0 0 0 16-3584 chrM 15917 0 0 0 0 0 0 0 16-3584 chrM 15918 0 0 0 0 0 0 0 16-3584 chrM 15919 0 0 0 0 0 0 0 16-3584 chrM 15920 0 0 0 0 0 0 0 16-3584 chrM 15921 0 0 0 0 0 0 0 16-3584 chrM 15922 0 0 0 0 0 0 0 16-3584 chrM 15923 0 0 0 0 0 0 0 16-3584 chrM 15924 0 0 0 0 0 0 0 16-3584 chrM 15925 0 0 0 0 0 0 0 16-3584 chrM 15926 0 0 0 0 0 0 0 16-3584 chrM 15927 0 0 0 0 0 0 0 16-3584 chrM 15928 0 0 0 0 0 0 0 16-3584 chrM 15929 0 0 0 0 0 0 0 16-3584 chrM 15930 0 0 0 0 0 0 0 16-3584 chrM 15931 0 0 0 0 0 0 0 16-3584 chrM 15932 0 0 0 0 0 0 0 16-3584 chrM 15933 0 0 0 0 0 0 0 16-3584 chrM 15934 0 0 0 0 0 0 0 16-3584 chrM 15935 0 0 0 0 0 0 0 16-3584 chrM 15936 0 0 0 0 0 0 0 16-3584 chrM 15937 0 0 0 0 0 0 0 16-3584 chrM 15938 0 0 0 0 0 0 0 16-3584 chrM 15939 0 0 0 0 0 0 0 16-3584 chrM 15940 0 0 0 0 0 0 0 16-3584 chrM 15941 0 0 0 0 0 0 0 16-3584 chrM 15942 0 0 0 0 0 0 0 16-3584 chrM 15943 0 0 0 0 0 0 0 16-3584 chrM 15944 0 0 0 0 0 0 0 16-3584 chrM 15945 0 0 0 0 0 0 0 16-3584 chrM 15946 0 0 0 0 0 0 0 16-3584 chrM 15947 0 0 0 0 0 0 0 16-3584 chrM 15948 0 0 0 0 0 0 0 16-3584 chrM 15949 0 0 0 0 0 0 0 16-3584 chrM 15950 0 0 0 0 0 0 0 16-3584 chrM 15951 0 0 0 0 0 0 0 16-3584 chrM 15952 0 0 0 0 0 0 0 16-3584 chrM 15953 0 0 0 0 0 0 0 16-3584 chrM 15954 0 0 0 0 0 0 0 16-3584 chrM 15955 0 0 0 0 0 0 0 16-3584 chrM 15956 0 0 0 0 0 0 0 16-3584 chrM 15957 0 0 0 0 0 0 0 16-3584 chrM 15958 0 0 0 0 0 0 0 16-3584 chrM 15959 0 0 0 0 0 0 0 16-3584 chrM 15960 0 0 0 0 0 0 0 16-3584 chrM 15961 0 0 0 0 0 0 0 16-3584 chrM 15962 0 0 0 0 0 0 0 16-3584 chrM 15963 0 0 0 0 0 0 0 16-3584 chrM 15964 0 0 0 0 0 0 0 16-3584 chrM 15965 0 0 0 0 0 0 0 16-3584 chrM 15966 0 0 0 0 0 0 0 16-3584 chrM 15967 0 0 0 0 0 0 0 16-3584 chrM 15968 0 0 0 0 0 0 0 16-3584 chrM 15969 0 0 0 0 0 0 0 16-3584 chrM 15970 0 0 0 0 0 0 0 16-3584 chrM 15971 0 0 0 0 0 0 0 16-3584 chrM 15972 0 0 0 0 0 0 0 16-3584 chrM 15973 0 0 0 0 0 0 0 16-3584 chrM 15974 0 0 0 0 0 0 0 16-3584 chrM 15975 0 0 0 0 0 0 0 16-3584 chrM 15976 0 0 0 0 0 0 0 16-3584 chrM 15977 0 0 0 0 0 0 0 16-3584 chrM 15978 0 0 0 0 0 0 0 16-3584 chrM 15979 0 0 0 0 0 0 0 16-3584 chrM 15980 0 0 0 0 0 0 0 16-3584 chrM 15981 0 0 0 0 0 0 0 16-3584 chrM 15982 0 0 0 0 0 0 0 16-3584 chrM 15983 0 0 0 0 0 0 0 16-3584 chrM 15984 0 0 0 0 0 0 0 16-3584 chrM 15985 0 0 0 0 0 0 0 16-3584 chrM 15986 0 0 0 0 0 0 0 16-3584 chrM 15987 0 0 0 0 0 0 0 16-3584 chrM 15988 0 0 0 0 0 0 0 16-3584 chrM 15989 0 0 0 0 0 0 0 16-3584 chrM 15990 0 0 0 0 0 0 0 16-3584 chrM 15991 0 0 0 0 0 0 0 16-3584 chrM 15992 0 0 0 0 0 0 0 16-3584 chrM 15993 0 0 0 0 0 0 0 16-3584 chrM 15994 0 0 0 0 0 0 0 16-3584 chrM 15995 0 0 0 0 0 0 0 16-3584 chrM 15996 0 0 0 0 0 0 0 16-3584 chrM 15997 0 0 0 0 0 0 0 16-3584 chrM 15998 0 0 0 0 0 0 0 16-3584 chrM 15999 0 0 0 0 0 0 0 16-3584 chrM 16000 0 0 0 0 0 0 0 16-3584 chrM 16001 0 0 0 0 0 0 0 16-3584 chrM 16002 0 0 0 0 0 0 0 16-3584 chrM 16003 0 0 0 0 0 0 0 16-3584 chrM 16004 0 0 0 0 0 0 0 16-3584 chrM 16005 0 0 0 0 0 0 0 16-3584 chrM 16006 0 0 0 0 0 0 0 16-3584 chrM 16007 0 0 0 0 0 0 0 16-3584 chrM 16008 0 0 0 0 0 0 0 16-3584 chrM 16009 0 0 0 0 0 0 0 16-3584 chrM 16010 0 0 0 0 0 0 0 16-3584 chrM 16011 0 0 0 0 0 0 0 16-3584 chrM 16012 0 0 0 0 0 0 0 16-3584 chrM 16013 0 0 0 0 0 0 0 16-3584 chrM 16014 0 0 0 0 0 0 0 16-3584 chrM 16015 0 0 0 0 0 0 0 16-3584 chrM 16016 0 0 0 0 0 0 0 16-3584 chrM 16017 0 0 0 0 0 0 0 16-3584 chrM 16018 0 0 0 0 0 0 0 16-3584 chrM 16019 0 0 0 0 0 0 0 16-3584 chrM 16020 0 0 0 0 0 0 0 16-3584 chrM 16021 0 0 0 0 0 0 0 16-3584 chrM 16022 0 0 0 0 0 0 0 16-3584 chrM 16023 0 0 0 0 0 0 0 16-3584 chrM 16024 0 0 0 0 0 0 0 16-3584 chrM 16025 0 0 0 0 0 0 0 16-3584 chrM 16026 0 0 0 0 0 0 0 16-3584 chrM 16027 0 0 0 0 0 0 0 16-3584 chrM 16028 0 0 0 0 0 0 0 16-3584 chrM 16029 0 0 0 0 0 0 0 16-3584 chrM 16030 0 0 0 0 0 0 0 16-3584 chrM 16031 0 0 0 0 0 0 0 16-3584 chrM 16032 0 0 0 0 0 0 0 16-3584 chrM 16033 0 0 0 0 0 0 0 16-3584 chrM 16034 0 0 0 0 0 0 0 16-3584 chrM 16035 0 0 0 0 0 0 0 16-3584 chrM 16036 0 0 0 0 0 0 0 16-3584 chrM 16037 0 0 0 0 0 0 0 16-3584 chrM 16038 0 0 0 0 0 0 0 16-3584 chrM 16039 0 0 0 0 0 0 0 16-3584 chrM 16040 0 0 0 0 0 0 0 16-3584 chrM 16041 0 0 0 0 0 0 0 16-3584 chrM 16042 0 0 0 0 0 0 0 16-3584 chrM 16043 0 0 0 0 0 0 0 16-3584 chrM 16044 0 0 0 0 0 0 0 16-3584 chrM 16045 0 0 0 0 0 0 0 16-3584 chrM 16046 0 0 0 0 0 0 0 16-3584 chrM 16047 0 0 0 0 0 0 0 16-3584 chrM 16048 0 0 0 0 0 0 0 16-3584 chrM 16049 0 0 0 0 0 0 0 16-3584 chrM 16050 0 0 0 0 0 0 0 16-3584 chrM 16051 0 0 0 0 0 0 0 16-3584 chrM 16052 0 0 0 0 0 0 0 16-3584 chrM 16053 0 0 0 0 0 0 0 16-3584 chrM 16054 0 0 0 0 0 0 0 16-3584 chrM 16055 0 0 0 0 0 0 0 16-3584 chrM 16056 0 0 0 0 0 0 0 16-3584 chrM 16057 0 0 0 0 0 0 0 16-3584 chrM 16058 0 0 0 0 0 0 0 16-3584 chrM 16059 0 0 0 0 0 0 0 16-3584 chrM 16060 0 0 0 0 0 0 0 16-3584 chrM 16061 0 0 0 0 0 0 0 16-3584 chrM 16062 0 0 0 0 0 0 0 16-3584 chrM 16063 0 0 0 0 0 0 0 16-3584 chrM 16064 0 0 0 0 0 0 0 16-3584 chrM 16065 0 0 0 0 0 0 0 16-3584 chrM 16066 0 0 0 0 0 0 0 16-3584 chrM 16067 0 0 0 0 0 0 0 16-3584 chrM 16068 0 0 0 0 0 0 0 16-3584 chrM 16069 0 0 0 0 0 0 0 16-3584 chrM 16070 0 0 0 0 0 0 0 16-3584 chrM 16071 0 0 0 0 0 0 0 16-3584 chrM 16072 0 0 0 0 0 0 0 16-3584 chrM 16073 0 0 0 0 0 0 0 16-3584 chrM 16074 0 0 0 0 0 0 0 16-3584 chrM 16075 0 0 0 0 0 0 0 16-3584 chrM 16076 0 0 0 0 0 0 0 16-3584 chrM 16077 0 0 0 0 0 0 0 16-3584 chrM 16078 0 0 0 0 0 0 0 16-3584 chrM 16079 0 0 0 0 0 0 0 16-3584 chrM 16080 0 0 0 0 0 0 0 16-3584 chrM 16081 0 0 0 0 0 0 0 16-3584 chrM 16082 0 0 0 0 0 0 0 16-3584 chrM 16083 0 0 0 0 0 0 0 16-3584 chrM 16084 0 0 0 0 0 0 0 16-3584 chrM 16085 0 0 0 0 0 0 0 16-3584 chrM 16086 0 0 0 0 0 0 0 16-3584 chrM 16087 0 0 0 0 0 0 0 16-3584 chrM 16088 0 0 0 0 0 0 0 16-3584 chrM 16089 0 0 0 0 0 0 0 16-3584 chrM 16090 0 0 0 0 0 0 0 16-3584 chrM 16091 0 0 0 0 0 0 0 16-3584 chrM 16092 0 0 0 0 0 0 0 16-3584 chrM 16093 0 0 0 0 0 0 0 16-3584 chrM 16094 0 0 0 0 0 0 0 16-3584 chrM 16095 0 0 0 0 0 0 0 16-3584 chrM 16096 0 0 0 0 0 0 0 16-3584 chrM 16097 0 0 0 0 0 0 0 16-3584 chrM 16098 0 0 0 0 0 0 0 16-3584 chrM 16099 0 0 0 0 0 0 0 16-3584 chrM 16100 0 0 0 0 0 0 0 16-3584 chrM 16101 0 0 0 0 0 0 0 16-3584 chrM 16102 0 0 0 0 0 0 0 16-3584 chrM 16103 0 0 0 0 0 0 0 16-3584 chrM 16104 0 0 0 0 0 0 0 16-3584 chrM 16105 0 0 0 0 0 0 0 16-3584 chrM 16106 0 0 0 0 0 0 0 16-3584 chrM 16107 0 0 0 0 0 0 0 16-3584 chrM 16108 0 0 0 0 0 0 0 16-3584 chrM 16109 0 0 0 0 0 0 0 16-3584 chrM 16110 0 0 0 0 0 0 0 16-3584 chrM 16111 0 0 0 0 0 0 0 16-3584 chrM 16112 0 0 0 0 0 0 0 16-3584 chrM 16113 0 0 0 0 0 0 0 16-3584 chrM 16114 0 0 0 0 0 0 0 16-3584 chrM 16115 0 0 0 0 0 0 0 16-3584 chrM 16116 0 0 0 0 0 0 0 16-3584 chrM 16117 0 0 0 0 0 0 0 16-3584 chrM 16118 0 0 0 0 0 0 0 16-3584 chrM 16119 0 0 0 0 0 0 0 16-3584 chrM 16120 0 0 0 0 0 0 0 16-3584 chrM 16121 0 0 0 0 0 0 0 16-3584 chrM 16122 0 0 0 0 0 0 0 16-3584 chrM 16123 0 0 0 0 0 0 0 16-3584 chrM 16124 0 0 0 0 0 0 0 16-3584 chrM 16125 0 0 0 0 0 0 0 16-3584 chrM 16126 0 0 0 0 0 0 0 16-3584 chrM 16127 0 0 0 0 0 0 0 16-3584 chrM 16128 0 0 0 0 0 0 0 16-3584 chrM 16129 0 0 0 0 0 0 0 16-3584 chrM 16130 0 0 0 0 0 0 0 16-3584 chrM 16131 0 0 0 0 0 0 0 16-3584 chrM 16132 0 0 0 0 0 0 0 16-3584 chrM 16133 0 0 0 0 0 0 0 16-3584 chrM 16134 0 0 0 0 0 0 0 16-3584 chrM 16135 0 0 0 0 0 0 0 16-3584 chrM 16136 0 0 0 0 0 0 0 16-3584 chrM 16137 0 0 0 0 0 0 0 16-3584 chrM 16138 0 0 0 0 0 0 0 16-3584 chrM 16139 0 0 0 0 0 0 0 16-3584 chrM 16140 0 0 0 0 0 0 0 16-3584 chrM 16141 0 0 0 0 0 0 0 16-3584 chrM 16142 0 0 0 0 0 0 0 16-3584 chrM 16143 0 0 0 0 0 0 0 16-3584 chrM 16144 0 0 0 0 0 0 0 16-3584 chrM 16145 0 0 0 0 0 0 0 16-3584 chrM 16146 0 0 0 0 0 0 0 16-3584 chrM 16147 0 0 0 0 0 0 0 16-3584 chrM 16148 0 0 0 0 0 0 0 16-3584 chrM 16149 0 0 0 0 0 0 0 16-3584 chrM 16150 0 0 0 0 0 0 0 16-3584 chrM 16151 0 0 0 0 0 0 0 16-3584 chrM 16152 0 0 0 0 0 0 0 16-3584 chrM 16153 0 0 0 0 0 0 0 16-3584 chrM 16154 0 0 0 0 0 0 0 16-3584 chrM 16155 0 0 0 0 0 0 0 16-3584 chrM 16156 0 0 0 0 0 0 0 16-3584 chrM 16157 0 0 0 0 0 0 0 16-3584 chrM 16158 0 0 0 0 0 0 0 16-3584 chrM 16159 0 0 0 0 0 0 0 16-3584 chrM 16160 0 0 0 0 0 0 0 16-3584 chrM 16161 0 0 0 0 0 0 0 16-3584 chrM 16162 0 0 0 0 0 0 0 16-3584 chrM 16163 0 0 0 0 0 0 0 16-3584 chrM 16164 0 0 0 0 0 0 0 16-3584 chrM 16165 0 0 0 0 0 0 0 16-3584 chrM 16166 0 0 0 0 0 0 0 16-3584 chrM 16167 0 0 0 0 0 0 0 16-3584 chrM 16168 0 0 0 0 0 0 0 16-3584 chrM 16169 0 0 0 0 0 0 0 16-3584 chrM 16170 0 0 0 0 0 0 0 16-3584 chrM 16171 0 0 0 0 0 0 0 16-3584 chrM 16172 0 0 0 0 0 0 0 16-3584 chrM 16173 0 0 0 0 0 0 0 16-3584 chrM 16174 0 0 0 0 0 0 0 16-3584 chrM 16175 0 0 0 0 0 0 0 16-3584 chrM 16176 0 0 0 0 0 0 0 16-3584 chrM 16177 0 0 0 0 0 0 0 16-3584 chrM 16178 0 0 0 0 0 0 0 16-3584 chrM 16179 0 0 0 0 0 0 0 16-3584 chrM 16180 0 0 0 0 0 0 0 16-3584 chrM 16181 0 0 0 0 0 0 0 16-3584 chrM 16182 0 0 0 0 0 0 0 16-3584 chrM 16183 0 0 0 0 0 0 0 16-3584 chrM 16184 0 0 0 0 0 0 0 16-3584 chrM 16185 0 0 0 0 0 0 0 16-3584 chrM 16186 0 0 0 0 0 0 0 16-3584 chrM 16187 0 0 0 0 0 0 0 16-3584 chrM 16188 0 0 0 0 0 0 0 16-3584 chrM 16189 0 0 0 0 0 0 0 16-3584 chrM 16190 0 0 0 0 0 0 0 16-3584 chrM 16191 0 0 0 0 0 0 0 16-3584 chrM 16192 0 0 0 0 0 0 0 16-3584 chrM 16193 0 0 0 0 0 0 0 16-3584 chrM 16194 0 0 0 0 0 0 0 16-3584 chrM 16195 0 0 0 0 0 0 0 16-3584 chrM 16196 0 0 0 0 0 0 0 16-3584 chrM 16197 0 0 0 0 0 0 0 16-3584 chrM 16198 0 0 0 0 0 0 0 16-3584 chrM 16199 0 0 0 0 0 0 0 16-3584 chrM 16200 0 0 0 0 0 0 0 16-3584 chrM 16201 0 0 0 0 0 0 0 16-3584 chrM 16202 0 0 0 0 0 0 0 16-3584 chrM 16203 0 0 0 0 0 0 0 16-3584 chrM 16204 0 0 0 0 0 0 0 16-3584 chrM 16205 0 0 0 0 0 0 0 16-3584 chrM 16206 0 0 0 0 0 0 0 16-3584 chrM 16207 0 0 0 0 0 0 0 16-3584 chrM 16208 0 0 0 0 0 0 0 16-3584 chrM 16209 0 0 0 0 0 0 0 16-3584 chrM 16210 0 0 0 0 0 0 0 16-3584 chrM 16211 0 0 0 0 0 0 0 16-3584 chrM 16212 0 0 0 0 0 0 0 16-3584 chrM 16213 0 0 0 0 0 0 0 16-3584 chrM 16214 0 0 0 0 0 0 0 16-3584 chrM 16215 0 0 0 0 0 0 0 16-3584 chrM 16216 0 0 0 0 0 0 0 16-3584 chrM 16217 0 0 0 0 0 0 0 16-3584 chrM 16218 0 0 0 0 0 0 0 16-3584 chrM 16219 0 0 0 0 0 0 0 16-3584 chrM 16220 0 0 0 0 0 0 0 16-3584 chrM 16221 0 0 0 0 0 0 0 16-3584 chrM 16222 0 0 0 0 0 0 0 16-3584 chrM 16223 0 0 0 0 0 0 0 16-3584 chrM 16224 0 0 0 0 0 0 0 16-3584 chrM 16225 0 0 0 0 0 0 0 16-3584 chrM 16226 0 0 0 0 0 0 0 16-3584 chrM 16227 0 0 0 0 0 0 0 16-3584 chrM 16228 0 0 0 0 0 0 0 16-3584 chrM 16229 0 0 0 0 0 0 0 16-3584 chrM 16230 0 0 0 0 0 0 0 16-3584 chrM 16231 0 0 0 0 0 0 0 16-3584 chrM 16232 0 0 0 0 0 0 0 16-3584 chrM 16233 0 0 0 0 0 0 0 16-3584 chrM 16234 0 0 0 0 0 0 0 16-3584 chrM 16235 0 0 0 0 0 0 0 16-3584 chrM 16236 0 0 0 0 0 0 0 16-3584 chrM 16237 0 0 0 0 0 0 0 16-3584 chrM 16238 0 0 0 0 0 0 0 16-3584 chrM 16239 0 0 0 0 0 0 0 16-3584 chrM 16240 0 0 0 0 0 0 0 16-3584 chrM 16241 0 0 0 0 0 0 0 16-3584 chrM 16242 0 0 0 0 0 0 0 16-3584 chrM 16243 0 0 0 0 0 0 0 16-3584 chrM 16244 0 0 0 0 0 0 0 16-3584 chrM 16245 0 0 0 0 0 0 0 16-3584 chrM 16246 0 0 0 0 0 0 0 16-3584 chrM 16247 0 0 0 0 0 0 0 16-3584 chrM 16248 0 0 0 0 0 0 0 16-3584 chrM 16249 0 0 0 0 0 0 0 16-3584 chrM 16250 0 0 0 0 0 0 0 16-3584 chrM 16251 0 0 0 0 0 0 0 16-3584 chrM 16252 0 0 0 0 0 0 0 16-3584 chrM 16253 0 0 0 0 0 0 0 16-3584 chrM 16254 0 0 0 0 0 0 0 16-3584 chrM 16255 0 0 0 0 0 0 0 16-3584 chrM 16256 0 0 0 0 0 0 0 16-3584 chrM 16257 0 0 0 0 0 0 0 16-3584 chrM 16258 0 0 0 0 0 0 0 16-3584 chrM 16259 0 0 0 0 0 0 0 16-3584 chrM 16260 0 0 0 0 0 0 0 16-3584 chrM 16261 0 0 0 0 0 0 0 16-3584 chrM 16262 0 0 0 0 0 0 0 16-3584 chrM 16263 0 0 0 0 0 0 0 16-3584 chrM 16264 0 0 0 0 0 0 0 16-3584 chrM 16265 0 0 0 0 0 0 0 16-3584 chrM 16266 0 0 0 0 0 0 0 16-3584 chrM 16267 0 0 0 0 0 0 0 16-3584 chrM 16268 0 0 0 0 0 0 0 16-3584 chrM 16269 0 0 0 0 0 0 0 16-3584 chrM 16270 0 0 0 0 0 0 0 16-3584 chrM 16271 0 0 0 0 0 0 0 16-3584 chrM 16272 0 0 0 0 0 0 0 16-3584 chrM 16273 0 0 0 0 0 0 0 16-3584 chrM 16274 0 0 0 0 0 0 0 16-3584 chrM 16275 0 0 0 0 0 0 0 16-3584 chrM 16276 0 0 0 0 0 0 0 16-3584 chrM 16277 0 0 0 0 0 0 0 16-3584 chrM 16278 0 0 0 0 0 0 0 16-3584 chrM 16279 0 0 0 0 0 0 0 16-3584 chrM 16280 0 0 0 0 0 0 0 16-3584 chrM 16281 0 0 0 0 0 0 0 16-3584 chrM 16282 0 0 0 0 0 0 0 16-3584 chrM 16283 0 0 0 0 0 0 0 16-3584 chrM 16284 0 0 0 0 0 0 0 16-3584 chrM 16285 0 0 0 0 0 0 0 16-3584 chrM 16286 0 0 0 0 0 0 0 16-3584 chrM 16287 0 0 0 0 0 0 0 16-3584 chrM 16288 0 0 0 0 0 0 0 16-3584 chrM 16289 0 0 0 0 0 0 0 16-3584 chrM 16290 0 0 0 0 0 0 0 16-3584 chrM 16291 0 0 0 0 0 0 0 16-3584 chrM 16292 0 0 0 0 0 0 0 16-3584 chrM 16293 0 0 0 0 0 0 0 16-3584 chrM 16294 0 0 0 0 0 0 0 16-3584 chrM 16295 0 0 0 0 0 0 0 16-3584 chrM 16296 0 0 0 0 0 0 0 16-3584 chrM 16297 0 0 0 0 0 0 0 16-3584 chrM 16298 0 0 0 0 0 0 0 16-3584 chrM 16299 0 0 0 0 0 0 0 16-3584 chrM 16300 0 0 0 0 0 0 0 16-3584 chrM 16301 0 0 0 0 0 0 0 16-3584 chrM 16302 0 0 0 0 0 0 0 16-3584 chrM 16303 0 0 0 0 0 0 0 16-3584 chrM 16304 0 0 0 0 0 0 0 16-3584 chrM 16305 0 0 0 0 0 0 0 16-3584 chrM 16306 0 0 0 0 0 0 0 16-3584 chrM 16307 0 0 0 0 0 0 0 16-3584 chrM 16308 0 0 0 0 0 0 0 16-3584 chrM 16309 0 0 0 0 0 0 0 16-3584 chrM 16310 0 0 0 0 0 0 0 16-3584 chrM 16311 0 0 0 0 0 0 0 16-3584 chrM 16312 0 0 0 0 0 0 0 16-3584 chrM 16313 0 0 0 0 0 0 0 16-3584 chrM 16314 0 0 0 0 0 0 0 16-3584 chrM 16315 0 0 0 0 0 0 0 16-3584 chrM 16316 0 0 0 0 0 0 0 16-3584 chrM 16317 0 0 0 0 0 0 0 16-3584 chrM 16318 0 0 0 0 0 0 0 16-3584 chrM 16319 0 0 0 0 0 0 0 16-3584 chrM 16320 0 0 0 0 0 0 0 16-3584 chrM 16321 0 0 0 0 0 0 0 16-3584 chrM 16322 0 0 0 0 0 0 0 16-3584 chrM 16323 0 0 0 0 0 0 0 16-3584 chrM 16324 0 0 0 0 0 0 0 16-3584 chrM 16325 0 0 0 0 0 0 0 16-3584 chrM 16326 0 0 0 0 0 0 0 16-3584 chrM 16327 0 0 0 0 0 0 0 16-3584 chrM 16328 0 0 0 0 0 0 0 16-3584 chrM 16329 0 0 0 0 0 0 0 16-3584 chrM 16330 0 0 0 0 0 0 0 16-3584 chrM 16331 0 0 0 0 0 0 0 16-3584 chrM 16332 0 0 0 0 0 0 0 16-3584 chrM 16333 0 0 0 0 0 0 0 16-3584 chrM 16334 0 0 0 0 0 0 0 16-3584 chrM 16335 0 0 0 0 0 0 0 16-3584 chrM 16336 0 0 0 0 0 0 0 16-3584 chrM 16337 0 0 0 0 0 0 0 16-3584 chrM 16338 0 0 0 0 0 0 0 16-3584 chrM 16339 0 0 0 0 0 0 0 16-3584 chrM 16340 0 0 0 0 0 0 0 16-3584 chrM 16341 0 0 0 0 0 0 0 16-3584 chrM 16342 0 0 0 0 0 0 0 16-3584 chrM 16343 0 0 0 0 0 0 0 16-3584 chrM 16344 0 0 0 0 0 0 0 16-3584 chrM 16345 0 0 0 0 0 0 0 16-3584 chrM 16346 0 0 0 0 0 0 0 16-3584 chrM 16347 0 0 0 0 0 0 0 16-3584 chrM 16348 0 0 0 0 0 0 0 16-3584 chrM 16349 0 0 0 0 0 0 0 16-3584 chrM 16350 0 0 0 0 0 0 0 16-3584 chrM 16351 0 0 0 0 0 0 0 16-3584 chrM 16352 0 0 0 0 0 0 0 16-3584 chrM 16353 0 0 0 0 0 0 0 16-3584 chrM 16354 0 0 0 0 0 0 0 16-3584 chrM 16355 0 0 0 0 0 0 0 16-3584 chrM 16356 0 0 0 0 0 0 0 16-3584 chrM 16357 0 0 0 0 0 0 0 16-3584 chrM 16358 0 0 0 0 0 0 0 16-3584 chrM 16359 0 0 0 0 0 0 0 16-3584 chrM 16360 0 0 0 0 0 0 0 16-3584 chrM 16361 0 0 0 0 0 0 0 16-3584 chrM 16362 0 0 0 0 0 0 0 16-3584 chrM 16363 0 0 0 0 0 0 0 16-3584 chrM 16364 0 0 0 0 0 0 0 16-3584 chrM 16365 0 0 0 0 0 0 0 16-3584 chrM 16366 0 0 0 0 0 0 0 16-3584 chrM 16367 0 0 0 0 0 0 0 16-3584 chrM 16368 0 0 0 0 0 0 0 16-3584 chrM 16369 0 0 0 0 0 0 0 16-3584 chrM 16370 0 0 0 0 0 0 0 16-3584 chrM 16371 0 0 0 0 0 0 0 16-3584 chrM 16372 0 0 0 0 0 0 0 16-3584 chrM 16373 0 0 0 0 0 0 0 16-3584 chrM 16374 0 0 0 0 0 0 0 16-3584 chrM 16375 0 0 0 0 0 0 0 16-3584 chrM 16376 0 0 0 0 0 0 0 16-3584 chrM 16377 0 0 0 0 0 0 0 16-3584 chrM 16378 0 0 0 0 0 0 0 16-3584 chrM 16379 0 0 0 0 0 0 0 16-3584 chrM 16380 0 0 0 0 0 0 0 16-3584 chrM 16381 0 0 0 0 0 0 0 16-3584 chrM 16382 0 0 0 0 0 0 0 16-3584 chrM 16383 0 0 0 0 0 0 0 16-3584 chrM 16384 0 0 0 0 0 0 0 16-3584 chrM 16385 0 0 0 0 0 0 0 16-3584 chrM 16386 0 0 0 0 0 0 0 16-3584 chrM 16387 0 0 0 0 0 0 0 16-3584 chrM 16388 0 0 0 0 0 0 0 16-3584 chrM 16389 0 0 0 0 0 0 0 16-3584 chrM 16390 0 0 0 0 0 0 0 16-3584 chrM 16391 0 0 0 0 0 0 0 16-3584 chrM 16392 0 0 0 0 0 0 0 16-3584 chrM 16393 0 0 0 0 0 0 0 16-3584 chrM 16394 0 0 0 0 0 0 0 16-3584 chrM 16395 0 0 0 0 0 0 0 16-3584 chrM 16396 0 0 0 0 0 0 0 16-3584 chrM 16397 0 0 0 0 0 0 0 16-3584 chrM 16398 0 0 0 0 0 0 0 16-3584 chrM 16399 0 0 0 0 0 0 0 16-3584 chrM 16400 0 0 0 0 0 0 0 16-3584 chrM 16401 0 0 0 0 0 0 0 16-3584 chrM 16402 0 0 0 0 0 0 0 16-3584 chrM 16403 0 0 0 0 0 0 0 16-3584 chrM 16404 0 0 0 0 0 0 0 16-3584 chrM 16405 0 0 0 0 0 0 0 16-3584 chrM 16406 0 0 0 0 0 0 0 16-3584 chrM 16407 0 0 0 0 0 0 0 16-3584 chrM 16408 0 0 0 0 0 0 0 16-3584 chrM 16409 0 0 0 0 0 0 0 16-3584 chrM 16410 0 0 0 0 0 0 0 16-3584 chrM 16411 0 0 0 0 0 0 0 16-3584 chrM 16412 0 0 0 0 0 0 0 16-3584 chrM 16413 0 0 0 0 0 0 0 16-3584 chrM 16414 0 0 0 0 0 0 0 16-3584 chrM 16415 0 0 0 0 0 0 0 16-3584 chrM 16416 0 0 0 0 0 0 0 16-3584 chrM 16417 0 0 0 0 0 0 0 16-3584 chrM 16418 0 0 0 0 0 0 0 16-3584 chrM 16419 0 0 0 0 0 0 0 16-3584 chrM 16420 0 0 0 0 0 0 0 16-3584 chrM 16421 0 0 0 0 0 0 0 16-3584 chrM 16422 0 0 0 0 0 0 0 16-3584 chrM 16423 0 0 0 0 0 0 0 16-3584 chrM 16424 0 0 0 0 0 0 0 16-3584 chrM 16425 0 0 0 0 0 0 0 16-3584 chrM 16426 0 0 0 0 0 0 0 16-3584 chrM 16427 0 0 0 0 0 0 0 16-3584 chrM 16428 0 0 0 0 0 0 0 16-3584 chrM 16429 0 0 0 0 0 0 0 16-3584 chrM 16430 0 0 0 0 0 0 0 16-3584 chrM 16431 0 0 0 0 0 0 0 16-3584 chrM 16432 0 0 0 0 0 0 0 16-3584 chrM 16433 0 0 0 0 0 0 0 16-3584 chrM 16434 0 0 0 0 0 0 0 16-3584 chrM 16435 0 0 0 0 0 0 0 16-3584 chrM 16436 0 0 0 0 0 0 0 16-3584 chrM 16437 0 0 0 0 0 0 0 16-3584 chrM 16438 0 0 0 0 0 0 0 16-3584 chrM 16439 0 0 0 0 0 0 0 16-3584 chrM 16440 0 0 0 0 0 0 0 16-3584 chrM 16441 0 0 0 0 0 0 0 16-3584 chrM 16442 0 0 0 0 0 0 0 16-3584 chrM 16443 0 0 0 0 0 0 0 16-3584 chrM 16444 0 0 0 0 0 0 0 16-3584 chrM 16445 0 0 0 0 0 0 0 16-3584 chrM 16446 0 0 0 0 0 0 0 16-3584 chrM 16447 0 0 0 0 0 0 0 16-3584 chrM 16448 0 0 0 0 0 0 0 16-3584 chrM 16449 0 0 0 0 0 0 0 16-3584 chrM 16450 0 0 0 0 0 0 0 16-3584 chrM 16451 0 0 0 0 0 0 0 16-3584 chrM 16452 0 0 0 0 0 0 0 16-3584 chrM 16453 0 0 0 0 0 0 0 16-3584 chrM 16454 0 0 0 0 0 0 0 16-3584 chrM 16455 0 0 0 0 0 0 0 16-3584 chrM 16456 0 0 0 0 0 0 0 16-3584 chrM 16457 0 0 0 0 0 0 0 16-3584 chrM 16458 0 0 0 0 0 0 0 16-3584 chrM 16459 0 0 0 0 0 0 0 16-3584 chrM 16460 0 0 0 0 0 0 0 16-3584 chrM 16461 0 0 0 0 0 0 0 16-3584 chrM 16462 0 0 0 0 0 0 0 16-3584 chrM 16463 0 0 0 0 0 0 0 16-3584 chrM 16464 0 0 0 0 0 0 0 16-3584 chrM 16465 0 0 0 0 0 0 0 16-3584 chrM 16466 0 0 0 0 0 0 0 16-3584 chrM 16467 0 0 0 0 0 0 0 16-3584 chrM 16468 0 0 0 0 0 0 0 16-3584 chrM 16469 0 0 0 0 0 0 0 16-3584 chrM 16470 0 0 0 0 0 0 0 16-3584 chrM 16471 0 0 0 0 0 0 0 16-3584 chrM 16472 0 0 0 0 0 0 0 16-3584 chrM 16473 0 0 0 0 0 0 0 16-3584 chrM 16474 0 0 0 0 0 0 0 16-3584 chrM 16475 0 0 0 0 0 0 0 16-3584 chrM 16476 0 0 0 0 0 0 0 16-3584 chrM 16477 0 0 0 0 0 0 0 16-3584 chrM 16478 0 0 0 0 0 0 0 16-3584 chrM 16479 0 0 0 0 0 0 0 16-3584 chrM 16480 0 0 0 0 0 0 0 16-3584 chrM 16481 0 0 0 0 0 0 0 16-3584 chrM 16482 0 0 0 0 0 0 0 16-3584 chrM 16483 0 0 0 0 0 0 0 16-3584 chrM 16484 0 0 0 0 0 0 0 16-3584 chrM 16485 0 0 0 0 0 0 0 16-3584 chrM 16486 0 0 0 0 0 0 0 16-3584 chrM 16487 0 0 0 0 0 0 0 16-3584 chrM 16488 0 0 0 0 0 0 0 16-3584 chrM 16489 0 0 0 0 0 0 0 16-3584 chrM 16490 0 0 0 0 0 0 0 16-3584 chrM 16491 0 0 0 0 0 0 0 16-3584 chrM 16492 0 0 0 0 0 0 0 16-3584 chrM 16493 0 0 0 0 0 0 0 16-3584 chrM 16494 0 0 0 0 0 0 0 16-3584 chrM 16495 0 0 0 0 0 0 0 16-3584 chrM 16496 0 0 0 0 0 0 0 16-3584 chrM 16497 0 0 0 0 0 0 0 16-3584 chrM 16498 0 0 0 0 0 0 0 16-3584 chrM 16499 0 0 0 0 0 0 0 16-3584 chrM 16500 0 0 0 0 0 0 0 16-3584 chrM 16501 0 0 0 0 0 0 0 16-3584 chrM 16502 0 0 0 0 0 0 0 16-3584 chrM 16503 0 0 0 0 0 0 0 16-3584 chrM 16504 0 0 0 0 0 0 0 16-3584 chrM 16505 0 0 0 0 0 0 0 16-3584 chrM 16506 0 0 0 0 0 0 0 16-3584 chrM 16507 0 0 0 0 0 0 0 16-3584 chrM 16508 0 0 0 0 0 0 0 16-3584 chrM 16509 0 0 0 0 0 0 0 16-3584 chrM 16510 0 0 0 0 0 0 0 16-3584 chrM 16511 0 0 0 0 0 0 0 16-3584 chrM 16512 0 0 0 0 0 0 0 16-3584 chrM 16513 0 0 0 0 0 0 0 16-3584 chrM 16514 0 0 0 0 0 0 0 16-3584 chrM 16515 0 0 0 0 0 0 0 16-3584 chrM 16516 0 0 0 0 0 0 0 16-3584 chrM 16517 0 0 0 0 0 0 0 16-3584 chrM 16518 0 0 0 0 0 0 0 16-3584 chrM 16519 0 0 0 0 0 0 0 16-3584 chrM 16520 0 0 0 0 0 0 0 16-3584 chrM 16521 0 0 0 0 0 0 0 16-3584 chrM 16522 0 0 0 0 0 0 0 16-3584 chrM 16523 0 0 0 0 0 0 0 16-3584 chrM 16524 0 0 0 0 0 0 0 16-3584 chrM 16525 0 0 0 0 0 0 0 16-3584 chrM 16526 0 0 0 0 0 0 0 16-3584 chrM 16527 0 0 0 0 0 0 0 16-3584 chrM 16528 0 0 0 0 0 0 0 16-3584 chrM 16529 0 0 0 0 0 0 0 16-3584 chrM 16530 0 0 0 0 0 0 0 16-3584 chrM 16531 0 0 0 0 0 0 0 16-3584 chrM 16532 0 0 0 0 0 0 0 16-3584 chrM 16533 0 0 0 0 0 0 0 16-3584 chrM 16534 0 0 0 0 0 0 0 16-3584 chrM 16535 0 0 0 0 0 0 0 16-3584 chrM 16536 0 0 0 0 0 0 0 16-3584 chrM 16537 0 0 0 0 0 0 0 16-3584 chrM 16538 0 0 0 0 0 0 0 16-3584 chrM 16539 0 0 0 0 0 0 0 16-3584 chrM 16540 0 0 0 0 0 0 0 16-3584 chrM 16541 0 0 0 0 0 0 0 16-3584 chrM 16542 0 0 0 0 0 0 0 16-3584 chrM 16543 0 0 0 0 0 0 0 16-3584 chrM 16544 0 0 0 0 0 0 0 16-3584 chrM 16545 0 0 0 0 0 0 0 16-3584 chrM 16546 0 0 0 0 0 0 0 16-3584 chrM 16547 0 0 0 0 0 0 0 16-3584 chrM 16548 0 0 0 0 0 0 0 16-3584 chrM 16549 0 0 0 0 0 0 0 16-3584 chrM 16550 0 0 0 0 0 0 0 16-3584 chrM 16551 0 0 0 0 0 0 0 16-3584 chrM 16552 0 0 0 0 0 0 0 16-3584 chrM 16553 0 0 0 0 0 0 0 16-3584 chrM 16554 0 0 0 0 0 0 0 16-3584 chrM 16555 0 0 0 0 0 0 0 16-3584 chrM 16556 0 0 0 0 0 0 0 16-3584 chrM 16557 0 0 0 0 0 0 0 16-3584 chrM 16558 0 0 0 0 0 0 0 16-3584 chrM 16559 0 0 0 0 0 0 0 16-3584 chrM 16560 0 0 0 0 0 0 0 16-3584 chrM 16561 0 0 0 0 0 0 0 16-3584 chrM 16562 0 0 0 0 0 0 0 16-3584 chrM 16563 0 0 0 0 0 0 0 16-3584 chrM 16564 0 0 0 0 0 0 0 16-3584 chrM 16565 0 0 0 0 0 0 0 16-3584 chrM 16566 0 0 0 0 0 0 0 16-3584 chrM 16567 0 0 0 0 0 0 0 16-3584 chrM 16568 0 0 0 0 0 0 0 16-3584 chrM 16569 0 0 0 0 0 0 0 16-3584 chrM 16570 0 0 0 0 0 0 0 16-3584 sambamba-0.6.7/test/issue_193.bam000066400000000000000000000120571320451002000164430ustar00rootroot00000000000000BCsrelb``pp 23 J/JK,Ir .-H-r+L45NcJ -!Jp*112+12bBĐKhC.I @ %BC\KWv.FD6%|Uխ1-[L=jidAFV2l#EZ/Hdoe32.9-X,֣v&Dߏw=EeyX?|ST>*buccS10y[x+J/9=ITrO7=ڛzSEҳizAeXmۖipkx-66xhu|xv Ϗg?/o?'bG.<:]~ϏG8ґDS3~s:яbr'T`c(]ʝ8 "({ PUHvM0tDNfelP'kt}Osbzs r*y(Xȋy0_%M;h^Ͱ"8O]Ap88ϖA]aLg1s (!ς=3-{6Yz4O@1K"ώ^@#+ ;4TXR_;I^tNzIINs;ySa!IUwGt[cXb% 7E ,,enB'T?2[=^%Om7>lOp^qv~IԤv:=tN.ہ5* #=fO)\!%E<sk;VuH><3Ӈ9|q~^M5"oiCOs4.RGfs+4+ rj0X=n-:9A:S?>Y\;By4ȶեA /? 1_ XJɆR8^8f_T29u#wd|)#YO۩ĚoFDu15*kjͧ (0%LKxnkse(";F#Ÿ `sĄX&ƣiR252 n4Gtױ_Q [f{줗`㰷e˻0ϛÒQZ e~ހ2bgNz4r/$6_Ss?uH(6l%6黮anq])9W^ITAƴ|@2aZ|nLF8ZmA%P/Q47s6Q v44lN:Hto$^ċt) i6훴k=@E61r,-,Gwc]Q>\M*ճT2iI7b+R)ZI*}?jDEˊFwDsB4v3(eX:U@lLAxFD*I&IT)СOlC0Bb@r mI d Sn[ڒf$uFb@B0xw@"K̍u؀ȕu2̇-]lC4`a#BFP`G%wla8znwa~a|ƷƇ޾6 5NJ*Q3oeCzCj17:uoYwkMҕ;r/7ؠY8)pF5}4ƇIZ{m%ĵE]C{;1c9Y̙ Ewh,-A=3 BzXQDt-qeH bPHr[ bMNhq vo(x1NQ0uL/=4B>F$X⶘ڂ݂JҼ?CDؤ `Iţ;-cH'E~8oY+W7rۇS1G'Iȟ廸eBW5FJ\P/Q@/̽dV a#c36INK\,m*;gYxŲ*N rぃޮV@Β҆tl 9c7Sa P_@ 2Luc@DF\cS"K2Tn %(r_x `6Z>S֪Ml[QƶN  p8<Q,kՇ<'2+h(6lr¹ e>m}!Pb [\ސq[EjQJ0.2Ֆ[\mKual13֑>b f%M|Z G*V[FI ^.EkݒL+wwC4ʬ5zj0Y`ieCjijOl6k{sҔ3#,8]S஥Ng$i'-xMUB89;Ŗ!Uxi z~2p1o$cOC2yJδM#>T|KD++ъϪqȏ(McXqnrOO `JO?ڈ2+}V^ݒD߻D^ AgG(Mkn,_` U+&AzyL' X םWE.jzA? amlTa;^bk{')t>qE_5чyh~P? / pBjT q:b$-娀.qurL?&Ěr :MHXxOhY g '&|F]5{$0eYkTmJ ~ځ5r+T U?!>U^+xZ!D_Y=@l ,B^ȕucoAo6Fvc<-/Yd=z#՞|PžvA,RoE"Z{q.3/ʜ|ژ&{&a|k̼<zAdy(NȄ@w +)jF>k_ڵ(Z;9IEvD$D‹6ML" yfV|R$$2;tw6qMy+ͼr~֋b_^Li, $ /*Jra};X;0rVW*?UZ^r?N0QvYxAˍZo/r'^DQ-W]geDLO]yy4mI۩s^Ev;]qb(b O>])>NoRfp4lm|p:(_B/ox^ B@ydg{][-!75D5?+HG)H{k2 M5-߿ ZwӐo}Z@ 4D \Qno{Lt BCw+}{,YukiJIQ{=Ý<E,΂MhpVY+( Dɒ$FIH0 ^Y"V򦾯kzgՏ_{;_qv}_7=_q/,dV>w[G8I|y(~tv9-Eqn9qw3mLͮq`UqgWw6(n_= [tc{8?PV_H@ox<ʢgGr|bSĝ s'nG6wKy/_1Q|-*/rRnKߟ &u{q73ws+~;Mfn^Nrv1vNE~x)q$1-bp<"7cG!\2^ga\`- <Óx@EgP:p:^Ev {JaᇀDMC_!yX?˰~J}$ QuI"-|_ݙ$^Vh 鍋_Ap|(țccJH?|"l(ןwnLЯvl>O F׳E9񷌛nrϯ.w˞I1qecUITlSE6 v*R우ec+ #4dy3!O -7nY.<ܕͤp YtV8n;SK=6Jv?X$1& og,[`1v 2.YVĔI}1/yq] /r[n|)pv`@[NM:-kñE& $# "%Ԕ9I1.28X[Czl V dS*TFT\J̒ $PhME!SEq ϱE""l0_zȗ JuQ6rgRn3# !*F◶_'']2\-Lݨ0;QNтS8Q[^ uO0eesv\_ TW&?IɓWP| Iur lP+` dXEr&!l#sv/!Z#:ߏh[mb$gc11Z2u;Ԕ<AסGqlE瀹>8dG2®T8Csr'~?ړX[26IM"]rQpft'X'J%hz-c8jλ o6Rh!E`{҄;DAt2h:gQ÷ُƺ[kXG)aKe7GyIٴ)kՆxW|2(8y;8L MR)HS<DpHjĺ֩zU`_)Q|;fh5XTZ7gHȚCҴ *z>pfhϰϟ[2q%Hws-ݬV C|Wm!“?2@ͦj;awNQ,L S/j® xiRU9Qq<1Ҍr灗!ިBx+}p&_`6E`n'` N"z4)97 waX䘳1KҌ}\%ˈx)_3Q?`a;D?9J~"_^;Zv@=Sվ&jꚗ;Z)&*W?!`*N?of#i? vl$aVMGAnsZ^:@5`6#ӕ>)("z2$ QYJ?_k^ܞ4/v~К hn[HQ~;B!ǟSf5D:]2sa9?{6=b6u选3utCmLQDgX!I;] PS-w/j:{cZXiL"} ?A8[ vV;sؖUDIHJCd*=ΕfϓJ\{2s|qNww4_0Elr\&j+nXiYN/] PIa1C: Z+("2^gloH5? =T`GBS87?`31|/`Î! <-]}Ξ3KH1q's00 ϰM5уAN {7`n$SdzN 8ūA39Gɜ!>?4ȣ |qKɁ("mE'n$]Aݎ E4q3"7ַ 2 1$Kn ݹ#]0yܕ_5zʀ 9X1~4NG;>`X_$Lfuf"f` iP8 w1trU/qdFkR~gכחkflB&4hJje{ZǑ>}@ sy+e"8WTGNvbY+;s/`&lc N5D`l}M{ؑ 6+rI\3輦ACrG$^̷1O6HT%-`XTEw*?6[_ҡDֳ\\颊vP$-HAt`2U_e2k1ck uOP=52~ fԧ5.w0fc& k搠EB!p5}"猫w;&<԰Q_sD 882vxC0 cZ%FkQw2s 9F[R-+ۢVAEtQta՝@&R<9YX[:u9Pĺhύ4qm*}wݹq95XuOUy3lM'̟"Qі-/k"]?:" 0:en9sh:E7ߒ230c}. U ᾶ(yى)gAmkW!JjϳSfɎTvP6+9 x/_ub%Ew;:H\{?Yc11Flb%wno)g::EkUP{t4 " c'lSb?Q"Q~뵀e{2[um/c|jFmі h҆ iϟrQIE 4Lѓo;,ۭ‎1Cݙ̋CEsO.>RxTZM12x~cF̻۞'h.J3DHĚF=/ѻ B3EXBUʑ*+A%jQl|q4:!TiN^>UZDžbƞ\Z^aO0~0m9h>X4 uQC=i|,:վ7*2y ZPF =V#޹֑k)LZe ߫*y9ku?Rmk!Y1o0@,H6%qDB@rBL؝ 2iG.8,&PY'\{P(#Sa&:b1G<;x܆Eӥh/4ANjm͢hqLoug(memиq,u-Bpm4vjXT'㗴N͔5I/KJW o0s ҂.6bkY{7j;|Q#pYmdTb]vR0T}pXeWjv˴ƑmP'YU2elllOnA]o3V9ԎX*eZBnTaX S' 6 ExQ!&SՠjJ2.CrrHw5 $LBSZKz5鞐J)rc=5Z>ĮwSWFMxUL-|(jqX̔@w.L("`;BqVMPB1Ȭjy]4kTK`* OoӨٯdVk$Ao*LdcW.kJ*dH IM(CEh%} WӪԛtjΙRzpCU?ZKQaݠwC9pͶf2F6 ua3$88|eWΞm%i,+ rscQSf`O7H#`6iӄYaX[R b/0B?n%kR~_C z<_Aȶ55JcJLv@rlGqnCe/Q&~6䭂G{tx!S)s$v WN@/,{= X#J4$mzk`ø@I4տKもrx8 įڻZo$4_:f[b=+i+ F{QWT GlT@I=tp1rD6Lz 5`fSFiP.3ﰋs R&{y҇:F]CL+أcaOjFWxZ/njIcTX}-:D d6PMMkc/0, }6àCrhj+:>7$wty n}_kU3 dE.Y,ٍWx~Nݭht[w#cZ%OsQ1NtZŸ.,DIz u!Ӏ_𿆔>՘1bl'"[,Eȩo2gg79NlmbGX_{5/ջ,]ƩBǮ[a  1 4-bW5pOK밆MF]"ַDAa!l#fv|7x/E[b ;f~oJ۞= u^~iC",8$M`̳5a}*:_z.ORݽbR!?;kf*,iu[HW#vFNEUe[uTFpZ윕Lc y& B7+bQ!ء\)S*(zinԷ#E!9)\0[b^JvmjVm)lOke1,x }#6GPׂL =Q~$@識E5uy|ټH %DNƱӚC,vD9ZvW)Gr1E#@;Zd|4 r0")D:@#~PIyH0e$=*2ْ,#xb/?j;(F EYXU4`d/BIRvцJ~,*SOUu4,z(6nURв50Z==AnURIBd ag58EŁnC/1`Hci"gq/v,خ$^vd/{un+2"uFSJf!'/k cJI?d^\?ӎP;=w0- 8Ū6s~ @aak>Q}HXÌ[$Lb_mZJ[n i VJrI^Yufŵ?L ~Z%lW܍m= ÎAM'- ZO ooh%?>it8_Ւ*0O谍nVuJVDf_U/Z5`8_ErΦ~9+"K|ҟmmɀ_^N>ޯ/{_G3TqB\*iqPEylo d *h8JcxqgQB-p%;IoG SuL8O~#CtX#35IAR.kqqH o x9@5H֡ݧ&v;xBOS42nNzﮂu{2soX(JC-5%5v;4aNVֈ{X?ai %4 E=-ug5ڂAñy Wc+_S8zm_#LoV[L'΋nyqw1|~K^Ievב#\NUhy9lͪP &,s-G!z%+ǫՏh>X9c"n*+vtʠ֢" GuWlV(?ɣ5d[nǤz R}+A2 VE ‰xZtmi2;Mh`7UY]hAiI݅,s ӣׇ͊`}c07Be (0&k2Mc ֺՔ=,)*-Tw6AzTC3Obq ֡ՔjvOgݬ3EDl2߆I<"SᝮUrCjXQUnyb,2ȘZ01 Iq7+j"T®C :J8 LտoUi|jjRhMcM$!^ɐE92ЯB~gVb}QYq*Gk k7> #evc\qع{jC0:&!0F°*,CWX.uW ] m†5>.`0 z䳡#aN zT)]߰kRx&c5?C~qSNOWps"ܟ@V8oÉR܈ 8ۋyOdt?ѬcK ^PeM ``m- P3@% dVpz ՠXx@sZZYh |Rc5іf<ϢWxkr0xTZ .rWD\qӂb)޵)IQ 5'a`[RsKx k!K#p xLX;Jv2WruAjn g̔k gb:LEveq2[-LP LGt' 'Fx4lȻuB0'_c&E: Idw2mx^cCIú4dE EybA(wX#=O)S6+kX k 8/Fa.1hVH#6VMRmb}6*ﮂY*T/qfjT ƕBRoUdAzVmuGp#Q?P U>j lŨ}qΘ1P?JǮP<9b; R*guεAޟ!ݚ,QyZd߃gcOT4\P;.hR,hz{ptniۈPϑ=m^',B(P wXCڽ\.^ׇz~4.QyWNѣixO7G^c{ hZLl$vz5V Iqc_ur]-@T rvuੈqqoMR}qسm. {1^y lJ >F->ې"iAP\p@ _m 9v%MӀGHL}j #%{zp܆uf32I&qEHNV8A:b2Ieyx(4#yN'!dG^w݄IǘGs85J/?`_<.~)Uv?Mft-Bz cGAJ.]$&LߢPy (B;h^ZR㱎XWb]i? XkF3"j2 j ^um$mp -wN)~H4x0懤VAr`?ЋuĶv\ۅ^ɉ@gΕ[ÿ=HKDtXsXB@{P a]Η@D51tV^qE-u9T.lWp95KAk_GJ ss yۀ'uEv\GS)WTc &ƧpH +AOCȷ^%y%}+G{pbnl i< 79i؜\ a;c0Pb?03\f 7IHM ]|o?la1\b^ᢛwd@,Ӗl'-.r_!%id6f @uPβJl"e†&\>*"⺶o[d;P oD~h] A9tښ\LcԕA%5Y;# 2" Cu`fCFp WŚoiS MC:@mcq:mt*pFșԖΎCF*mp=dov1m ~V%p[}8c4 %כ:| Y~ LKW`H#vͷӑp&yUYH%=$x.gۏb?~C#~y>\G:Jڰ'qv֌>ql^X?dv;:bۮ41,|XxjzVnfnW\]RBVy bz6LJ4[5@ 2l&.gp`K=<ߣͭimln9Zަlbm#{C&$t S_JY<H"tǯyTVs8 t9. أLr$rK"RmTDV^VoM{u 5yDpwz-L(Tda'&pKٕ.R&ҽ0Ks*e!Qjh8#e?m@ђ+XxF@L׫fIkfv'~z8G5D\ZGC=[53K0#ht'DC. 6n%Ifxj+Ot(R_`[`#F^cQt1hl4(a@qsu2AGW*n4osA O -ù8g]rL[⋯ gpLi˽) PKcAz5n@XsIns+÷ǬF?bbECJk݈#<'@uN`a %uP!}[<ĺلv“*] ~\4_u>bð:MfH40|n46n@XyN%^?P'f=!5FJn̲bKÌޠTJ{[hSѰt;/Q( ezMgݶ7ϛ {nc萟U`}m7^7sCƀrb+d24J5x䷃@HGsr~ӖXϽs-#v,l9_Ǡv]jy4σ<W$^ęIbeGL'"8E 9E v{~ P,/"r]Y̘YS\ćl]@S(X#m>ŚF[c$1EYM6$S+OZ$X{d'N|鶝sy׎Q}_}Tؕ\~k_k|UF62$ +R`َY9{kEM& `B0d:e2)r-aax+ bLc!9y–`#mހ>IPNFbibċsFo]VmtM|}0x#j3pыGK]}/X13DGETuaN2v>[t]U. ١VGK}]mzQyC$\NYz~>m w pr| M{ qPt3eNhPO>`܀ AJ?l~JcD^V2)݁]<v)" N('$ȬL/b*wW Pu]!AfߪH1,a=_VA_6 so9dGTn^7ʕ((ヷ߮ߨ#d}f9`8i2˂QAָ`F5 eܯ.V Rxa~aoV/?㙀?˻ry&YߧaNv5L7w$EY VJGïʬhE̓IRN=e6c,<܅Y1q3v \^,AqHò])k%Σ &쑄ڂv]s4A)LG*cҲ*r^Kt n:1.O?e}K"`:wn3[$T, 1$cWz&o97h}x|I;Εp~Toqf;Bh%;j=~ԟokP M4_o8Hﲖ[䀣{N]@%ޤi,>+t;<>Ed^,.0UɶTx:&$mX"O*+/PW ~!zd:]UiJ/Du=&r[[>Ѫ.fR jsR[-d5tyJe7P8d<2ɲGq-IޅJb(-;5`*1/}c!M^IO"i_ۺ]F-w7TqhMسwܹI+rυ~~ NijvN bvLZASY"Z) ZR-o1ݧ5Ô6sj"׻Z]Ez1BAc9Opƪp"V` ? /0jazr@QpHOHNF&k1'{$&Q(\^+Ys5>j,x$6BUuQV?zWmީ~̛Cf3lω|H+[JBw,'U kZsJR׻Nx&7G:*܉n3!YtqôiwZvJW\#7׻D˰&!ۮh͹& 9 ~Q{(Vo4 %~XOGy|ĈJF(G)o$-ʳ~v۝u j^϶jvӉJQnKnҌ@LnӖzIK5"LŒz=d-HB[2ވih=7SΆ0!-9^luhSsEC_k=G79B AuĎ9ɯlוfr%p@ QTLUy!J߉Q~X5fၲvH9IrY*E|٭Z^~#=r "Uw)!kY5h FhR#!Cw#b/::ƃ:)Mz 5TTn؍V8Xu v9}rlCuنr>} o|c`R31w ;`;ڌT==nǏ(i"mfDrf)8%gWl.s΢!8[ z|ε聊pעo0ij[Q<ZXC[\}/8T~!j#XL8(rjvZ,obyS :pĨ*b֌ !*[BC  @oh l\[/@Q`@f.zN|T5aUrw|r쑯pt3EF:-,Ndd(`~6q#f3 C~E9zYcxE@cʬ&Wen%<>j}-O^?^#Q+rX FQ!$Ks&L.g NjZ&*(ƎRj]/(Nidz<ޝt#ǯ(?igR]M>kR5J:*.R'97bh=8D"A[`,wUj Cr<3Oe{va\Z]a^ڽ; {FKTsUtXE vh^(SqYs>TCz`f};;NCwa ] 8V?vt66dxv$puM,8(~,`џ:1~ld>f4S#Oa=ި д9?\] tit'vzc'qA+ p4[2X?I8Jr18c?6ѓ`FґW,٫/\]`f-y@SIfMR;>q0PaEũƱNɼl2YD3BP%-1TXmʋeD"cCِNNV;'zoٜ aKi4]9# $ݝA;2R {T3}^ `@͛اGMsܼ^aM<+&8 ؁%IRӁA^t򲏅І7֕\3)jc^ymW9&Dk F5v Pנc ']Ͷ5LʡU9%qtޅ6[6\^ :JdBry [bFQgwgiHͧHvc)eG뚚:]ZQ$Peڟҥ 0PYzPE 'M ҃Yn v)'iJR62)bӲ0͉8a"ĚO~Ùwkrʴe7`m[}>Ðz!3eʼgӦd_KAqɳ穰5kjߣ~W{'rȩ 㚞Ӟ- Bh s$>BUt*dP~(JGJy',srds#-9eί5swE2Ypy4Y - ty,|ac6'%=.c^j 9co)<=yqCv渑)g [|)-w)@UOJf]#ĊewZab=ÑXn-v3>D#ZW/mFKy+rTD\ >u" v#+^~!h=i 9g$g:m ޣ1REѠhlgP1㲭(k^o>[;n9*Oگjv4 1%;\h:(8tOKmZh/)ttkAƥE=JΚ<tc~r"ZpJ7'0Dl|ɡ󄘤pdGIim#\|TnӚ5}O^esEI[Hv9}e[)/|'nYRU\q3試'7?!Ƨ]ZϞ+R^,,)܃S[1Rs'09s2OkS^2͒bx13ksmY)x0ˇyQ3,}k>bdGŏ~@v)п즪bH'z[hX i:W5giԗL|j_˳e ͖a>PHInhQ*xPW\n- =}$fMa<kv^\oX;F`2DN'lع]^@PPZ ? 5X-m>5Si2_l}Wzr&̋?9FQK|eq#!RG{:QPxKO/<79[̰Fi9r=iPQq؉ac(f%LQ qt=! #O/ݱ703٩e&jev83Pac8B>`}VzFź%>mKfK; 9pΨ1k >5asl '6+3R+pίڋ~EW`9F)b[6";LB)c&ͣV`6J[.<[=ބV5Q)ڟW6žEY_Oe *;ˣ,3o*8H{jA#`߿>027TcA]_ P_2DX`a=~I^z@A8.,w4eg4 ɆG7FRg;f O p|]*N4C1F.DGQd:XS4E_ũ@>)FWEFi#JJ]n}F^'߇ ?!~2,!v C5sgaQ@.2'A%D íWrcd|hҴj,Q8 V]}IXkflsoKΚss^'{qL*j**!uKZb¯cjEcVK/fl7r&,iɪBޭ%"=fcmʵ+`__ 5Y~>EE_F ,0o\aeJ4EQ\a 4*}0#P B1MrU)#\&+QY/ vi=9\C\*2ZzB`hUAu>Gb![ExJB17Ls_~',ǍIzW8F}^DɳЌdD//iuRm"2}u_ ={*ۚouͤ.,1J4@-$dW$Y{I0 ^x4ݳHR0s@!&J,r4 ~8G9.th2M|BX z1CmH:,V[jv~U޿tݮ?s;uI;;-6x_t&Af!ggy^X`O) {^G > p ,M~RyGvNEM)`EvC$!_d 8OfXB} ~1E36 N4' ro/5?Qȉ0 k|}BeZŽ`W|i]T4ǀlĞp1Inl2 NbZAl7ߣ%MȎ1XY;c[pN>/8oY%PTkq kAG]? kրSr|! pG-JGqvNql8<(tQB σ56ϿJ9E2V/a.k&T>Mt"a;m^j~= lQ)7otj\{6ub\lӥm8iDH{颗ozRk^j߃?Gz .`$rk^~Vc/c*>bxP2pЅbdHrqJje8pvep?0_%B~c}C/څd ^)[f7źK;YǬos(Ksk Όnqo>_,o) Wid[cp:ul`ȠTo[=ȉClWvY_*JDCAD }pĖ.l>C{F 홺JT`ݜyˊ=dҮz\>u #k`B;cMG-Yb wM4a=`+u8M?Jv^}Ս(OW4@r/f]"3XM'E:A/;8Z?NGHD3-_uEu{@+ LnwsAw4=xۗEL9JAD>-e¼pnb:A>V'.y(8JD3DdzE23233xgz܋8v5SXQ$^nZb+Fl S!wpw+w_P ZV!F;KX71qr+7m&b:w-S򎰜AI vv[F~}ձ&7-RbG \TƝsNJiķFχ!Cw(4 /ѦG!H-"xCKҼڤr îDٕ{T +T(y"R28 !C &AFjY iƱH鴉HWC:;3+'!c.TЗ)&h$7=-_ԝ?[[|΃Omz/C?d~ū_{|k^sqd/b{wnsͩ4m?ώe^8-]N #'wK͢О ;8&Ûc:גj<ܳ ^_gYLKc=uȭ?n{}ZGbG+{IC?G&?~_G>8,VxITXsPPk%;%쎅(m1  o٫8Q2go-|f [! ,ɞw/juXBdL';^nWfbXO%4 1jyP(ZrB'/%DۂKx}'eߘ$ K`K?Xah־׿z%^V!Xf~fY6u(QGa\79yd\S۱KTfyIC'ET==?yl{ >q{q땑D>XȻ+_k ;NDU۠LggN^`ެ I3' _~2BeLv"# (e[jGm[6ku[dWÏR~o? `G-־F[.6r:l$+@"!#Dl2o][~wzá֛}+P x{ uX}jkej3} :1rȇ5sSw>K!Cl [U.A3 Њ@9'L/4F36g)mUv6v;!7˞d7sB"ޑۓ= G 7ϓ_n;Sd2?rz"%*Ǡ!dZkם4i=νk`KrӰ 1K$A^-Q?3 RM3zc5UrJ!)* d% |3fdx/pQF(g>ƵGУ)O_Mُ+`sy0Abu"?Xz{P_8kXW&xBqMb|4*tla7 SDdh\lpo5Ėk}O嚳~}د\=^EOq=n4q[bٚD*yW)90搬v;ՂtPw%^ݷI0K؟`!1s`c'a%2~t ̡<5w|uM? ke"섥 v 87Dׅ SQi4tc<}'5Ne^^)8jܙ\`_̢KxH8֓I5ZBwh^Z*?i74XSN%VwI;$8;}W}EӭwЍK['j7*XG-3LM_كt?q>xf ]?kH׫Px.0Dajg 9@Hb5nAP0Xj!ꃖLV˶+IKB~#<ǘ-Е8 mG@<5&/LmisXueȶ]ސM+T].~c7k ̔/FiuߝҩJ \aǨ ؂o'4-ցB.Pw\"ZCzP"`qjGolHVnIS;<9htbHlpWÚK3җ1׿ k?l(5KbLV!^ㅈLs_XljZb.ߩb,KU:c~?vXFXb}HUrXn/3 yP@(nz,h2RnmЍB^`ח2=nkjj-`qeThӂO^!& ꪰb>4{l|n?صbiXIuY'P_D&}o3΋/L<$ 2gyUĤ!-h=n` ]0U^YS""MnهaBM=+Z$80͏NzMƧmY gv4ɃT:֞}ޘM%n A21^$n\C.4_MdQYPӻ=iRv>gAy)^w2!, ocn\Ieg~ klЌClegquR;U_>])N^F!_c~(cG~磊A$X]5&k1ILtL7vZE>Y9ITjF]gvztdyl8kw$`!7_9FF.[ǢYfnO,uo0bгVv \[O1Xy'M'D*;Du7*X!Xcu[d 4,YrҰ$!M<kFkt5!cxB~evG2ɤZ#<$CӨw|L~քq /O"hK=t怋5&TQ ^w/ׁ,K;+K9ix #jr#lΟs^L,hHN Fˑ_XHtXGD/!IZxNpInl"OhX~&YЩ< 3i ~g7%̀PǹTes!Z*/k#FZ غHxKE:CxmM5,tvuYLmKzf~Sc_c$f:E@ . (LEn[[#$|_D:6|@ &^srRzq9-#cYihÊnvYDh ›x|؀^0"h ՜ m,`y "z #`"~9<;3M?vW$ǵh0>KAYJ70G4we~CJ ~9<-B9sXŴŋx1\)9{)̅Ň|h#ߙi2o ߩη]Zޟ4Tx2O ,rfG9Rpmȣi99<(lXttvg `^{EDc#CH$Mk1=r[$Ѿ֝nҙV}a& Ϗ3~_* xJdmK]@Oy)-G u)L,lսJnWe@RjA!؜Ej6]}\m ໑Xv3E{3]^jNnslA`d!\<=~ 5X]}&Hb qaoX{xnt/UQ`yȽT)Uc鄎 KD41+|0f):?3_z{oco |a_;,Q:cnc&qDZؔϖE26gkm %髥gXŽЛA"|<9a}Ndx-aupgdE P')B'w6w=Nwu8`}%|^c%l0Aa٦T/pAk}W!uU X lm0*PDjYm7 ,ZE +qVMy2iԩ-O!/~`"QCro(~/(>BsN+Qy?&hbP[q4`oMLlIީ & a5yK/U]KX"QvueFcD?u41(GЋa^PO׫C)s97DbDMqUg+U3-N6,$tؖP5_:5%_1M`Hdsog4R;F9 vV޹>_\ )ޤZ'9l21{0v Pg<m";d ̊~CD矨n)< hIr`{'R]G4$B^o&a}Hx. PnF'7j>Mk2hYXy&/=ھdn{:MXAW! 4?5-ԵAr QSrf[^/EXu*,[}X+B^x>[yO"%Ue)F%.b .$̅nHd217?sUFA{HT |\Z+z3 JV4딌v(Ms\Z?8;e" EpdU)d y8?oa¥x.u.>d$d?S:2-XڈI[a=o `ϡj.럽V}X= +~wX'b}ĺQ#q羕xl0=@D:3!_h&}VbD&bkt. vt+7ؓr=ejXFH~]AdH7"V[X5:q ,͚U-xi"8EYq!Yd Zt9PYҬ]{[L#aixwjRf.}67u@D*kª Xɔr\nX~F L#͎/}x4{e3!GsY~BsMط8 c7ƺ΋WMFCX"TlG4뷙백gufxId4M<@Ef\n@8"fg vOXs>{}X}yҨqܮ KdHϦ= ՠږ2eҿVHTžw'zF@Վ[FpuP"|{TGʘv޷ F9>5 {Ԑ\9Nty}=miv c:w{螯k^rl6Iu 8AMI#h&wr߬cjl9_T#ɝd1EkӸ)n^z@ n*c,M5H:1oJKη`gE6U+.iuoD:GOA⭼Qt-{66vS>-@t#Y*_~g>\Ū, 0Ǯ-IJ&7d |Y]Ov{[^;h~X`lCX]i?=ѹdEUի>z~S X0l-Vi= .a-4Yn,pl軛 i۰yu8ylzeܱFCq̻qZ-N0әyfh ύqѷ}o3טK_[myq:g .XOwѥ ~c|D O OBð^ܭq[dX{\K,5n-)j R4B y/TD$M,QC{ xԻ-ڳ"6!l6ג 4֣9ƛy\Es`k{ a9Rxx+fa/m{G4q_?q&C&dz};+UUb/D7byΌ:393 3ʵ.x2gL2> جMi#MÂ:5X!23;[wK4L>CXu!25\ݔVn =W~\@;lJT('6Oڙ];AmcuwHL&O{IǡO7M[蓟ӻuK>dG UV`1o8`3oАi SbmJlt1 5moa|ѨH |[S\>clNlI}Zfvct a1~*z`]woH9KontB޺h&p$ XM׷A23%} hk$ɂ4t}l] Ǻ,gXbccY8*m}v#aލ':IB1,1I:R4X^}HGQ c]:Jy&~m=ԝ'oc/Gm+= 1bw23%10Uaf}<(L5ÏսJpȪ'm/Z;mg|ҙRᜪ8Ӌp%8ǒm2,X؆"8Q'"+*tmc@x WI5c^KZ'4 neu-+$DG*Nm>j]KC5V˙u`O3 )q06ZindHG i Wn_sq|ؙ #>ߡq2y-!MyKHL&bG m%5W𪊤KOS^c׉//U .\PZp[vNOyz/sN,' l5ĠƲٝ O%ɶ 1ݳݔX Xk6HuǻIǿUX)ꯓG쭬a|PO\@sOshKD`A9bzff2ޯ+؃4_DBw)jD l_!@߻4Kk'"4 ҖC3ԶczI*U߭!ll0ε5L$uKW c5Q7*_8|F Ėңж+wS[u%̌6GV囋b lx'[ܫOyDXX,Eؼϐ]h ڮ:/pN_owbh[NtJw+ Ruib'%&ӟ3l5JO4MZ|~ǼGgH5ҍ5|̨KN1aX0:c-ۇliq~7޻P6q7"l̖D %\=mpI5a mrƕq2CK4vu{'9umNf0"C[& SO!M1IHcOrI@f=I>b+`V`2kKq`I*>akl/g;-3#ٷO'9 ,;8 n*iI""akcI)ؓIuvq .[!oyVmL#(rFwj WJZylҒƀ{|UKBpPߏC%*e(,Ƶ(f]Z'Sa~AFqVƠgB;3xUx#, K#c4X=Cm%~l7&I yW&N6EAqR{zP+"\P B?IT3~̴Ψ>ZNtL["lտ>'6!kJR_thHqG!\+QW5o5ak]8bKh }c,K t6ȞE46 C?Th>R P4= ʩ]lrXqu=y jO߻X.r7*ቔ:} u<]_ i1\cd;*("ʎg希,{ Ֆz8<. C+y{vEXKzGlЏ~_ߕbe_D¯µY Ԉ\JUz8R;pyl?ԝ 0'J8qY!nx:9 \X32:I%>|LK[*kǟ _][ðfj^VC)@jjc9ٖ w D97@%JYh 9C{lQ]x{o'͚fEI]`Q=A:Z'3z.{ ԥ ja xI}/%F٢]X9y6{ړx'?>DȻA6%/ _RN(Vȓf]'e"F.| ,쟹nce@`^@QQД~eiKG.@ۡ(J>)dx{P!˪瘷5%S`]mAJIJKGv}-Ԭ`t0&='_Տxypp pFi ـNyDu#<>M qNF2{)p]=:V]$/PB,VE3̞=^DD=^֭df/qxpXlv<6r370?h ӂ[(DqO2#X(vVεk#4f /J;jz˺>ͳ_ԝ/"pXnǧboyD'zDfYQ i HX#/S(5s_QcNT0Zx{MP"fUG^'^֍LoXW~`.l''r.H/Mg8|_|Lb?]g dXϳtl ‰< C ?#?d^" >Y0Li̽ZЬ#"i"$AMtw'HD|CwoHc< ~Y y2mfp%h &yf @73AWvG K!ϗT,DZ O>ҕkĿ?ۃu~BX }l>z:`Fy=F4¾Բka)~ߏk+~\M}ާMY{ha7]eS4Elꤩ3tVvv  | oY՗lO2/ *0,̽QJضt`S%C?NA<<@+HXR]HCLJD?EHg`oezk]o1.svǔc?X\%?-lĵsGNa!w]`J 4ùEά\ypzv~"yG6VɾJXw{Oi/( 03H8(Ia ">9)Лjҟĺֈu1ݙ=)@%ff9[ G|X$`zbUUrp N:;T} d?OjгBCx=H{V$fT>s,(HKwόu gi+`v8 &`"p weDeHlD |  vyof{z^_*={T??1돮6f5}_^~\,$N4WO?I"ILy&{*Γg?8Nf.gg]-yyq~9eSY }aP'IfkCԨ,ETY!)жX0¦̔PN$5?lbU0ۭaga@K1ط$%b+8TG+Z R=꼪;0TgKm׶gf~~NE2;,d2qZM J0R1atRi(C m I(-++-1TTQ7rT+\ly=dڰ>Y;=lĨ-*1CZF)²s+D jRL baP v-cfBCb3a?kY?:['Wo=y'"^y+!``KC%0i'R ބ?O,ć47Xkep>hH5"pnm'ǟQ }p6:9BB$ͳly/mVKɤ*("**lNJ@d`?"׬xAyThݧu\1XuymQۘu'akj|=Cߗ#I1LNix 9_{ +6{ኩ#;7\v?`?=\ޚðBt[0Qr.s%꯺JGpkbm2Xn>ɮWzl[,y~/5k.//]ANZAXJPeN.XIʪbYY%+ƣ*y1p [_鍚 #8?>G!k7J |wz Zo]bOkrTERSg,M$^̛rq {1Ć3$ɶ-݃J5'{$v:Y`ohTE@ NmO9=Ėd;A:))r2C#cZWzjQ* jKRI6K&A#$a7༱S.&ʜ7y֘jiEm^?XC >kzC' -avp ~HU;u#.V**j"IUT{Kf [6ѽ=lq,aρIU|e\~=w{`dU"Yrfx[7a,ŧF2;Oc 0_vęBݙ?O,=pR0c cMɴ͵4-=鴚 N:MHkj?xL85q?>V?{[Wjվ%w o:6cmBZ(BVxkID07R&B Q)3fd2ߧ/ ϼp?.v|z$Kl7y (ϛY1h mfsw=w[ 7`w1YY/{K 4? \.FDFjDňRDPe-ֆVJJ)K@ 4TnZ+f *zd5k]vr/=&"ÙVTGMf3Z wt u:R:Z^N? ~1Y=l%l[)lRmnwؼڋ3qΰpQbM~;VWNDEdeEc7APE#8:1R`%#b`<@- S ENH9KsvufwP15QBCsambamba-0.6.7/test/issue_204.bam.bai000066400000000000000000002376001320451002000171710ustar00rootroot00000000000000BAI:JD`:JD`J/'JD`sambamba-0.6.7/test/issue_204_expected_output.txt000066400000000000000000000002361320451002000220110ustar00rootroot00000000000000# chrom chromStart chromEnd readCount meanCoverage percentage15 percentage20 percentage25 sampleName 2 166868599 166868813 29 17.8084 89.7196 29.9065 0 12878 sambamba-0.6.7/test/mate_overlaps_1_3M_4M.bam000066400000000000000000000731531320451002000207030ustar00rootroot00000000000000BC][eYmƩDEtLTwmkWggLFr]{S]թꙉHP11H/擘-xAAEGu.59 wu+[O'­u~mx=pT~f6vֺP^hf_^u i׶:BDR.Q/JQg0i.w^Yw\~Qz3q]?vzay,CbK+=>9c$μ ]d(8$C;Ts͎s|JLT<E␚:ĹVšCB2gy?l >Czcka3Ĭb}YpU S:e;Cf"f D,\"XKF9!C18Cv\:cAme6!mEYk@qMRF;M H.dۘK>4C~\""V 8:*1CflZ*AKXq* Sy kfZUB" čBńRå}>k&lht^P\G G#ڄ=ZY=ǚ|X)bjru)'ʎ%5W1UU9gRF!<ҚM:f-*Wߡȡʢec2̪H#56*p U2;4. VÎbF"HEo `,5*p<ڰ:CV n`ӱ2jU^U#Є5fP>.$/K)8mny%88*2=ԍ aЊ9&ǒG1=kBe+( ?[w'3d}oqZ۪k2 r_k\ #4 laJǡy^fEAՑ)aNA;[ 5 Tm4A)[d G̼3<دYН!yvŢ"T84JWn18D5̱ѣ#]s8{e # HB⩈Y9N}lpH7PFGbKTẺ |bcF38h\0Ɣk4I$Y\  ܰŖRў@3y_*eLRvȽ uhsI[^ A 0Wl }L{L2`&UQalR21gu9WͼvX5J,4oSY#ΕPjǼ7+ʭFh)s\A J,,%ML$U2IQ@_1bRgOCFfT͠^F{m*T`UV #Q|W*J'u*(4ή̫fPRA\%>"[GRrWZ JTg`rmMLms4UDAq6gq5vi`*RuYTcAn ?f\6v’Zsj2+Y"uT q0l-0]pوZsѶ4,N44&*C-fLMXS)p bD~YPrCU7G ]Acy0̱nL.2OB̫vla<VdFDvvT:od6e%|1J i\D.nAg%hc4-vEӭyc96Ad9甍>JQG=C}7a@PeBʑB/|6XD wWT5v5[-p hiI9B+ !6-_y)QםBhk_NO܂bn eSƢ5v@JsCz>ܽڒ31$QUcΖP'n?[:\ 2 .:nJ"ƌ-1Sǔ\P#C"8eMA(Gtyl9p4P@`JF QcK2N!޴3[謚 *vSnAhԇI/A+DQ Y&iH)/ĈI{;lr~%H\՜AI\SA͏SW*`uP:"$GM$L/d1ވ*\[tVpZY5$)@81Rl#?Puڍk޹&Av7֮moy٤Xyeͫמ|ٵnKTn߸y6׶om"ň?7Gl_YQ2O2ё#ߵ^ke99 G+WLsd]TQVC# rDI59!G䈎&$!o\,(Iݏ6Ž⌐!8|/Mprr OP>J |^[N.,YVQmҽ9qȭ7݇)v_Ӧ(W[M!~w6'u?xW{& >saϜ6u?[=S{?{4y^Xg%azol7{WVuw{L_L3Gurmgjgj~'YFMԞ}{6[_'ZIf35㞩=[;OL?t7~{=S{/iSy?Q };Mgݻ76T~vO~iռ?~gj+L-|Þ?_jfvoy\հ~V_fzgj?ڽ=[=ĉaO|˝?=ŧuBCc[+u&Kw_x*^,օ"n޺م`"s&0 0I`=~x  a< KfeFd;xFeɒ,b6:YHH>&kjo?y|?)2EP/͔w?3eye\onHRV&Z_7sV{W>o^hzV]$BQ*HJ2R?rYZ-K?\k3g?k+ Y/Sks03럋>W?sz6Zcjf]gz-i}Z :z5ݎgǀnBoȗ?conc5Z]loKUՊZT ΰ *܎RF.ʙLY`rL31Ϸ315{t80fW! 94v;umvh5ni>E(Hk}7#x(ϯx^ެՊe"jY3|(Y)'"˪ C%U:>k9^:3«ۦۭhڿtu{xX, ;ۏn})sCo40#R hY˒, HUSxUxåkFm3uwtzb~"@RӀZ4ł.$ (Ke 9"[*J'^ >k9B,Y5;4RӮ"B6hqR{L+8U8XNRE (&r9$/h Dƽ8^s{xgk * 46-g3\mty$^rWpw*7Qy] Un^n~+\$"* `J$Q2^NX @zqh!ow1 $^(F "8\9QPeId@$+,p)pN'7p#@#]ol?唳p{<6myJ6ڣyhojooJ' 4d:D'*x"]/U' K)BZ11o1Όg{x| k9co[Q_O r9? U5mU tS|-o!ۏ|EpȜ‰ˬڪr)W-VTRD#wTZ?jol`ȸFۑ>Bw:H( a(E߲-r$)JYypMGQ^DxI+)u> nN[t_ 0[Ob2] hZZ!a~cg霢Az09AU8EVH ady@C 7!q50`\,5xފ5mN}p/b7b+F(Z)| VJ 4T*wW)jߠJղgrY.e\3,SH@X9k#asC#7ڶkng{dijoCz-.x`R^Q.VT+*+B^8:p)`zoXuǽipѯ콳)Í9vhC9*ǃdLi u}ǐuEbp{L>ֱNYv&Wkҷ")w+to1=}XzC䂆ͯ+FpI*)edۀUPǠ+a|>0v>^[8l ,PM;SRǠ,fIDPVI/ -"" b* EX` y68WJnX1qllzיk^ z7v`;.zv6[AdBI$ SѤ,q"r 94E  FDzNDt#in^ov0o$G6ܘŽIA ~lYk]s/vо6ּў-#Z;3Ƥэ}9@VzR1ws݃YZl/b K@jZu Ar6'A+2Q,ẻw?{gƷYtvGN04UȒ}o1̻@'nC u?y"@̪tҕwIe"WB=O + Ỻi7 xC{dS!221/k{]l]mg_]c]o2f[6?A?klM(LzoqjL*OfLcA e|Y`I¿GHDuĝ#GGFg+*oep,7w;HX^)Qz Yo1 f ^9- ]m_[xz9^n'`1JV0NEQL / I L@A$E>R+qLfQg01n&op{*JO`5J:&d" lQ"eF)N/ 4-LY`3\Φ]G< mUb":ݾcA0vu9zfԛVZoP$XTo5E aśd"d(_+4!y"C@C|qD׎svdzޜ&hoWWYVmX}NUQ}wI*w;>DW W+W5P8Va2ʔ@‘pD,(<S+6Li{(8^1tlFWFݹ\b9l,\Pރ:v}}D?YZoF dXj`H: e$8.ωyRH(ps S'&v h˩ CjaQ} &8 E,)H|KBVUDKbK.*Ɍʠ`OH 9(Qþȃ7,fޒ>mi4nt6[s`ɠ]li`~f[k[͆^o#(ӱ"ƏlwyRDiDt,S"9E1lX ;L^cj5i]U7:Cm;)wB|L#7Z߲@͕SQځ!20DUhQ,BQ.S {;=f'.&SOL"<lʊvVL7Y{J*矓\!WK9Q/s|'.BHR yqqrN\K+8}x/ZZ[@FQzDtn }5pCXhՇaa>_ׯg4]lZ&,0 qMe>/5-/ Vx[|}0[khLXcm 1f}#<2E'6Iw5<k@Wׯ/)5HByTJhVT&H3t*3O;[G A:L Ѭ֫uZk _mo?b6t;-Ƨu;zJ_y]}zX^=@ȥ7/O+pW<7]DUSR~\TwJQ 5 7Mz~AO@緁0?ڂ_D4R !7 dZR5@iJ*p-RgX̘ɪ[p>Q4a,L7WF`2&ZН gl{v^5h6a(3nJ %nѫeGSt56|UWo W\iL rV.*za's x;Jut^o7_5m郉0,T1v6bPc;11X;u,MM*2 .A( h@9tQbG`]l?_!_נ#ݜFnN'Jo.>&F;{dm-kzQW5ZQ @͔(RRl8IsҩBu? :fFl=nvM0 @TwVJ.tZP`%A<I"A H.fg^m6OMs}v/}m:m!j Pb\9lB)'PT48`i_"?7 ;[Oڞ- Fc6L^4^^r̳P NjT\&d)<9$T"²e>u 굽+=h8+kwy][7& Ђt:!ה8c0<2 >Faxp{Ds2S8Oڍcq.œHؽ7eOŖZNg 37$YT8Ī9AX5,zCv~D~vowډ=i.sL$V fe>G/eme$LP3Iij~gCpǃ6~֘W3m֞hhnv sث-@KZT 9qW1Mȗ"[$)J!H)xd)# MxPfucMj`.HC EacWV a$8?&5t>cG[pOcmhz5|?P5IYArv IeRUHY[r!|pnYwCKXp=7(z G}z`@#YU(2+ ^ X!"u$v.o>q-A]Oq;MߵnMg7]\6sc}cȵvsu#ȹA؄&΢s2 b8^SŸbζ gAc51 p3@_p4 Om̶8g{O*|GFV%TY%3`cS \/c0/`*96>o:jbnuu^ow zΙ&ߵHq[%StKJeeYXXXb3A$/Qw6'҃F u߰u1{MMpǛ8`ϳy^UE%/f TF?bڟXv]Y]һfnEJxhX1 t2/0 4(+2X|"uƪ;=Gy̦I-g]^Fao:Le:zТ0HAH)h;pFY,ZWZuUL|F.AD S!AB-%6DIq}y>Svftzzͮt 2̺m`^=@~guxh:A;MꊒygI$ w@y΍g6A G1`>{O[nk 7eV-[4 ,0qcIhr<BoL $܅ lI0I鮥pmPAdma5/^/Z:Rs6Sbs,S*RLY(ѴfeI BvB~?ZjctFәxkUGyhrC/ZPf )"h`5F"-C\/60H:{AG)T5֪5vjm71L?:?k߉cpia|,EhК(^蚮ހ>[hϝˑ#w4Fj "ӥ\ ]2BDS@K7uA0UMқ7Ԙ_:!]nRGIa_õX+uqzO+qF$EGDҢW$جcaf?|1Q>\ 1C؞ 2@t$ =EZd YI`@Ss#Eni% %a*XwI tȖ|>OJihȷGx^I% Y6OPty4ϐuH%ωǭo[q YGq7ajݛ:8NBl_6N!@pmCX#rBQ|/l>pX2x5}k8􆣰}~m El!OH0LUU&֋ieP <nQ_i$!]_c}rNl:.uFchWfHnw5f'fwWwݫonQH*o}3ms}w&ޅ׋ ]6*b>h|7/OykFKՏ }t-Iڟ֢Z. d!S%l)Y. [$i0[KJQxtb->+X)fZ MoTvhլnZN3Y\M*J_OGcmmm5$,6]<# 4+bCXԁ^{.}֬Zɉڎcr _٢,ˏh')Br (x},4sKs|cO4e`#.42k׬8[ٍ?s-53_>뇙ow'}6|ky!d;eeVtE"Q92OӅsWQ@KJxy1#chd7# YFW5,[P8U.s҇ߥ;}sxlLF"4AMy3'%(1EKGYw&tuaBW7u NU8$7OiG󏻸[qa$۵n.,Cd !3"QQϨ‘]ȋwg54рuhzxyǸ*8;~խ~)-HEe1\9q@xE.IsNK ,t zV4[kp_gbw3]ƯnCz.REBy"I$%̉*UAJ`["-L*C|DAY\[[M84*ܻqA`AӚ ضtKպ˯p߃k_IPB׏emu*Q,JlȰ"O'9gӬTR Ɍt8EUhVhCF4vF;7pRL|-Fwڌ\kdcp[sry>@$XE*p0NM J%So,6}xm jM0d6{L'NШ8rdEtxErd)_`x&3X[&gNektcTv6{:^؝w`"u_G\ =0:0_ { %XʲJsE'֓549R.sAT]/QRo5Nӌ`1 w}[ƷWo-n:q j9mCgk!\LK/p->*N>X7`:xMIYoP[$ׅ donk,VCT.)H~$&-`"mIf?LEҀב@5qc :>4ڟN~5hXV oͦRYtȠEd19,fJK}liVjiqSouwWV=ͣQj͙Ɓlkd`hj 8E~&hFD3ghqTbK_IxԖ&>Dj:~aWf^ВبYқp$Id.A"A_?ˢoaңOBܽX!o p[HAy"Dhu޶/]6h:Pa.X & *d*[7OhŁ7v|kcA?qP8Y%% d;*U ƀ(]c1gl:^n umb E3a#yԩB{[ғ6"2lH[@HvoeL&)7njO6DQh+dvՍ.zL"l:bpRÿI +$y Q̥,2l< b?%H'jxuv֞o&۫ e0?Wa>7Y88ZI)?ϋ9(S2UΫ9LT&,6˗Ez VG 5[x:lw}sbL'g1D~!ٖ&! ÀJ(16̕`fYdU}"+lȞC?۹wZ~kmՀ4 a<Ày0?6t1Op/a EKtæ@I9(ȓndw3]tuWi_gWCJ}@iI#ۚgtVJa @|[ S[ PZ16u+F6F-:"ߍ`~= mc{=wֻ6F;i^OzN%D'7`(M TJg9OR Z`, 2#@ _ȧ_7K,0I膮i5ޅ['E>88-TZRP9h ]ف}tXô?11^6u"J*VH YKK w|: $ L;΁WAoFci #ȕl8( %AT%(E$H2;KKg_O!wcĕ+0"zL`Q⯣ҿJ!z.fhU%/" W,qB4+O>xVEyn]f4;WQODU{<:'j1;nI|SIr.lYQ/b.W*E\zF^ J͞|̎F}:˻ ^@~ߜ0N,3x<׵ڋb+|gy(x!*)B. (1aؾ+78~D;0ߋկ gwwCZj'jس}#-[!gG". vERΔrhD{"5gh*~\ $?A:Df2cģ!+gEQwNJ$mWF{nRmӼ﷏wx 4]<_1Y:p"{#(g2+ *x<Uo}$!cDmܑ oTۺ ͎a6wLx25Җ`9 JN ,}_Pȣ_ҥWӅ3rJx Oޢ nmu|5a?/,g4wH}E`_OPx7??Cl8`ՊRqff8rQÉqvfYa}"!çw@Kom'&q+b&A3Yo:szmU2 ~p"vyAExFyiSD^il >u9\|#J$}HFv'Dǖ?qy>iQɈ MWf౜H&O\V3{ƨ=Vnju QEml맷kǓ-v&ʂg,`tTp _Lᤳ Y ~6>gxy\g^W^` ÇZZm_=2T})śV%t8! qAxB-g3C7؉Ȧ>w? ;ڠۨzKk5;ixB;c_N1Bk@ WU;V%+IDxI,uܳnĂy0ĺ{}ZVc݁ ZSo-BC𤨊"fֳ*Qj/R"͊p(dž&MO'Flrp#:HUGͶr'Np r#e"H {A"#K~0 #̈ fwv5}牼4hY((,緳 6 ORħn*JL?k.kX@IN,<4Ne䧎:+mZAL`3$Ox8/c7dg?~^J(UœpS O_l2-Y!-fHnҐ$ֳ&AiWNF.fCo;?_&!mA'kZW q*SlExANR^0y.~ Sjb)nmIZlP9Vvk"yBaB<"=/0t Rk:jq?6[s֪kfZ~x"N<(AaH\ST)'=JRe.G]ȋi">Ͷ)@ 2`۝4utլiFaFGa9N5w]w6u1lI iYΊjB! UTv̓/rhӬvjVa z]H\LW |YG؜Oq%^G h9m1o9!c8䦹1:TEx8o~tTρ$[%$AP z)M)vzu|H3_+b6%6ŘȎa] vrEet|8۞طZ K$o\)\&!^R")8C:69sq׷O8q؉v vI ,# JZT2T*ϕp 2J8=# Ձ4ojY}5(^goo7+[x&aT}R`X 2ͨ#%FPD8Ea)9 K OV XxuϞqg4;-  exK,s*˗/rL2WeH9E1]w)bc#-kL(x6kLԻz۬zFbvپ9яq'A`ݵČlU*$yF$Ex 踋1.jWJU%Zgot#E.SL!OWS9( QLjNV~xVp7C*4Me}ŷ 9eďpjm$+ۼMjѯQ5J.&|3j;bm?h9Sȸed$E)6^dz='ٛ9@6@4Hm<,wQg0̢i(ȔWTőF{КMD6ŀ kPI&>5jOV) c |0eFUd*j9'* -WS&K{ դ`&1Je;5&hI2>r6daFK7pj;S,"әh(~<@w5[\-D]#;'c)ѝ:FO u hUp%Τ@ ܊JP9.2Dux9 h<\D+hl`G8,a%IuQ[jŢT MsbZȰ f 9, 'cbMT:6%"İ*d@uRdIq )Gwױhh5wۍΠm1n8e|#;Lڨ F5}@04.*kQTנ LB,Φ|du7V=\Oٕ8f*uJoD)")T*N7d=&L6a`3daIkÆX̮ߣ$zzԍj^8cΔ1q?a ޯ)1n==w!K $$YLSjRܪ<ՠeu/SͩL 3ǭ<2|9ޮg}d~.^0ogbcs7oxRq $++'7ytZ3`YK'ZϘq7:nF^2 }ڈp af<7S=;:$ʥZ"'VI" ,(NTUQEFƩLU}AKϚ=X&-Xcg:ݫ`')5A/@{ '׭{ @܃ o!OFCRR Vb8 59s?vmMl ~n[W}߰SMٮ@ZɢM«J\";/,6e`)<[3!Yأgd{h>i:^{;w;=Mۆ`̩Eah U luw- 3R`r^.ioE똭Lj:fg0g7|Y'L<S6=<{*0w]"%2)dMrhw_ׯIY&M~;q8ڐj*_%8$ϜRP25eSlSpfԊ{Gn']˻4_$hҔ""L+H{hT%B8j(=s$Pzp.c6&'X6NÿevaF,^BW!O/%,Q#BIaKBU.Z+cE TƫP'(*m2hj8̽>j82^ù}4ۙ;àۏn&W626B<۸xHo׳ccpOոM1jCbFeF,'cBiz— rwr̓v:v;WA7 dܷ;6[fs;ӶF_7c5-Щ3qاάVX,,#EpMB֩mʆȺԢ z^P;83 ׽sm4Xg;e.7nQ{_<}yٺѦ7JʇJzKZ O P0y z)h BXIS&+V StR0iuݎLӿ ui[Nڞ7N*gF~8MޭXIu} $&1MKI J3׻űE]vE+)4} B 28YX>|^$d d"ʄѢ*&Ǔ0-(O JVO;,[%),L)UEen2Rb^Hv3zrZF0N^^uAFx?z_m@9-VւaՊXgGY O_M/Y]np ˙1L (y8 ool~T&gs&+|خbqW8>FJ|)_-'E _'t`&hXA3.Nel'YWAi,jZ.%*W IcP$Rynsgl@Ӵmĕ^\8[%AFIDNQm?0K~TT)VE+ʇ gBxb 9 Z⃦pljGVmOMnϻ F RGj-!n,oJ!y_p1+  yFIR_T$/fu =ʞ^Fi۪YJaa!?dG +ꚈidK Tfj"G{Thq–qBkʛOFɶuu;Qx?la~gқ7BCsambamba-0.6.7/test/mate_overlaps_1_3M_4M.bam.bai000066400000000000000000000056101320451002000214260ustar00rootroot00000000000000BAIT$ֶ ܶ1OvG))ննֶ(W13A% ܶ0W*0A01*3GJOvA*************00113GGGGG)նննննֶ ܶ ܶ ܶWsambamba-0.6.7/test/mate_overlaps_1_3M_4M.bed000066400000000000000000000001311320451002000206600ustar00rootroot000000000000001 3092600 3092700 1 3495400 3495500 1 3098100 3098200 1 3418600 3418700 1 3418500 3418650sambamba-0.6.7/test/test_depth.py000066400000000000000000000113021320451002000167430ustar00rootroot00000000000000import msgpack import subprocess import os.path import random import tempfile import csv sambamba = os.path.join(os.path.abspath(os.path.dirname(__file__)), '../build/sambamba') def referenceSequences(bam_fn): header = subprocess.check_output([sambamba, "view", "-H", bam_fn, "-f", "msgpack"]) return {item['SN']: item['LN'] for item in msgpack.unpackb(header)[2]} def randomIntervals(ref_seqs, n, max_length=1000): keys = ref_seqs.keys() result = [] for i in range(n): overlap = i > 0 and random.randint(1, 100) <= 20 if overlap: ref, start, e = random.choice(result) start += random.randint(0, (e - start - 1)) else: ref = random.choice(keys) length = ref_seqs[ref] start = random.randint(1, length) end = start + random.randint(1, max_length) result.append((ref, start, end)) return result def writeBed(intervals, bedfile): for ref, start, end in intervals: bedfile.write("{}\t{}\t{}\n".format(ref, start, end)) bedfile.flush() def depthRegionReport(bam_fn, intervals): with tempfile.NamedTemporaryFile("w+") as bed: writeBed(intervals, bed) devnull = open("/dev/null", "w") res = subprocess.check_output([sambamba, "depth", "region", "-t", "0", "--combined", bam_fn, "-L", bed.name, "-F", ""], stderr=devnull) lst = list(csv.DictReader(res[2:].split("\n"), dialect='excel-tab')) return [(i['chrom'], int(i['chromStart']), int(i['chromEnd']), i['readCount']) for i in lst] def expectedRegionReport(bam_fn, intervals): report = [] for ref, start, end in intervals: # coordinate translation: half-open zero-based -> closed 1-based cov = subprocess.check_output([sambamba, "view", bam_fn, "-c", "-t", "0", "{}:{}-{}".format(ref, start+1, end)]) report.append((ref, start, end, cov.strip())) return report def saveRegionReport(report, fn): with open(fn, "w+") as f: for fields in report: f.write("{}\t{}\t{}\t{}\n".format(*fields)) def depthBaseReport(bam_fn, intervals): with tempfile.NamedTemporaryFile("w+") as bed: writeBed(intervals, bed) devnull = open("/dev/null", "w") res = subprocess.check_output([sambamba, "depth", "base", "-t", "0", "--combined", bam_fn, "-L", bed.name, "-F", "", "-z"], stderr=devnull) lst = list(csv.DictReader(res.split("\n"), dialect='excel-tab')) return [(i['REF'], int(i['POS']), int(i['COV'])) for i in lst] bam_fn = "dm3PacBio_valid.bam" # minor differences are still possible e.g. when region is wholly inside a deletion, # but they are quite rare and can be checked manually def test_depth_region(): refs = referenceSequences(bam_fn) intervals = list(randomIntervals(refs, 10000, 1000)) report = depthRegionReport(bam_fn, intervals) expected = expectedRegionReport(bam_fn, intervals) return compareResults(report, expected, "region_") def compareResults(report, expected, prefix): n_correct = 0 n_wrong = 0 for expected_entry, entry in zip(expected, report): if entry != expected_entry: if n_wrong == 0: fn_failed = prefix + "failed_report.txt" fn_expected = prefix + "expected_report.txt" saveRegionReport(report, fn_failed) saveRegionReport(expected, fn_expected) print 'TEST FAILURE' print "results saved to " + fn_expected + " and " + fn_failed print "different results:" print "expected: ", expected_entry print "got: ", entry n_wrong += 1 if n_wrong >= 10: print "10 or more errors detected, exiting" break else: n_correct += 1 return n_correct == len(expected) def test_depth_base(): refs = referenceSequences(bam_fn) intervals = list(randomIntervals(refs, 1000, 100)) report = depthBaseReport(bam_fn, intervals) expected = [] for ref, pos, count in report: cov = subprocess.check_output([sambamba, "view", bam_fn, "-c", "-t", "0", "{}:{}-{}".format(ref, pos+1, pos+1)]) cov = int(cov.strip()) expected.append((ref, pos, cov)) return compareResults(report, expected, "base_") test_depth_base() sambamba-0.6.7/test_suite.sh000077500000000000000000000121041320451002000157770ustar00rootroot00000000000000#!/usr/bin/env bash testSortByName() { # use very tiny buffer of 200K so that multithreading is used ./build/sambamba sort -t2 -n BioD/test/data/ex1_header.bam -o ex1_header.nsorted.bam -m 200K ./build/sambamba view -t2 ex1_header.nsorted.bam > ex1_header.nsorted.sam assertEquals "3270" `wc -l < ex1_header.nsorted.sam` cat ex1_header.nsorted.sam | cut -f1 | LC_ALL=C sort -c assertEquals 0 $? } testSortByCoordinate() { ./build/sambamba sort -t2 -m 50M ex1_header.nsorted.bam -o ex1_header.sorted.bam ./build/sambamba index -t2 ex1_header.sorted.bam assertEquals 0 $? } testSlice() { ./build/sambamba slice ex1_header.sorted.bam chr1 -o /dev/null assertEquals 0 $? } testSliceMultipleRegions() { ./build/sambamba slice test/issue_204.bam 2:166860000-166870000 2:166860000-166870000 |\ ./build/sambamba view -c /dev/stdin > /dev/null assertEquals 0 $? } testSliceMultipleRegionsBed() { assertEquals "156" `./build/sambamba slice -L test/chr2_chr3_test_region.bed test/issue_204.bam |\ ./build/sambamba view -c /dev/stdin` } testView() { assertEquals "1806" `./build/sambamba view -c ex1_header.sorted.bam chr2` assertEquals "1464" `./build/sambamba view -c ex1_header.sorted.bam chr1` assertEquals "0" `./build/sambamba view -c ex1_header.sorted.bam '*'` } testOverwriteProtection() { ./build/sambamba view ex1_header.nsorted.bam -f bam -o ./ex1_header.nsorted.bam 2>/dev/null assertNotSame 0 $? ./build/sambamba merge ex1_header.sorted.bam ex1_header.sorted.bam ex1_header.sorted.bam 2>/dev/null assertNotSame 0 $? ./build/sambamba sort -m 50M ex1_header.nsorted.bam -o ./build/../ex1_header.nsorted.bam 2>/dev/null assertNotSame 0 $? ./build/sambamba markdup ex1_header.nsorted.bam ./build/../ex1_header.nsorted.bam 2>/dev/null assertNotSame 0 $? ./build/sambamba slice ex1_header.nsorted.bam chr1 -o ./build/../ex1_header.nsorted.bam 2>/dev/null assertNotSame 0 $? } testSortingEmptyFile() { ./build/sambamba view ex1_header.sorted.bam -f bam -F "ref_id > 3" -o empty.bam 2>/dev/null ./build/sambamba sort -m 50M empty.bam -o empty2.bam 2>/dev/null assertEquals "0" `./build/sambamba view -c empty2.bam` } testMarkdupEmptyFile() { ./build/sambamba view ex1_header.sorted.bam -f bam -F "ref_id > 3" -o empty.bam 2>/dev/null ./build/sambamba markdup empty.bam empty.dedup.bam 2>/dev/null assertEquals "0" `./build/sambamba view -c empty.dedup.bam` } testCramWriting() { ./build/sambamba view -S htslib/test/c1\#pad2.sam -T htslib/test/c1.fa -f cram -o c1_pad2.cram assertEquals 0 $? } testCramReading() { ./build/sambamba view -C c1_pad2.cram >/dev/null assertEquals 0 $? } testIndexUsage() { rm *.bai && rm c1_* ./build/sambamba view -S htslib/test/c1\#pad2.sam -T htslib/test/c1.fa -f cram -o c1_pad2.cram && ./build/sambamba index -C c1_pad2.cram && test -e c1_pad2.cram.crai; assertEquals 0 $? ./build/sambamba index -C c1_pad2.cram c1_cram_index && test -e c1_cram_index.crai; assertEquals 0 $? ./build/sambamba index ex1_header.sorted.bam && test -e ex1_header.sorted.bam.bai; assertEquals 0 $? ./build/sambamba index ex1_header.sorted.bam ex1_header.sorted.bai && test -e ex1_header.sorted.bai; assertEquals 0 $? } testIssue193() { rm -f output_193.txt ./build/sambamba depth base test/issue_193.bam > output_193.txt 2>/dev/null diff -q output_193.txt test/issue_193_expected_output.txt assertEquals 0 $? } testIssue204() { rm -f output_204.txt ./build/sambamba index test/issue_204.bam ./build/sambamba depth region test/issue_204.bam -L 2:166868600-166868813 -T 15 -T 20 -T 25 -m > output_204.txt 2>/dev/null diff -q output_204.txt test/issue_204_expected_output.txt assertEquals 0 $? } testIssue206() { ./build/sambamba markdup ex1_header.sorted.bam ex1_header.dedup.bam 2>/dev/null ./build/sambamba view -H ex1_header.dedup.bam | grep '@PG' | grep -q 'sambamba' assertEquals 0 $? ./build/sambamba view ex1_header.sorted.bam -f bam -o ex1_header.filtered.bam\ -F "supplementary or secondary_alignment" ./build/sambamba view -H ex1_header.filtered.bam | grep '@PG' | grep -q 'secondary' assertEquals 0 $? } testIssue225() { ./build/sambamba index test/issue225.bam ./build/sambamba depth base -c 1 test/issue225.bam > depth_base_225_1.txt 2>/dev/null diff -q depth_base_225_1.txt test/issue225.out assertEquals 0 $? ./build/sambamba depth base -c 0 test/issue225.bam > depth_base_225_0.txt 2>/dev/null diff -q depth_base_225_0.txt test/issue225.z.out assertEquals 0 $? # exercise BED codepath as well ./build/sambamba depth base -c 1 -L chrM test/issue225.bam > depth_base_225_1.txt 2>/dev/null diff -q depth_base_225_1.txt test/issue225.out assertEquals 0 $? ./build/sambamba depth base -c 0 -L chrM test/issue225.bam > depth_base_225_0.txt 2>/dev/null diff -q depth_base_225_0.txt test/issue225.z.out assertEquals 0 $? } shunit2=`which shunit2` if [ -x "$shunit2" ]; then . $shunit2 else . shunit2-2.0.3/src/shell/shunit2 fi sambamba-0.6.7/thirdparty/000077500000000000000000000000001320451002000154445ustar00rootroot00000000000000sambamba-0.6.7/thirdparty/mergesort.d000066400000000000000000000122161320451002000176220ustar00rootroot00000000000000/++ Merge Sort for Random-Access Ranges Written and tested for DMD 2.059 and Phobos Authors: Xinok License: Public Domain Bugs: Parallel sort fails to compile in debug builds ------------------------------- March, 2013: added support for custom task pool //lomereiter ++/ module thirdparty.mergesort; import std.range, std.algorithm, std.functional, std.array, std.parallelism; /++ Performs a merge sort on a random-access range according to predicate less. Returns: Sorted input as SortedRange Params: half = Set to true to merge using O(n/2) additional space, or false for O(n) task_pool = Thread pool to use temp = Optionally provide your own additional space for sorting Examples: ----------------- int[] array = [10, 37, 74, 99, 86, 28, 17, 39, 18, 38, 70]; mergeSort(array); mergeSort!"a > b"(array); // Sorts array descending TaskPool pool = new TaskPool(); scope(exit) pool.finish(); mergeSort(array, pool); // Sorts array using custom task pool int[] temp; temp.length = 64; mergeSort(array, pool, temp); // Sorts array using temporary memory provided by user ----------------- ++/ @trusted SortedRange!(R, less) mergeSort(alias less = "a < b", bool half = true, R)(R range, TaskPool task_pool=taskPool, R temp = null) { static assert(isRandomAccessRange!R); static assert(hasLength!R); static assert(hasSlicing!R); static assert(hasAssignableElements!R); MergeSortImpl!(less, half, R).sort(range, task_pool, temp); if(!__ctfe) assert(isSorted!(less)(range.save), "Range is not sorted"); return assumeSorted!(less, R)(range.save); } /// Merge Sort implementation template MergeSortImpl(alias pred, bool half, R) { static assert(isRandomAccessRange!R); static assert(hasLength!R); static assert(hasSlicing!R); static assert(hasAssignableElements!R); alias ElementType!R T; alias binaryFun!pred less; bool greater(T a, T b){ return less(b, a); } bool greaterEqual(T a, T b){ return !less(a, b); } bool lessEqual(T a, T b){ return !less(b, a); } enum MAX_INSERT = 32; // Maximum length for an insertion sort enum MIN_THREAD = 1024 * 64; // Minimum length of a sublist to initiate new thread /// Entry point for merge sort void sort(R range, TaskPool task_pool, T[] temp) { static if(half) { if(temp.length < range.length / 2) temp.length = range.length / 2; } else { if(temp.length < range.length) temp.length = range.length; } concSort(range, task_pool, task_pool.size, temp); } /// Concurrently sort range void concSort(R range, TaskPool task_pool, size_t threadCount, T[] temp) { if(threadCount < 2 || range.length < MIN_THREAD) { split(range, temp); return; } debug { //@ Threading code currently does not compile in debug builds split(range, temp); } else { immutable mid = range.length / 2; auto th = task!(concSort)(range[0 .. mid], task_pool, threadCount / 2, temp[0 .. $ / 2]); task_pool.put(th); concSort(range[mid .. range.length], task_pool, threadCount - (threadCount / 2), temp[$ / 2 .. $]); th.workForce(); merge(range, mid, temp); } } /// Recursively split range and merge halves void split(R range, T[] temp) { if(range.length <= MAX_INSERT) { binaryInsertionSort(range); return; } immutable mid = range.length / 2; split(range[0 .. mid], temp); split(range[mid .. range.length], temp); merge(range, mid, temp); } /// Merge two halves using temp static if(half) void merge(R range, immutable size_t mid, T[] temp) { assert(mid <= range.length); assert(temp.length >= range.length / 2); temp = temp[0 .. mid]; copy(range[0..mid], temp); size_t i = 0, lef = 0, rig = mid; while(true) { if(lessEqual(temp[lef], range[rig])) { range[i++] = temp[lef++]; if(lef >= temp.length) return; } else { range[i++] = range[rig++]; if(rig >= range.length) while(true) { range[i++] = temp[lef++]; if(lef >= temp.length) return; } } } } static if(!half) void merge(R range, immutable size_t mid, T[] temp) { assert(mid <= range.length); assert(temp.length >= range.length); size_t i = 0, lef = 0, rig = mid; while(true) { if(lessEqual(range[lef], range[rig])) { temp[i++] = range[lef++]; if(lef >= mid) break; } else { temp[i++] = range[rig++]; if(rig >= range.length) { while(lef < mid) temp[i++] = range[lef++]; break; } } } copy(temp[0 .. i], range[0 .. i]); } /// A simple insertion sort used for sorting small sublists void binaryInsertionSort(R range) { size_t lower, upper, center; T o; foreach(i; 0 .. range.length) { o = range[i]; lower = 0; upper = i; while(upper != lower) { center = (lower + upper) / 2; if(less(o, range[center])) upper = center; else lower = center + 1; } for(upper = i; upper > lower; --upper) range[upper] = range[upper-1]; range[upper] = o; } } //@ Workaround for DMD issue 7898 static if(__VERSION__ == 2059) void copy(R1, R2)(R1 src, R2 dst) { import std.traits; static if(isArray!R1 && isArray!R2) if(__ctfe) { dst[] = src[]; return; } std.algorithm.copy(src, dst); } } sambamba-0.6.7/thirdparty/unstablesort.d000066400000000000000000000167661320451002000203560ustar00rootroot00000000000000/++ Unstable Sort for Random-Access Ranges Written and tested for DMD 2.058 and Phobos Authors: Xinok License: Public Domain ++/ module thirdparty.unstablesort; import std.range, std.algorithm, std.functional, std.parallelism; /++ Performs an unstable sort on a random-access range according to predicate less. The algorithm is a quick sort which resorts to heap sort to avoid worst-case. Returns: Sorted input as SortedRange Params: range = Range to be sorted pool = Task pool to use Params: less = Predicate (string, function, or delegate) used for comparing elements; Defaults to "a < b" R = Type of range to be sorted; Must be a finite random-access range with slicing Examples: ----------------- int[] array = [10, 37, 74, 99, 86, 28, 17, 39, 18, 38, 70]; unstableSort(array, taskPool); // Sorts array using multiple threads ----------------- ++/ @trusted SortedRange!(R, less) unstableSort(alias less = "a < b", R)(R range, TaskPool pool) { static assert(isRandomAccessRange!R); static assert(hasLength!R); static assert(hasSlicing!R); static assert(hasAssignableElements!R); UnstableSortImpl!(less, R).sort(range, pool); assert(isSorted!(less)(range.save), "Range is not sorted"); return assumeSorted!(less, R)(range.save); } /// Unstable sort implementation template UnstableSortImpl(alias pred, R) { static assert(isRandomAccessRange!R); static assert(hasLength!R); static assert(hasSlicing!R); static assert(hasAssignableElements!R); alias ElementType!R T; alias binaryFun!pred less; bool greater(T a, T b){ return less(b, a); } bool greaterEqual(T a, T b){ return !less(a, b); } bool lessEqual(T a, T b){ return !less(b, a); } enum MAX_INSERT = 32; // Maximum length for an insertion sort enum MIN_THREAD = 1024 * 64; // Minimum length of a sublist to initiate new thread /// Entry sort function void sort(R range, TaskPool pool) { concSort(range, range.length, pool); } /// Recursively partition list void sort(R range, real depth, TaskPool pool) { while(true) { if(range.length <= MAX_INSERT) { binaryInsertionSort(range); return; } if(depth < 1.0) { heapSort(range); return; } depth /= 1.5; immutable mid = partition(range); if(mid <= range.length / 2) { sort(range[0 .. mid - 1], depth, pool); range = range[mid .. range.length]; } else { sort(range[mid .. range.length], depth, pool); range = range[0 .. mid - 1]; } } } /// Concurrently sorts range void concSort(R range, real depth, TaskPool pool) { if(range.length < MIN_THREAD) { sort(range, depth, pool); return; } if(depth < 1.0) { heapSort(range); return; } depth /= 1.5; immutable mid = partition(range); auto th = task!(concSort)(range[0 .. mid - 1], depth, pool); pool.put(th); concSort(range[mid .. range.length], depth, pool); th.workForce(); } /// Partitions range, returns starting index of second range excluding pivot size_t partition(R range) { // Get median of five immutable b = range.length / 4, c = range.length / 2, d = b + c; medianSort(range[0], range[b], range[c], range[d], range[range.length - 1]); // Move first elements into place swap(range[1], range[b]); swap(range[2], range[c]); swap(range[range.length - 2], range[d]); // Variables T piv = range[2], o; size_t lef = 3, rig = range.length - 3; // Partition range while(lef < rig) { if(lessEqual(range[lef], piv)) ++lef; else { o = range[lef]; range[lef] = range[rig]; range[rig] = o; --rig; } // Checking for equality on both sides ensures a balanced // distribution of equal elements in both partitions if(greaterEqual(range[rig], piv)) --rig; else { o = range[lef]; range[lef] = range[rig]; range[rig] = o; ++lef; } } // This step is necessary to ensure pivot is inserted at correct location if(lessEqual(range[lef], piv)) ++lef; // Move pivot into place swap(range[lef - 1], range[2]); return lef; } /// Finds the median of five in six comparisons while satisfiying the condition: /// (a < c && b < c && c < d && d < e) void medianSort(ref T a, ref T b, ref T c, ref T d, ref T e) out { assert(lessEqual(a, c) && lessEqual(b, c) && lessEqual(c, d) && lessEqual(c, e)); } body { T o; if(greater(a, b)) swap(a, b); if(greater(d, e)) swap(d, e); if(greater(a, d)) { o = a; a = d; d = b; b = o; if(greater(c, e)) { o = c; c = d; d = e; e = o; } else swap(c, d); } else if(greater(b, c)) swap(b, c); if(greater(b, d)) { swap(b, d); swap(c, e); } if(greater(c, d)) swap(c, d); } /// A simple insertion sort used for sorting small sublists void binaryInsertionSort(R range) { size_t lower, upper, center; T o; for(size_t i = 1; i < range.length; ++i) { o = range[i]; lower = 0; upper = i; while(upper != lower) { center = (lower + upper) / 2; if(less(o, range[center])) upper = center; else lower = center + 1; } for(upper = i; upper > lower; --upper) range[upper] = range[upper-1]; range[upper] = o; } } /// Bottom-up binary heap sort is used to avoid the worst-case of quick sort void heapSort(R range) { // Build Heap size_t i = (range.length - 2) / 2 + 1; while(i > 0) sift(range, --i, range.length); // Sort i = range.length - 1; while(i > 0) { swap(range[0], range[i]); sift(range, 0, i); --i; } } void sift(R range, size_t parent, immutable size_t end) { immutable root = parent; T value = range[parent]; size_t child = void; // Sift down while(true) { child = parent * 2 + 1; if(child >= end) break; if(child + 1 < end && less(range[child], range[child + 1])) child += 1; range[parent] = range[child]; parent = child; } child = parent; // Sift up while(child > root) { parent = (child - 1) / 2; if(less(range[parent], value)) { range[child] = range[parent]; child = parent; } else break; } range[child] = value; } } unittest { bool testSort(alias pred, R)(R range) { unstableSort!(pred, R)(range, taskPool); return isSorted!pred(range); } int testCall(T)(in T[] arr) { int failures = 0; if(!testSort!"a < b"(arr.dup)) ++failures; if(!testSort!"a > b"(arr.dup)) ++failures; return failures; } // Array containing 256 random ints enum test = [ 10, 37, 74, 99, 86, 28, 17, 39, 18, 38, 70, 89, 94, 32, 46, 76, 43, 33, 62, 76, 37, 93, 45, 48, 49, 21, 67, 56, 58, 17, 15, 41, 91, 94, 95, 41, 38, 80, 37, 24, 26, 71, 87, 54, 72, 60, 29, 37, 41, 99, 31, 66, 75, 72, 86, 97, 37, 25, 98, 89, 53, 45, 52, 76, 51, 38, 59, 53, 74, 96, 94, 42, 68, 84, 65, 27, 49, 57, 53, 74, 39, 75, 39, 26, 46, 37, 68, 96, 19, 79, 73, 83, 36, 90, 11, 39, 48, 94, 97, 72, 37, 43, 69, 36, 41, 47, 31, 48, 33, 21, 20, 18, 45, 28, 47, 54, 41, 28, 47, 44, 51, 15, 21, 64, 82, 23, 41, 82, 30, 25, 78, 72, 50, 34, 45, 59, 14, 71, 50, 97, 39, 87, 74, 60, 52, 17, 87, 45, 69, 54, 91, 68, 46, 99, 78, 33, 27, 53, 41, 84, 82, 54, 29, 55, 53, 87, 13, 98, 55, 33, 73, 64, 19, 81, 57, 78, 23, 45, 94, 75, 55, 43, 93, 85, 96, 82, 44, 73, 22, 79, 89, 20, 36, 11, 12, 51, 86, 86, 75, 66, 81, 90, 80, 80, 36, 36, 47, 43, 86, 96, 45, 73, 70, 90, 57, 23, 86, 29, 12, 54, 37, 17, 87, 12, 36, 78, 26, 28, 30, 15, 10, 53, 76, 34, 23, 49, 65, 17, 37, 51, 26, 23, 66, 12, 26, 84, 60, 47, 30, 26, 78, 20, 42, 40, 63, 40 ]; // Runtime test assert(testCall(test) == 0); } sambamba-0.6.7/undeaD/000077500000000000000000000000001320451002000144525ustar00rootroot00000000000000sambamba-0.6.7/utils/000077500000000000000000000000001320451002000144125ustar00rootroot00000000000000sambamba-0.6.7/utils/lz4.d000066400000000000000000000256001320451002000152730ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2015 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module utils.lz4; import std.stdio, undead.stream, std.conv; extern(C) { alias size_t LZ4F_errorCode_t; uint LZ4F_isError(LZ4F_errorCode_t code); immutable(char)* LZ4F_getErrorName(LZ4F_errorCode_t code); /* return error code string; useful for debugging */ enum blockSizeID_t { LZ4F_default=0, max64KB=4, max256KB=5, max1MB=6, max4MB=7 } enum blockMode_t { blockLinked=0, blockIndependent} enum contentChecksum_t { noContentChecksum=0, contentChecksumEnabled } enum frameType_t { LZ4F_frame=0, skippableFrame } struct LZ4F_frameInfo_t { blockSizeID_t blockSizeID; /* max64KB, max256KB, max1MB, max4MB ; 0 == default */ blockMode_t blockMode; /* blockLinked, blockIndependent ; 0 == default */ contentChecksum_t contentChecksumFlag; /* noContentChecksum, contentChecksumEnabled ; 0 == default */ frameType_t frameType; /* LZ4F_frame, skippableFrame ; 0 == default */ ulong contentSize; /* Size of uncompressed (original) content ; 0 == unknown */ uint[2] reserved; /* must be zero for forward compatibility */ } struct LZ4F_preferences_t { LZ4F_frameInfo_t frameInfo; uint compressionLevel; /* 0 == default (fast mode); values above 16 count as 16 */ uint autoFlush; /* 1 == always flush (reduce need for tmp buffer) */ uint[4] reserved; /* must be zero for forward compatibility */ } size_t LZ4F_compressFrameBound(size_t srcSize, const LZ4F_preferences_t* preferencesPtr); size_t LZ4F_compressFrame(void* dstBuffer, size_t dstMaxSize, const void* srcBuffer, size_t srcSize, const LZ4F_preferences_t* preferencesPtr); alias void* LZ4F_compressionContext_t; struct LZ4F_compressOptions_t { uint stableSrc; /* 1 == src content will remain available on future calls to LZ4F_compress(); avoid saving src content within tmp buffer as future dictionary */ uint[3] reserved; } enum LZ4F_VERSION = 100; LZ4F_errorCode_t LZ4F_createCompressionContext(LZ4F_compressionContext_t* cctxPtr, uint version_); LZ4F_errorCode_t LZ4F_freeCompressionContext(LZ4F_compressionContext_t cctx); size_t LZ4F_compressBegin(LZ4F_compressionContext_t cctx, void* dstBuffer, size_t dstMaxSize, const LZ4F_preferences_t* prefsPtr); size_t LZ4F_compressBound(size_t srcSize, const LZ4F_preferences_t* prefsPtr); size_t LZ4F_compressUpdate(LZ4F_compressionContext_t cctx, void* dstBuffer, size_t dstMaxSize, const void* srcBuffer, size_t srcSize, const LZ4F_compressOptions_t* cOptPtr); size_t LZ4F_flush(LZ4F_compressionContext_t cctx, void* dstBuffer, size_t dstMaxSize, const LZ4F_compressOptions_t* cOptPtr); size_t LZ4F_compressEnd(LZ4F_compressionContext_t cctx, void* dstBuffer, size_t dstMaxSize, const LZ4F_compressOptions_t* cOptPtr); alias void* LZ4F_decompressionContext_t; struct LZ4F_decompressOptions_t { uint stableDst; /* guarantee that decompressed data will still be there on next function calls (avoid storage into tmp buffers) */ uint[3] reserved; } LZ4F_errorCode_t LZ4F_createDecompressionContext(LZ4F_decompressionContext_t* dctxPtr, uint version_); LZ4F_errorCode_t LZ4F_freeDecompressionContext(LZ4F_decompressionContext_t dctx); size_t LZ4F_getFrameInfo(LZ4F_decompressionContext_t dctx, LZ4F_frameInfo_t* frameInfoPtr, const void* srcBuffer, size_t* srcSizePtr); size_t LZ4F_decompress(LZ4F_decompressionContext_t dctx, void* dstBuffer, size_t* dstSizePtr, const void* srcBuffer, size_t* srcSizePtr, const LZ4F_decompressOptions_t* dOptPtr); } class LZ4Exception : Exception { this(string description, LZ4F_errorCode_t errorCode) { super(description ~ " : " ~ LZ4F_getErrorName(errorCode).to!string); } this(string description) { super(description); } } class LZ4Compressor { private { LZ4F_preferences_t prefs; ubyte[] in_buff; ubyte[] out_buff; LZ4F_compressionContext_t ctx; LZ4F_compressionContext_t createCompressionContext() { LZ4F_compressionContext_t ctx; auto code = LZ4F_createCompressionContext(&ctx, LZ4F_VERSION); if (LZ4F_isError(code)) throw new LZ4Exception("Failure in LZ4F_createCompressionContext", code); return ctx; } void freeCompressionContext(LZ4F_compressionContext_t ctx) { auto code = LZ4F_freeCompressionContext(ctx); if (LZ4F_isError(code)) throw new LZ4Exception("Failed to free LZ4F compression context", code); } } this() { prefs.autoFlush = 1; prefs.frameInfo.blockMode = blockMode_t.blockIndependent; prefs.frameInfo.blockSizeID = blockSizeID_t.max256KB; prefs.frameInfo.contentChecksumFlag = contentChecksum_t.contentChecksumEnabled; int block_size = (1 << (8 + (2 * prefs.frameInfo.blockSizeID))); in_buff.length = block_size; out_buff.length = LZ4F_compressBound(block_size, &prefs); } private { size_t compressBegin() { auto sz = LZ4F_compressBegin(ctx, out_buff.ptr, out_buff.length, &prefs); if (LZ4F_isError(sz)) throw new LZ4Exception("Failure in LZ4F_compressBegin", sz); return sz; } size_t compressUpdate(ubyte[] block) { auto sz = LZ4F_compressUpdate(ctx, out_buff.ptr, out_buff.length, block.ptr, block.length, null); if (LZ4F_isError(sz)) throw new LZ4Exception("Failure in LZ4F_compressUpdate", sz); return sz; } size_t compressEnd() { auto sz = LZ4F_compressEnd(ctx, out_buff.ptr, out_buff.length, null); if (LZ4F_isError(sz)) throw new LZ4Exception("Failure in LZ4F_compressEnd", sz); return sz; } } void compress(ubyte[] function(ubyte[], void*) read_block, void* data, std.stdio.File output_file, int compressionLevel=0) { prefs.compressionLevel = compressionLevel; ctx = createCompressionContext(); assert(ctx !is null); auto sz = compressBegin(); output_file.rawWrite(out_buff[0 .. sz]); while (true) { ubyte[] block = read_block(in_buff, data); if (block.length == 0) break; sz = compressUpdate(block); output_file.rawWrite(out_buff[0 .. sz]); } sz = compressEnd(); output_file.rawWrite(out_buff[0 .. sz]); freeCompressionContext(ctx); } private { static ubyte[] read_block_from_file(ubyte[] buf, void* data) { auto input_file = cast(std.stdio.File*)data; return input_file.rawRead(buf); } import std.algorithm : min; static ubyte[] read_block_from_array(ubyte[] buf, void* data) { auto arr = cast(ubyte[]*)data; auto n = min(buf.length, (*arr).length); buf[0 .. n] = (*arr)[0 .. n]; *arr = (*arr)[n .. $]; return buf[0 .. n]; } } void compress(std.stdio.File input_file, std.stdio.File output_file, int compressionLevel=0) { compress(&read_block_from_file, &input_file, output_file, compressionLevel); } void compress(ubyte[] data, std.stdio.File output_file, int compressionLevel=0) { compress(&read_block_from_array, &data, output_file, compressionLevel); } } private { LZ4F_decompressionContext_t createDecompressionContext() { LZ4F_decompressionContext_t ctx; auto code = LZ4F_createDecompressionContext(&ctx, LZ4F_VERSION); if (LZ4F_isError(code)) throw new LZ4Exception("Failure in LZ4F_createDecompressionContext", code); return ctx; } void freeDecompressionContext(LZ4F_compressionContext_t ctx) { auto code = LZ4F_freeDecompressionContext(ctx); if (LZ4F_isError(code)) throw new LZ4Exception("Failed to free LZ4F decompression context", code); } } struct LZ4File { private { std.stdio.File input_file; LZ4F_decompressionContext_t ctx; size_t bytes_read, bytes_written; void decompress(ubyte[] block, ubyte[] out_buff) { bytes_read = block.length; bytes_written = out_buff.length; auto code = LZ4F_decompress(ctx, out_buff.ptr, &bytes_written, block.ptr, &bytes_read, null); if (LZ4F_isError(code)) throw new LZ4Exception("Failure in LZ4F_decompress", code); } ubyte[] in_buff; ubyte[] block; } this(string filename) { input_file = std.stdio.File(filename); in_buff.length = 256 << 10; ctx = createDecompressionContext(); assert(ctx !is null); auto header = input_file.rawRead(in_buff[0 .. 4]); assert(header.length == 4); ubyte[256] tmp; decompress(in_buff[0 .. 4], tmp[]); // header assert(bytes_read == 4); assert(bytes_written == 0); } void close() { freeDecompressionContext(ctx); input_file.close(); } ubyte[] rawRead(ubyte[] buffer) { while (true) { decompress(block, buffer); block = block[bytes_read .. $]; if (bytes_written > 0) break; if (block.length == 0 && !readNextBlock()) break; } return buffer[0 .. bytes_written]; } private bool readNextBlock() { block = input_file.rawRead(in_buff); return block.length > 0; } } class LZ4Decompressor { private { ubyte[] in_buff; ubyte[] out_buff; } this() { in_buff.length = 256 << 10; out_buff.length = 256 << 10; } void decompress(undead.stream.InputStream input_file, std.stdio.File output_file) { size_t bytes_read, bytes_written; auto ctx = createDecompressionContext(); assert(ctx !is null); void decompress(ubyte[] block) { bytes_read = block.length; bytes_written = out_buff.length; auto code = LZ4F_decompress(ctx, out_buff.ptr, &bytes_written, block.ptr, &bytes_read, null); if (LZ4F_isError(code)) throw new LZ4Exception("Failure in LZ4F_decompress", code); } input_file.readExact(in_buff.ptr, 4); decompress(in_buff[0 .. 4]); // header assert(bytes_read == 4); assert(bytes_written == 0); while (true) { size_t raw_read = input_file.read(in_buff); if (raw_read == 0) break; auto block = in_buff[0 .. raw_read]; while (block.length > 0) { decompress(block); block = block[bytes_read .. $]; if (bytes_written > 0) output_file.rawWrite(out_buff[0 .. bytes_written]); } } freeDecompressionContext(ctx); } } int lz4compress_main() { auto compressor = new LZ4Compressor(); compressor.compress(stdin, stdout); return 0; } sambamba-0.6.7/utils/strip_bcf_header.d000066400000000000000000000067511320451002000200530ustar00rootroot00000000000000/* This file is part of Sambamba. Copyright (C) 2012-2015 Artem Tarasov Sambamba is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 2 of the License, or (at your option) any later version. Sambamba is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with this program; if not, write to the Free Software Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA */ module utils.strip_bcf_header; import undead.cstream : CFile, FileMode; import std.exception; import std.algorithm : min; // used in mpileup tool to strip the common header from partial files void stripBcfHeader(File input_file, File output_file) { import bio.core.bgzf.inputstream; import bio.core.bgzf.constants; import bio.core.bgzf.block; import bio.core.bgzf.compress; auto stream = new CFile(input_file.getFP(), FileMode.In); auto supplier = new StreamSupplier(stream); BgzfBlock block; ubyte[] tmp = new ubyte[BGZF_MAX_BLOCK_SIZE]; ushort skip_start, skip_end; supplier.getNextBgzfBlock(&block, tmp.ptr, &skip_start, &skip_end); auto decompressed = decompressBgzfBlock(block); auto data = decompressed.decompressed_data; enforce(cast(char[])data[0 .. 3] == "BCF"); auto header_len = *(cast(int*)(data.ptr + 5)); size_t offset = 9 + header_len; header_len -= min(data.length - 9, header_len); while (header_len > 0) { supplier.getNextBgzfBlock(&block, tmp.ptr, &skip_start, &skip_end); decompressed = decompressBgzfBlock(block); data = decompressed.decompressed_data; offset = header_len; header_len -= min(data.length, header_len); } auto first_block = bgzfCompress(data[offset .. $], -1, tmp); output_file.rawWrite(first_block); while (true) { auto input = input_file.rawRead(tmp); if (input.length == 0) break; output_file.rawWrite(input); } } void stripUncompressedBcfHeader(File input_file, File output_file) { import std.exception, std.algorithm; ubyte[4096] buffer = void; auto start = input_file.rawRead(buffer[0 .. 5]); enforce(cast(char[])start[0 .. 3] == "BCF"); auto header_len_ = input_file.rawRead(buffer[0 .. 4]); auto header_len = *(cast(int*)(buffer.ptr)); while (header_len > 0) { auto bytes_to_read = min(header_len, buffer.length); auto chunk = input_file.rawRead(buffer[0 .. bytes_to_read]); header_len -= chunk.length; } while (true) { auto chunk = input_file.rawRead(buffer[]); if (chunk.length == 0) break; output_file.rawWrite(chunk); } } void stripVcfHeader(File input_file, File output_file) { import bio.core.utils.bylinefast; bool header = true; auto w = output_file.lockingTextWriter; foreach (line; ByLineFast(input_file)) { if (header && line.length > 0 && line[0] == '#') // header continue; header = false; w.put(line); w.put('\n'); } } import std.stdio, std.conv; int strip_bcf_header_main(string[] args) { if (args[1] == "--bcf") stripBcfHeader(stdin, stdout); else if (args[1] == "--ubcf") stripUncompressedBcfHeader(stdin, stdout); else if (args[1] == "--vcf") stripVcfHeader(stdin, stdout); return 0; } sambamba-0.6.7/utils/version_.d000066400000000000000000000010551320451002000164040ustar00rootroot00000000000000module utils.version_; immutable string VERSION = "0.6.7-pre1"; import bio.sam.header; import std.array : join; SamHeader addPG(string tool, string[] args, SamHeader header) { auto pg_line = PgLine(); pg_line.identifier = "sambamba"; pg_line.command_line = tool ~ " " ~ join(args[1 .. $], " "); pg_line.program_version = VERSION; if (header.programs.length > 0) { auto prev_id = header.programs.values.back.identifier; pg_line.previous_program = prev_id; } header.programs.add(pg_line); return header; }