galaxy-dev
Threads by month
- ----- 2026 -----
- April
- March
- February
- January
- ----- 2025 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2024 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2023 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2022 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2021 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2020 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2019 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2018 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2017 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2016 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2015 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2014 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2013 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2012 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2011 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2010 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2009 -----
- December
- November
- October
- September
- August
- July
- June
- May
- April
- March
- February
- January
- ----- 2008 -----
- December
- November
- October
- September
- August
- 10009 discussions
24 Feb '10
details: http://www.bx.psu.edu/hg/galaxy/rev/1f05b0c4071f
changeset: 3426:1f05b0c4071f
user: Kelly Vincent <kpvincent(a)bx.psu.edu>
date: Tue Feb 23 10:40:19 2010 -0500
description:
Updated BWA wrapper, SAM to BAM, SAM Merge, and SAM Pileup so that the return code of the program is captured and if it fails, the stderr is printed; temp files are created locally; a message is printed if results file empty.
diffstat:
test-data/sam_pileup_in1.bam | 0
test-data/sam_pileup_out1.pileup | 3286 ++++++++++++++++++++++++++++++++++++++
test-data/sam_pileup_out2.pileup | 3286 ++++++++++++++++++++++++++++++++++++++
test-data/sam_to_bam_out2.bam | 0
tools/samtools/sam_merge.py | 35 +-
tools/samtools/sam_merge.xml | 43 +-
tools/samtools/sam_pileup.py | 128 +-
tools/samtools/sam_pileup.xml | 69 +-
tools/samtools/sam_to_bam.py | 92 +-
tools/samtools/sam_to_bam.xml | 19 +
tools/sr_mapping/bwa_wrapper.py | 152 +-
tools/sr_mapping/bwa_wrapper.xml | 99 +-
12 files changed, 6990 insertions(+), 219 deletions(-)
diffs (truncated from 7568 to 3000 lines):
diff -r c0192e97a79a -r 1f05b0c4071f test-data/sam_pileup_in1.bam
Binary file test-data/sam_pileup_in1.bam has changed
diff -r c0192e97a79a -r 1f05b0c4071f test-data/sam_pileup_out1.pileup
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/sam_pileup_out1.pileup Tue Feb 23 10:40:19 2010 -0500
@@ -0,0 +1,3286 @@
+chrM 23 A 1 ^:. I
+chrM 24 A 1 . I
+chrM 25 G 1 . I
+chrM 26 C 1 . I
+chrM 27 A 1 . I
+chrM 28 A 1 . I
+chrM 29 G 1 . I
+chrM 30 G 1 N "
+chrM 31 C 1 N "
+chrM 32 A 1 . I
+chrM 33 C 1 . I
+chrM 34 T 1 . I
+chrM 35 G 1 . I
+chrM 36 A 1 . I
+chrM 37 A 1 . I
+chrM 38 A 1 . I
+chrM 39 A 1 . I
+chrM 40 T 1 . I
+chrM 41 G 1 . I
+chrM 42 C 1 . I
+chrM 43 C 1 . I
+chrM 44 T 1 . I
+chrM 45 A 1 . I
+chrM 46 G 1 . I
+chrM 47 A 1 . E
+chrM 48 T 1 . I
+chrM 49 G 1 . I
+chrM 50 A 1 . I
+chrM 51 G 1 . I
+chrM 52 T 1 . I
+chrM 53 A 1 . I
+chrM 54 T 1 . I
+chrM 55 T 1 . I
+chrM 56 C 1 . I
+chrM 57 T 1 . I
+chrM 58 T 1 .$ I
+chrM 96 T 1 ^:. I
+chrM 97 T 1 . I
+chrM 98 A 1 . I
+chrM 99 G 1 . I
+chrM 100 T 1 . I
+chrM 101 T 1 . I
+chrM 102 A 1 . I
+chrM 103 T 1 N "
+chrM 104 T 1 N "
+chrM 105 A 1 . I
+chrM 106 A 1 . I
+chrM 107 T 1 . I
+chrM 108 A 1 . I
+chrM 109 G 1 . I
+chrM 110 A 1 . I
+chrM 111 A 1 . I
+chrM 112 T 1 . I
+chrM 113 T 1 . I
+chrM 114 A 1 . I
+chrM 115 C 1 . I
+chrM 116 A 1 . I
+chrM 117 C 1 . I
+chrM 118 A 1 . H
+chrM 119 T 1 . I
+chrM 120 G 1 . I
+chrM 121 C 1 . I
+chrM 122 A 1 . E
+chrM 123 A 1 . I
+chrM 124 G 1 . 5
+chrM 125 T 1 . I
+chrM 126 A 1 . I
+chrM 127 T 1 . I
+chrM 128 C 1 . I
+chrM 129 C 1 . I
+chrM 130 G 1 . 4
+chrM 131 C 1 .$ I
+chrM 492 A 1 ^:, I
+chrM 493 A 1 , I
+chrM 494 A 1 , I
+chrM 495 C 1 , E
+chrM 496 T 1 , I
+chrM 497 G 1 , I
+chrM 498 G 1 , I
+chrM 499 G 1 , I
+chrM 500 A 1 , I
+chrM 501 T 1 , I
+chrM 502 T 1 , I
+chrM 503 A 1 , I
+chrM 504 G 1 , I
+chrM 505 A 1 , I
+chrM 506 T 1 , I
+chrM 507 A 1 , I
+chrM 508 C 1 , I
+chrM 509 C 1 , I
+chrM 510 C 1 , I
+chrM 511 C 1 , I
+chrM 512 A 1 , I
+chrM 513 C 1 , I
+chrM 514 T 1 , I
+chrM 515 A 1 , I
+chrM 516 T 1 , I
+chrM 517 G 1 , I
+chrM 518 C 1 , I
+chrM 519 T 1 n "
+chrM 520 T 1 n "
+chrM 521 A 1 , I
+chrM 522 G 1 , I
+chrM 523 C 1 , I
+chrM 524 C 1 , I
+chrM 525 C 1 , I
+chrM 526 T 1 , I
+chrM 527 A 1 ,$ I
+chrM 893 G 1 ^:, 6
+chrM 894 C 1 , 0
+chrM 895 T 1 , 4
+chrM 896 T 1 , I
+chrM 897 A 1 , I
+chrM 898 A 1 , I
+chrM 899 T 1 , ?
+chrM 900 T 1 , I
+chrM 901 G 1 , I
+chrM 902 A 1 , I
+chrM 903 A 1 , I
+chrM 904 T 1 , <
+chrM 905 C 1 , I
+chrM 906 A 1 , I
+chrM 907 G 1 , I
+chrM 908 G 1 , I
+chrM 909 C 1 , I
+chrM 910 C 1 , I
+chrM 911 A 1 , I
+chrM 912 T 1 , I
+chrM 913 G 1 , I
+chrM 914 A 1 , I
+chrM 915 A 1 , I
+chrM 916 G 1 , I
+chrM 917 C 1 , I
+chrM 918 G 1 , I
+chrM 919 C 1 , I
+chrM 920 G 1 n "
+chrM 921 C 1 n "
+chrM 922 A 1 , I
+chrM 923 C 1 , I
+chrM 924 A 1 , I
+chrM 925 C 1 , I
+chrM 926 A 1 , I
+chrM 927 C 1 , I
+chrM 928 C 1 ,$ I
+chrM 1159 T 1 ^:. I
+chrM 1160 T 1 . I
+chrM 1161 A 1 . I
+chrM 1162 A 1 . I
+chrM 1163 C 1 . I
+chrM 1164 T 1 . I
+chrM 1165 A 1 . I
+chrM 1166 A 1 N "
+chrM 1167 A 1 N "
+chrM 1168 A 1 . I
+chrM 1169 C 1 . I
+chrM 1170 A 1 . I
+chrM 1171 T 1 . I
+chrM 1172 T 1 . I
+chrM 1173 C 1 . I
+chrM 1174 A 1 . I
+chrM 1175 C 1 . I
+chrM 1176 C 1 . I
+chrM 1177 A 1 . I
+chrM 1178 A 1 . I
+chrM 1179 A 1 . A
+chrM 1180 C 1 . I
+chrM 1181 C 1 . I
+chrM 1182 A 1 . =
+chrM 1183 T 1 . I
+chrM 1184 T 1 . I
+chrM 1185 A 1 . B
+chrM 1186 A 1 . 5
+chrM 1187 A 1 . 8
+chrM 1188 G 1 . I
+chrM 1189 T 1 . =
+chrM 1190 A 1 . <
+chrM 1191 T 1 . I
+chrM 1192 A 2 .^:. ;I
+chrM 1193 G 2 .. II
+chrM 1194 G 2 .$. II
+chrM 1195 A 1 . I
+chrM 1196 G 1 . I
+chrM 1197 A 1 . I
+chrM 1198 T 1 . I
+chrM 1199 A 1 N "
+chrM 1200 G 1 N "
+chrM 1201 A 1 . I
+chrM 1202 A 1 . I
+chrM 1203 A 1 . I
+chrM 1204 T 1 . I
+chrM 1205 T 1 . I
+chrM 1206 T 1 . I
+chrM 1207 T 1 . I
+chrM 1208 A 1 . I
+chrM 1209 A 1 . I
+chrM 1210 C 1 . I
+chrM 1211 T 1 . I
+chrM 1212 T 1 . I
+chrM 1213 G 1 . I
+chrM 1214 G 1 . I
+chrM 1215 C 1 . I
+chrM 1216 G 1 . I
+chrM 1217 C 1 . I
+chrM 1218 T 1 . I
+chrM 1219 A 1 . I
+chrM 1220 T 1 . I
+chrM 1221 A 1 . C
+chrM 1222 G 1 . <
+chrM 1223 A 1 . I
+chrM 1224 G 1 . H
+chrM 1225 A 1 . I
+chrM 1226 A 1 . I
+chrM 1227 A 1 .$ I
+chrM 1499 A 1 ^:, I
+chrM 1500 A 1 , I
+chrM 1501 A 1 , I
+chrM 1502 T 1 , I
+chrM 1503 T 2 ,^:, EI
+chrM 1504 T 2 ,, II
+chrM 1505 A 2 ,, II
+chrM 1506 C 2 ,, +,
+chrM 1507 C 2 ,, EH
+chrM 1508 T 2 ,, II
+chrM 1509 A 2 ,, II
+chrM 1510 A 2 ,, II
+chrM 1511 A 2 ,, II
+chrM 1512 A 2 ,, II
+chrM 1513 A 2 ,, II
+chrM 1514 C 2 ,, II
+chrM 1515 T 2 ,, II
+chrM 1516 A 2 ,, II
+chrM 1517 C 2 ,, II
+chrM 1518 T 2 ,, II
+chrM 1519 C 2 ,, II
+chrM 1520 A 2 ,, II
+chrM 1521 A 2 ,, II
+chrM 1522 T 2 ,, II
+chrM 1523 T 2 ,, II
+chrM 1524 C 2 ,, II
+chrM 1525 T 2 ,, II
+chrM 1526 A 2 n, "I
+chrM 1527 A 2 n, "I
+chrM 1528 T 2 ,, II
+chrM 1529 G 2 ,, II
+chrM 1530 T 2 ,n I"
+chrM 1531 A 2 ,n I"
+chrM 1532 A 2 ,, II
+chrM 1533 A 2 ,, II
+chrM 1534 T 2 ,$, II
+chrM 1535 T 1 , I
+chrM 1536 T 1 , I
+chrM 1537 A 1 , I
+chrM 1538 A 1 ,$ I
+chrM 1616 A 1 ^:. I
+chrM 1617 G 1 . I
+chrM 1618 T 1 . I
+chrM 1619 T 1 . I
+chrM 1620 G 1 . I
+chrM 1621 G 1 . I
+chrM 1622 C 1 . I
+chrM 1623 T 1 N "
+chrM 1624 T 1 N "
+chrM 1625 A 1 . I
+chrM 1626 A 1 . I
+chrM 1627 A 1 . I
+chrM 1628 A 1 . I
+chrM 1629 G 1 . I
+chrM 1630 C 1 . I
+chrM 1631 A 1 . I
+chrM 1632 G 1 . I
+chrM 1633 C 1 . I
+chrM 1634 C 1 . I
+chrM 1635 A 1 . C
+chrM 1636 T 1 . I
+chrM 1637 C 1 . I
+chrM 1638 A 1 . =
+chrM 1639 A 1 . G
+chrM 1640 T 1 . I
+chrM 1641 T 1 . I
+chrM 1642 A 1 . I
+chrM 1643 A 1 . I
+chrM 1644 G 1 . I
+chrM 1645 A 1 . @
+chrM 1646 A 1 . I
+chrM 1647 A 1 . G
+chrM 1648 G 1 . I
+chrM 1649 C 1 . I
+chrM 1650 G 1 . I
+chrM 1651 T 1 .$ I
+chrM 2261 C 1 ^:, I
+chrM 2262 A 1 , I
+chrM 2263 G 1 , I
+chrM 2264 C 1 , I
+chrM 2265 A 1 , G
+chrM 2266 A 1 , I
+chrM 2267 T 1 , 2
+chrM 2268 T 1 , =
+chrM 2269 T 1 , 3
+chrM 2270 C 1 , I
+chrM 2271 G 1 , I
+chrM 2272 G 1 , I
+chrM 2273 T 1 , I
+chrM 2274 T 1 , I
+chrM 2275 G 1 , I
+chrM 2276 G 1 , I
+chrM 2277 G 1 , I
+chrM 2278 G 1 , I
+chrM 2279 T 1 , I
+chrM 2280 G 1 , I
+chrM 2281 A 1 , I
+chrM 2282 C 1 , I
+chrM 2283 C 1 , I
+chrM 2284 T 1 , I
+chrM 2285 C 1 , I
+chrM 2286 G 1 , I
+chrM 2287 G 1 , I
+chrM 2288 A 1 n "
+chrM 2289 G 1 n "
+chrM 2290 A 1 , I
+chrM 2291 A 1 , I
+chrM 2292 C 1 , I
+chrM 2293 A 1 , I
+chrM 2294 A 1 , I
+chrM 2295 A 1 , I
+chrM 2296 A 1 ,$ I
+chrM 2334 A 1 ^:, I
+chrM 2335 A 1 , I
+chrM 2336 A 1 , I
+chrM 2337 T 1 , I
+chrM 2338 A 1 , I
+chrM 2339 T 1 , H
+chrM 2340 A 1 , I
+chrM 2341 T 1 , =
+chrM 2342 A 1 , I
+chrM 2343 A 1 , I
+chrM 2344 T 1 , C
+chrM 2345 C 1 , I
+chrM 2346 A 1 , I
+chrM 2347 C 1 , I
+chrM 2348 T 1 , ?
+chrM 2349 T 1 , I
+chrM 2350 A 1 , I
+chrM 2351 T 1 , I
+chrM 2352 T 1 , I
+chrM 2353 G 1 , I
+chrM 2354 A 1 , I
+chrM 2355 T 1 , D
+chrM 2356 C 1 , I
+chrM 2357 C 1 , I
+chrM 2358 A 1 , I
+chrM 2359 A 1 , I
+chrM 2360 A 1 , I
+chrM 2361 C 1 n "
+chrM 2362 C 1 n "
+chrM 2363 A 1 , I
+chrM 2364 T 1 , I
+chrM 2365 T 1 , I
+chrM 2366 G 1 , I
+chrM 2367 A 1 , I
+chrM 2368 T 1 , I
+chrM 2369 C 1 ,$ I
+chrM 2389 G 1 ^:, I
+chrM 2390 G 1 , 8
+chrM 2391 G 1 , I
+chrM 2392 A 1 , I
+chrM 2393 T 1 , I
+chrM 2394 A 1 , I
+chrM 2395 A 1 , I
+chrM 2396 C 1 , 8
+chrM 2397 A 1 , I
+chrM 2398 G 1 , I
+chrM 2399 C 1 , I
+chrM 2400 G 1 , I
+chrM 2401 C 1 , I
+chrM 2402 A 1 , I
+chrM 2403 A 1 , I
+chrM 2404 T 1 , I
+chrM 2405 C 1 , I
+chrM 2406 C 1 , I
+chrM 2407 T 1 , G
+chrM 2408 A 1 , I
+chrM 2409 T 1 , I
+chrM 2410 T 1 , B
+chrM 2411 C 1 , I
+chrM 2412 C 1 , I
+chrM 2413 A 1 , I
+chrM 2414 G 1 , I
+chrM 2415 A 1 , I
+chrM 2416 G 1 n "
+chrM 2417 T 1 n "
+chrM 2418 C 1 , I
+chrM 2419 C 1 , I
+chrM 2420 A 1 , I
+chrM 2421 T 1 , I
+chrM 2422 A 1 , I
+chrM 2423 T 1 , I
+chrM 2424 C 1 ,$ I
+chrM 2735 t 1 ^:, I
+chrM 2736 t 1 , 9
+chrM 2737 t 1 , I
+chrM 2738 a 1 , I
+chrM 2739 c 1 , I
+chrM 2740 a 1 , I
+chrM 2741 c 1 , I
+chrM 2742 t 1 , 5
+chrM 2743 c 1 , I
+chrM 2744 a 1 , I
+chrM 2745 g 1 , I
+chrM 2746 a 1 , I
+chrM 2747 g 1 , I
+chrM 2748 g 1 , I
+chrM 2749 t 1 , I
+chrM 2750 t 1 , I
+chrM 2751 c 1 , I
+chrM 2752 a 1 , I
+chrM 2753 a 1 , I
+chrM 2754 c 1 , I
+chrM 2755 t 1 , I
+chrM 2756 c 1 , I
+chrM 2757 c 1 , I
+chrM 2758 t 1 , I
+chrM 2759 c 1 , I
+chrM 2760 t 1 , I
+chrM 2761 c 1 , I
+chrM 2762 c 1 n "
+chrM 2763 c 1 n "
+chrM 2764 t 1 , I
+chrM 2765 a 1 , I
+chrM 2766 a 1 , I
+chrM 2767 c 1 , I
+chrM 2768 a 1 , I
+chrM 2769 a 1 , I
+chrM 2770 c 1 ,$ I
+chrM 2844 G 1 ^:. I
+chrM 2845 A 1 . I
+chrM 2846 A 1 . I
+chrM 2847 A 1 . I
+chrM 2848 A 1 . I
+chrM 2849 G 1 . I
+chrM 2850 T 1 . I
+chrM 2851 C 1 N "
+chrM 2852 T 1 N "
+chrM 2853 T 1 . I
+chrM 2854 A 1 . I
+chrM 2855 G 1 . I
+chrM 2856 G 1 . I
+chrM 2857 C 1 . I
+chrM 2858 T 1 . I
+chrM 2859 A 1 . I
+chrM 2860 T 1 . I
+chrM 2861 A 1 . B
+chrM 2862 T 1 . I
+chrM 2863 G 1 . I
+chrM 2864 C 1 . I
+chrM 2865 A 1 . I
+chrM 2866 A 1 . B
+chrM 2867 C 1 . I
+chrM 2868 T 1 . I
+chrM 2869 T 1 . I
+chrM 2870 C 1 . I
+chrM 2871 G 1 . =
+chrM 2872 C 1 . I
+chrM 2873 A 1 . @
+chrM 2874 A 1 . 9
+chrM 2875 A 1 . 6
+chrM 2876 G 1 . D
+chrM 2877 G 1 . 2
+chrM 2878 A 1 . *
+chrM 2879 C 1 .$ I
+chrM 3080 T 1 ^:. I
+chrM 3081 T 1 . I
+chrM 3082 C 1 . I
+chrM 3083 A 1 . I
+chrM 3084 T 1 . I
+chrM 3085 A 1 . I
+chrM 3086 C 1 . I
+chrM 3087 T 1 N "
+chrM 3088 A 1 N "
+chrM 3089 G 1 . I
+chrM 3090 C 1 . I
+chrM 3091 C 1 . I
+chrM 3092 A 1 . I
+chrM 3093 T 1 . I
+chrM 3094 G 1 . I
+chrM 3095 T 1 . I
+chrM 3096 C 1 . I
+chrM 3097 C 1 . I
+chrM 3098 A 1 . I
+chrM 3099 G 1 . H
+chrM 3100 C 1 . I
+chrM 3101 C 1 . I
+chrM 3102 T 1 . I
+chrM 3103 A 1 . I
+chrM 3104 G 1 . I
+chrM 3105 C 1 . I
+chrM 3106 T 1 . I
+chrM 3107 G 1 . I
+chrM 3108 T 1 . I
+chrM 3109 C 1 . I
+chrM 3110 T 1 . I
+chrM 3111 A 1 . <
+chrM 3112 C 1 . I
+chrM 3113 T 1 . I
+chrM 3114 C 1 . I
+chrM 3115 A 1 .$ F
+chrM 3188 A 1 ^:, I
+chrM 3189 T 1 , =
+chrM 3190 C 1 , I
+chrM 3191 T 1 , I
+chrM 3192 C 1 , I
+chrM 3193 A 1 , I
+chrM 3194 T 1 , I
+chrM 3195 A 1 , I
+chrM 3196 C 1 , I
+chrM 3197 G 1 , @
+chrM 3198 A 1 , I
+chrM 3199 A 1 , I
+chrM 3200 G 1 , I
+chrM 3201 T 1 , I
+chrM 3202 A 1 , I
+chrM 3203 A 1 , I
+chrM 3204 C 1 , I
+chrM 3205 T 1 , I
+chrM 3206 C 1 , I
+chrM 3207 T 1 , I
+chrM 3208 A 1 , I
+chrM 3209 G 1 , I
+chrM 3210 C 1 , I
+chrM 3211 A 1 , I
+chrM 3212 A 1 , I
+chrM 3213 T 1 , I
+chrM 3214 C 1 , I
+chrM 3215 A 1 n "
+chrM 3216 T 1 n "
+chrM 3217 C 1 , I
+chrM 3218 C 1 , I
+chrM 3219 T 1 , I
+chrM 3220 A 1 , I
+chrM 3221 C 1 , I
+chrM 3222 T 1 , I
+chrM 3223 C 1 ,$ I
+chrM 3502 A 1 ^:. I
+chrM 3503 G 1 . I
+chrM 3504 C 1 . I
+chrM 3505 A 1 . I
+chrM 3506 T 1 . I
+chrM 3507 T 1 . I
+chrM 3508 T 1 . I
+chrM 3509 C 1 N "
+chrM 3510 A 1 N "
+chrM 3511 C 1 . I
+chrM 3512 A 1 . I
+chrM 3513 A 1 . I
+chrM 3514 C 1 . I
+chrM 3515 C 1 . I
+chrM 3516 C 1 . I
+chrM 3517 C 1 . I
+chrM 3518 T 1 . I
+chrM 3519 A 1 . I
+chrM 3520 C 1 . I
+chrM 3521 C 1 . I
+chrM 3522 T 1 . I
+chrM 3523 G 1 . I
+chrM 3524 C 1 . I
+chrM 3525 C 1 . I
+chrM 3526 A 1 . >
+chrM 3527 G 1 . I
+chrM 3528 A 1 . 4
+chrM 3529 A 1 . @
+chrM 3530 C 1 . I
+chrM 3531 T 1 . I
+chrM 3532 C 1 . I
+chrM 3533 T 1 . I
+chrM 3534 A 1 . I
+chrM 3535 C 1 . I
+chrM 3536 T 1 . I
+chrM 3537 C 1 .$ I
+chrM 3678 G 1 ^:. I
+chrM 3679 A 1 . I
+chrM 3680 C 1 . I
+chrM 3681 A 1 . I
+chrM 3682 C 1 . I
+chrM 3683 G 1 . I
+chrM 3684 T 1 . I
+chrM 3685 C 1 N "
+chrM 3686 T 1 N "
+chrM 3687 C 1 . I
+chrM 3688 A 1 . I
+chrM 3689 C 1 . I
+chrM 3690 T 1 . I
+chrM 3691 T 1 . I
+chrM 3692 C 1 . I
+chrM 3693 C 1 . I
+chrM 3694 A 1 . I
+chrM 3695 A 1 . :
+chrM 3696 T 1 . I
+chrM 3697 C 1 . I
+chrM 3698 A 1 . I
+chrM 3699 T 1 . I
+chrM 3700 A 1 . 8
+chrM 3701 C 1 . I
+chrM 3702 T 1 . I
+chrM 3703 A 1 . E
+chrM 3704 T 1 . I
+chrM 3705 C 1 . I
+chrM 3706 C 1 . I
+chrM 3707 A 1 . I
+chrM 3708 G 1 . -
+chrM 3709 C 1 . I
+chrM 3710 A 1 . A
+chrM 3711 T 1 . I
+chrM 3712 C 1 . I
+chrM 3713 C 1 .$ I
+chrM 3753 T 1 ^:. I
+chrM 3754 T 1 . I
+chrM 3755 T 1 . I
+chrM 3756 G 1 . I
+chrM 3757 A 1 . I
+chrM 3758 T 1 . I
+chrM 3759 A 1 . I
+chrM 3760 G 1 N "
+chrM 3761 A 1 N "
+chrM 3762 G 1 . I
+chrM 3763 T 1 . I
+chrM 3764 A 1 . I
+chrM 3765 A 1 . I
+chrM 3766 A 1 . I
+chrM 3767 A 1 . I
+chrM 3768 C 1 . I
+chrM 3769 A 1 . I
+chrM 3770 T 1 . I
+chrM 3771 A 1 . I
+chrM 3772 G 1 . I
+chrM 3773 A 1 . I
+chrM 3774 G 1 . I
+chrM 3775 G 1 . I
+chrM 3776 C 1 . I
+chrM 3777 T 1 . I
+chrM 3778 C 1 . I
+chrM 3779 A 1 . C
+chrM 3780 A 1 . I
+chrM 3781 A 1 . I
+chrM 3782 C 1 . I
+chrM 3783 C 1 . I
+chrM 3784 C 1 . I
+chrM 3785 T 1 . I
+chrM 3786 C 1 . I
+chrM 3787 T 1 . I
+chrM 3788 T 1 .$ I
+chrM 3841 t 1 ^:, G
+chrM 3842 g 1 , I
+chrM 3843 c 1 , +
+chrM 3844 t 1 , I
+chrM 3845 a 1 , I
+chrM 3846 c 1 , %
+chrM 3847 c 1 , (
+chrM 3848 g 1 , I
+chrM 3849 a 1 , I
+chrM 3850 a 1 , I
+chrM 3851 t 1 , I
+chrM 3852 t 1 , I
+chrM 3853 a 1 , I
+chrM 3854 c 1 , I
+chrM 3855 a 1 , I
+chrM 3856 c 1 , I
+chrM 3857 c 1 , I
+chrM 3858 a 1 , I
+chrM 3859 t 1 , I
+chrM 3860 g 1 , I
+chrM 3861 t 1 , I
+chrM 3862 c 1 , I
+chrM 3863 c 1 , I
+chrM 3864 t 1 , I
+chrM 3865 a 1 , I
+chrM 3866 C 1 , I
+chrM 3867 A 1 , I
+chrM 3868 A 1 n "
+chrM 3869 G 1 n "
+chrM 3870 T 1 , I
+chrM 3871 A 1 , I
+chrM 3872 A 1 , I
+chrM 3873 G 1 , I
+chrM 3874 G 1 , I
+chrM 3875 T 1 , I
+chrM 3876 C 1 ,$ I
+chrM 3921 C 1 ^:, I
+chrM 3922 A 1 , I
+chrM 3923 C 1 , I
+chrM 3924 C 1 , I
+chrM 3925 C 1 , I
+chrM 3926 T 1 , =
+chrM 3927 T 1 , A
+chrM 3928 C 1 , I
+chrM 3929 C 1 , I
+chrM 3930 C 1 , I
+chrM 3931 G 1 , I
+chrM 3932 T 1 , I
+chrM 3933 A 1 , I
+chrM 3934 C 1 , I
+chrM 3935 T 1 , I
+chrM 3936 A 1 , I
+chrM 3937 A 1 , I
+chrM 3938 T 1 , I
+chrM 3939 A 1 , I
+chrM 3940 A 1 , I
+chrM 3941 A 1 , I
+chrM 3942 T 1 , B
+chrM 3943 C 1 , I
+chrM 3944 C 1 , I
+chrM 3945 C 1 , I
+chrM 3946 C 1 , I
+chrM 3947 T 1 , I
+chrM 3948 T 1 n "
+chrM 3949 A 1 n "
+chrM 3950 T 1 , I
+chrM 3951 C 1 , I
+chrM 3952 T 1 , I
+chrM 3953 T 1 , I
+chrM 3954 C 1 , I
+chrM 3955 A 1 , I
+chrM 3956 C 1 ,$ I
+chrM 4249 A 1 ^:, I
+chrM 4250 A 1 , I
+chrM 4251 A 1 , I
+chrM 4252 C 1 , I
+chrM 4253 T 1 , 5
+chrM 4254 T 1 , 6
+chrM 4255 G 1 , I
+chrM 4256 G 1 , I
+chrM 4257 A 1 , I
+chrM 4258 C 1 , I
+chrM 4259 T 1 , I
+chrM 4260 C 1 , I
+chrM 4261 A 1 , I
+chrM 4262 C 1 , I
+chrM 4263 A 1 , I
+chrM 4264 C 1 , I
+chrM 4265 C 1 , I
+chrM 4266 A 1 , I
+chrM 4267 T 1 , I
+chrM 4268 T 1 , I
+chrM 4269 C 1 , I
+chrM 4270 C 1 , I
+chrM 4271 A 1 , I
+chrM 4272 C 1 , I
+chrM 4273 T 1 , I
+chrM 4274 T 1 , I
+chrM 4275 C 1 , I
+chrM 4276 T 1 n "
+chrM 4277 G 1 n "
+chrM 4278 A 1 , I
+chrM 4279 G 1 , I
+chrM 4280 T 1 , I
+chrM 4281 A 1 , I
+chrM 4282 C 1 , I
+chrM 4283 C 1 , I
+chrM 4284 C 1 ,$ I
+chrM 4552 T 1 ^:. I
+chrM 4553 T 1 . I
+chrM 4554 A 1 . I
+chrM 4555 A 1 . I
+chrM 4556 T 1 . I
+chrM 4557 T 1 . I
+chrM 4558 T 1 . I
+chrM 4559 A 1 N "
+chrM 4560 C 1 N "
+chrM 4561 A 1 . I
+chrM 4562 T 1 . I
+chrM 4563 T 1 . I
+chrM 4564 A 1 . I
+chrM 4565 T 1 . I
+chrM 4566 A 1 . I
+chrM 4567 A 1 . I
+chrM 4568 T 1 . I
+chrM 4569 A 1 . I
+chrM 4570 A 1 . I
+chrM 4571 C 1 . I
+chrM 4572 A 1 . I
+chrM 4573 C 1 . I
+chrM 4574 T 1 . I
+chrM 4575 C 1 . I
+chrM 4576 A 1 . I
+chrM 4577 C 1 . I
+chrM 4578 A 1 . I
+chrM 4579 A 1 . ?
+chrM 4580 T 1 . I
+chrM 4581 A 1 . 6
+chrM 4582 T 1 . I
+chrM 4583 T 1 . I
+chrM 4584 C 1 . I
+chrM 4585 A 1 . I
+chrM 4586 T 1 . I
+chrM 4587 A 1 .$ 6
+chrM 4697 T 1 ^:, 5
+chrM 4698 C 1 , =
+chrM 4699 C 1 , 4
+chrM 4700 C 1 , &
+chrM 4701 C 1 , G
+chrM 4702 C 1 , 1
+chrM 4703 C 1 , 3
+chrM 4704 A 1 , I
+chrM 4705 C 1 , .
+chrM 4706 T 1 , ?
+chrM 4707 A 1 , I
+chrM 4708 T 1 , I
+chrM 4709 C 1 , I
+chrM 4710 A 1 , I
+chrM 4711 G 1 , I
+chrM 4712 G 1 , I
+chrM 4713 A 1 , I
+chrM 4714 T 1 , I
+chrM 4715 T 1 , I
+chrM 4716 C 1 , I
+chrM 4717 A 1 , I
+chrM 4718 T 1 , I
+chrM 4719 A 1 , I
+chrM 4720 C 1 , I
+chrM 4721 C 1 , I
+chrM 4722 C 1 , I
+chrM 4723 A 1 , I
+chrM 4724 A 1 n "
+chrM 4725 A 1 n "
+chrM 4726 T 1 , I
+chrM 4727 G 1 , I
+chrM 4728 A 1 , I
+chrM 4729 A 1 , I
+chrM 4730 T 1 , I
+chrM 4731 A 1 , I
+chrM 4732 A 1 ,$ I
+chrM 4742 A 1 ^:. I
+chrM 4743 G 1 . I
+chrM 4744 C 1 . I
+chrM 4745 T 1 . I
+chrM 4746 C 1 . I
+chrM 4747 A 1 . I
+chrM 4748 C 1 . I
+chrM 4749 C 1 N "
+chrM 4750 A 1 N "
+chrM 4751 A 1 . I
+chrM 4752 A 1 . I
+chrM 4753 A 1 . I
+chrM 4754 A 1 . I
+chrM 4755 T 1 . I
+chrM 4756 A 1 . I
+chrM 4757 G 1 . I
+chrM 4758 C 1 . I
+chrM 4759 A 1 . I
+chrM 4760 G 1 . I
+chrM 4761 C 1 . I
+chrM 4762 A 1 . I
+chrM 4763 T 1 . I
+chrM 4764 C 1 . I
+chrM 4765 A 1 . I
+chrM 4766 T 1 . I
+chrM 4767 C 1 . I
+chrM 4768 C 1 . I
+chrM 4769 T 1 . I
+chrM 4770 C 1 . I
+chrM 4771 C 1 . I
+chrM 4772 C 1 . I
+chrM 4773 C 1 . I
+chrM 4774 A 1 . 8
+chrM 4775 C 1 . I
+chrM 4776 A 1 . :
+chrM 4777 C 1 .$ I
+chrM 4932 C 1 ^:, I
+chrM 4933 T 1 , -
+chrM 4934 C 1 , A
+chrM 4935 C 1 , I
+chrM 4936 C 1 , I
+chrM 4937 T 1 , 7
+chrM 4938 A 1 , I
+chrM 4939 C 1 , I
+chrM 4940 T 1 , 5
+chrM 4941 C 1 , I
+chrM 4942 C 1 , I
+chrM 4943 T 1 , :
+chrM 4944 C 1 , I
+chrM 4945 C 1 , I
+chrM 4946 C 1 , I
+chrM 4947 C 1 , I
+chrM 4948 C 1 , I
+chrM 4949 T 1 , I
+chrM 4950 A 1 , I
+chrM 4951 A 1 , I
+chrM 4952 C 1 , I
+chrM 4953 C 1 , I
+chrM 4954 C 1 , I
+chrM 4955 C 1 , I
+chrM 4956 C 1 , I
+chrM 4957 A 1 , I
+chrM 4958 T 1 , I
+chrM 4959 A 1 n "
+chrM 4960 C 1 n "
+chrM 4961 T 1 , I
+chrM 4962 A 1 , I
+chrM 4963 T 1 , I
+chrM 4964 C 1 , I
+chrM 4965 A 1 , I
+chrM 4966 A 1 , I
+chrM 4967 T 1 ,$ I
+chrM 5155 G 1 ^:, 7
+chrM 5156 T 1 , I
+chrM 5157 T 1 , I
+chrM 5158 A 1 , I
+chrM 5159 A 1 , I
+chrM 5160 C 1 , I
+chrM 5161 A 1 , I
+chrM 5162 G 1 , I
+chrM 5163 C 1 , I
+chrM 5164 T 1 , I
+chrM 5165 A 1 , I
+chrM 5166 A 1 , I
+chrM 5167 A 1 , I
+chrM 5168 T 1 , I
+chrM 5169 A 1 , I
+chrM 5170 C 1 , I
+chrM 5171 C 1 , I
+chrM 5172 C 1 , I
+chrM 5173 T 1 , I
+chrM 5174 A 1 , I
+chrM 5175 A 1 , I
+chrM 5176 T 1 , I
+chrM 5177 C 1 , I
+chrM 5178 A 1 , I
+chrM 5179 A 1 , I
+chrM 5180 C 1 , I
+chrM 5181 T 1 , I
+chrM 5182 G 1 n "
+chrM 5183 G 1 n "
+chrM 5184 C 1 , I
+chrM 5185 T 1 , I
+chrM 5186 T 1 , I
+chrM 5187 C 1 , I
+chrM 5188 A 1 , I
+chrM 5189 A 1 , I
+chrM 5190 T 1 ,$ I
+chrM 5309 T 1 ^:, I
+chrM 5310 C 1 , I
+chrM 5311 C 1 , I
+chrM 5312 A 1 , I
+chrM 5313 A 1 , I
+chrM 5314 C 1 , I
+chrM 5315 C 1 , I
+chrM 5316 C 1 , I
+chrM 5317 C 1 , I
+chrM 5318 T 1 , I
+chrM 5319 G 1 , I
+chrM 5320 T 1 , I
+chrM 5321 C 1 , I
+chrM 5322 T 1 , I
+chrM 5323 T 1 , I
+chrM 5324 T 1 , I
+chrM 5325 A 1 , I
+chrM 5326 G 1 , I
+chrM 5327 A 1 , I
+chrM 5328 T 1 , I
+chrM 5329 T 1 , I
+chrM 5330 T 1 , I
+chrM 5331 A 1 , I
+chrM 5332 C 1 , I
+chrM 5333 A 1 , I
+chrM 5334 G 1 , I
+chrM 5335 T 1 , I
+chrM 5336 C 1 n "
+chrM 5337 T 1 n "
+chrM 5338 A 1 , I
+chrM 5339 A 1 , I
+chrM 5340 T 1 , I
+chrM 5341 G 1 , I
+chrM 5342 C 1 , I
+chrM 5343 T 1 , I
+chrM 5344 T 1 ,$ I
+chrM 5540 C 1 ^:, ?
+chrM 5541 C 1 , :
+chrM 5542 C 1 , ;
+chrM 5543 A 1 , I
+chrM 5544 T 1 , 9
+chrM 5545 G 1 , D
+chrM 5546 C 1 , D
+chrM 5547 A 1 , I
+chrM 5548 T 1 , B
+chrM 5549 T 1 , E
+chrM 5550 C 1 , I
+chrM 5551 G 1 , I
+chrM 5552 T 1 , I
+chrM 5553 A 1 , I
+chrM 5554 A 1 , I
+chrM 5555 T 1 , I
+chrM 5556 A 1 , I
+chrM 5557 A 1 , I
+chrM 5558 T 1 , E
+chrM 5559 T 1 , I
+chrM 5560 T 1 , E
+chrM 5561 T 1 , I
+chrM 5562 C 1 , I
+chrM 5563 T 1 , I
+chrM 5564 T 1 , I
+chrM 5565 T 1 , I
+chrM 5566 A 1 , I
+chrM 5567 T 1 n "
+chrM 5568 G 1 n "
+chrM 5569 G 1 , I
+chrM 5570 T 1 , I
+chrM 5571 C 1 , I
+chrM 5572 A 1 , I
+chrM 5573 T 1 , I
+chrM 5574 A 1 , I
+chrM 5575 C 1 ,$ I
+chrM 6016 T 1 ^:, @
+chrM 6017 T 1 , 7
+chrM 6018 C 1 , I
+chrM 6019 T 1 , <
+chrM 6020 T 1 , ?
+chrM 6021 C 1 , I
+chrM 6022 G 1 , I
+chrM 6023 A 1 , I
+chrM 6024 C 1 , I
+chrM 6025 C 1 , I
+chrM 6026 C 1 , I
+chrM 6027 C 1 , I
+chrM 6028 G 1 , I
+chrM 6029 C 1 , I
+chrM 6030 A 1 , I
+chrM 6031 G 1 , I
+chrM 6032 G 1 , I
+chrM 6033 A 1 , I
+chrM 6034 G 1 , I
+chrM 6035 G 1 , I
+chrM 6036 A 1 , I
+chrM 6037 G 1 , I
+chrM 6038 G 1 , I
+chrM 6039 G 1 , I
+chrM 6040 G 2 ,^:. II
+chrM 6041 A 2 ,. II
+chrM 6042 T 2 ,. II
+chrM 6043 C 2 n. "I
+chrM 6044 C 2 n. "I
+chrM 6045 A 2 ,. II
+chrM 6046 A 2 ,. II
+chrM 6047 T 2 ,N I"
+chrM 6048 C 2 ,N I"
+chrM 6049 C 2 ,. II
+chrM 6050 T 2 ,. II
+chrM 6051 T 2 ,$. II
+chrM 6052 T 1 . I
+chrM 6053 A 2 .^:. II
+chrM 6054 T 2 .. II
+chrM 6055 C 2 .. II
+chrM 6056 A 2 .. II
+chrM 6057 A 2 .. II
+chrM 6058 C 2 .. II
+chrM 6059 A 2 .. II
+chrM 6060 C 2 .N I"
+chrM 6061 C 2 .N I"
+chrM 6062 T 2 .. II
+chrM 6063 A 2 .. II
+chrM 6064 T 2 .. II
+chrM 6065 T 2 .. II
+chrM 6066 C 2 .. II
+chrM 6067 T 2 .. II
+chrM 6068 G 2 .. II
+chrM 6069 A 2 .. II
+chrM 6070 T 2 .. II
+chrM 6071 T 2 .. II
+chrM 6072 C 2 .. II
+chrM 6073 T 2 .. II
+chrM 6074 T 2 .. II
+chrM 6075 C 2 .$. II
+chrM 6076 G 1 . I
+chrM 6077 G 1 . I
+chrM 6078 A 1 . I
+chrM 6079 C 1 . I
+chrM 6080 A 1 . A
+chrM 6081 C 1 . I
+chrM 6082 C 1 . I
+chrM 6083 C 1 . I
+chrM 6084 C 1 . I
+chrM 6085 G 1 . F
+chrM 6086 A 1 . (
+chrM 6087 A 1 . .
+chrM 6088 G 1 .$ I
+chrM 6379 T 1 ^:. I
+chrM 6380 G 1 . I
+chrM 6381 A 1 . I
+chrM 6382 G 1 . I
+chrM 6383 C 1 . I
+chrM 6384 T 1 . I
+chrM 6385 C 1 . I
+chrM 6386 T 1 N "
+chrM 6387 A 1 N "
+chrM 6388 G 1 . I
+chrM 6389 G 1 . I
+chrM 6390 C 1 . I
+chrM 6391 T 1 . I
+chrM 6392 T 1 . I
+chrM 6393 C 1 . I
+chrM 6394 A 1 . C
+chrM 6395 T 1 . I
+chrM 6396 C 1 . I
+chrM 6397 T 1 . I
+chrM 6398 T 1 . I
+chrM 6399 C 1 . I
+chrM 6400 T 1 . I
+chrM 6401 T 1 . I
+chrM 6402 A 1 . I
+chrM 6403 T 1 . I
+chrM 6404 T 1 . I
+chrM 6405 C 1 . I
+chrM 6406 A 1 . I
+chrM 6407 C 1 . I
+chrM 6408 A 1 . I
+chrM 6409 G 1 . @
+chrM 6410 T 1 . I
+chrM 6411 A 1 . I
+chrM 6412 G 1 . 5
+chrM 6413 G 1 . @
+chrM 6414 A 1 .$ F
+chrM 6591 A 1 ^:. I
+chrM 6592 A 1 . I
+chrM 6593 A 1 . I
+chrM 6594 A 1 . I
+chrM 6595 A 1 . I
+chrM 6596 T 1 . I
+chrM 6597 C 1 . I
+chrM 6598 C 1 N "
+chrM 6599 A 1 N "
+chrM 6600 C 1 . I
+chrM 6601 T 1 . I
+chrM 6602 T 1 . I
+chrM 6603 T 1 . I
+chrM 6604 A 1 . I
+chrM 6605 C 1 . I
+chrM 6606 A 1 . I
+chrM 6607 A 1 . I
+chrM 6608 T 1 . I
+chrM 6609 T 1 . I
+chrM 6610 A 1 . I
+chrM 6611 T 1 . I
+chrM 6612 A 1 . I
+chrM 6613 T 1 . I
+chrM 6614 T 1 . I
+chrM 6615 C 1 . I
+chrM 6616 G 1 . F
+chrM 6617 T 1 . I
+chrM 6618 A 1 . I
+chrM 6619 G 1 . I
+chrM 6620 G 1 . 6
+chrM 6621 G 1 . A
+chrM 6622 G 1 . I
+chrM 6623 T 1 . I
+chrM 6624 A 1 . I
+chrM 6625 A 1 . G
+chrM 6626 A 1 .$ I
+chrM 6695 A 1 ^:. I
+chrM 6696 C 1 . I
+chrM 6697 G 1 . I
+chrM 6698 C 1 . I
+chrM 6699 A 1 . I
+chrM 6700 T 1 . I
+chrM 6701 A 1 . I
+chrM 6702 T 1 N "
+chrM 6703 A 2 N^:. "I
+chrM 6704 C 2 .. II
+chrM 6705 A 2 .. II
+chrM 6706 A 2 .. II
+chrM 6707 C 2 .. II
+chrM 6708 A 2 .. II
+chrM 6709 T 2 .. II
+chrM 6710 G 2 .N I"
+chrM 6711 A 2 .N I"
+chrM 6712 A 2 .. II
+chrM 6713 A 2 .. II
+chrM 6714 T 2 .. II
+chrM 6715 A 2 .. II
+chrM 6716 C 2 .. II
+chrM 6717 C 2 .. II
+chrM 6718 A 2 .. II
+chrM 6719 T 2 .. II
+chrM 6720 C 2 .. IA
+chrM 6721 T 2 .. II
+chrM 6722 C 2 .. II
+chrM 6723 A 2 .. FI
+chrM 6724 T 2 .. II
+chrM 6725 C 2 .. II
+chrM 6726 C 2 .. II
+chrM 6727 A 2 .. I>
+chrM 6728 T 2 .. II
+chrM 6729 A 2 .. GI
+chrM 6730 G 2 .$. IH
+chrM 6731 G 1 . I
+chrM 6732 A 1 . =
+chrM 6733 T 1 . I
+chrM 6734 C 1 . I
+chrM 6735 T 1 . I
+chrM 6736 T 1 . I
+chrM 6737 T 1 . I
+chrM 6738 T 1 .$ I
+chrM 6809 C 1 ^:, )
+chrM 6810 T 1 , I
+chrM 6811 A 1 , I
+chrM 6812 C 1 , &
+chrM 6813 A 1 , I
+chrM 6814 G 1 , I
+chrM 6815 T 1 , I
+chrM 6816 A 1 , I
+chrM 6817 G 1 , I
+chrM 6818 A 1 , I
+chrM 6819 A 1 , I
+chrM 6820 T 1 , I
+chrM 6821 T 1 , I
+chrM 6822 A 1 , I
+chrM 6823 A 1 , I
+chrM 6824 C 1 , 1
+chrM 6825 C 1 , I
+chrM 6826 T 1 , I
+chrM 6827 C 1 , I
+chrM 6828 A 1 , I
+chrM 6829 A 1 , I
+chrM 6830 C 1 , I
+chrM 6831 T 1 , I
+chrM 6832 A 1 , I
+chrM 6833 A 1 , I
+chrM 6834 T 1 , I
+chrM 6835 C 1 , I
+chrM 6836 T 1 n "
+chrM 6837 G 1 n "
+chrM 6838 G 1 , I
+chrM 6839 A 1 , I
+chrM 6840 A 1 , I
+chrM 6841 T 1 , I
+chrM 6842 G 1 , I
+chrM 6843 A 1 , I
+chrM 6844 C 1 ,$ I
+chrM 7018 A 1 ^:. I
+chrM 7019 A 1 . I
+chrM 7020 A 1 . I
+chrM 7021 T 1 . I
+chrM 7022 T 1 . I
+chrM 7023 A 1 . I
+chrM 7024 T 1 . I
+chrM 7025 A 1 N "
+chrM 7026 G 1 N "
+chrM 7027 G 1 . I
+chrM 7028 T 1 . I
+chrM 7029 T 1 . I
+chrM 7030 A 1 . I
+chrM 7031 A 1 . I
+chrM 7032 A 1 . I
+chrM 7033 C 1 . I
+chrM 7034 C 1 . I
+chrM 7035 C 1 . I
+chrM 7036 C 1 . I
+chrM 7037 T 1 . I
+chrM 7038 A 1 . I
+chrM 7039 T 1 . I
+chrM 7040 A 1 . B
+chrM 7041 T 1 . I
+chrM 7042 A 1 . D
+chrM 7043 C 1 . I
+chrM 7044 C 1 . I
+chrM 7045 T 1 . I
+chrM 7046 C 1 . I
+chrM 7047 T 1 . I
+chrM 7048 A 1 . 0
+chrM 7049 T 1 . I
+chrM 7050 G 1 . I
+chrM 7051 G 1 . -
+chrM 7052 C 1 . I
+chrM 7053 C 1 .$ G
+chrM 7122 C 1 ^:, I
+chrM 7123 C 1 , I
+chrM 7124 A 1 , I
+chrM 7125 C 1 , 4
+chrM 7126 A 1 , I
+chrM 7127 C 1 , I
+chrM 7128 A 1 , I
+chrM 7129 C 1 , I
+chrM 7130 T 1 , I
+chrM 7131 A 1 , I
+chrM 7132 A 1 , I
+chrM 7133 T 1 , I
+chrM 7134 A 1 , I
+chrM 7135 A 1 , I
+chrM 7136 T 1 , I
+chrM 7137 C 1 , I
+chrM 7138 G 1 , I
+chrM 7139 T 1 , I
+chrM 7140 A 1 , I
+chrM 7141 T 1 , I
+chrM 7142 T 1 , I
+chrM 7143 C 1 , I
+chrM 7144 C 1 , I
+chrM 7145 T 1 , I
+chrM 7146 A 1 , I
+chrM 7147 A 1 , I
+chrM 7148 T 1 , I
+chrM 7149 T 1 n "
+chrM 7150 A 1 n "
+chrM 7151 G 1 , I
+chrM 7152 C 1 , I
+chrM 7153 T 1 , I
+chrM 7154 C 1 , I
+chrM 7155 T 1 , I
+chrM 7156 C 1 , I
+chrM 7157 T 1 ,$ I
+chrM 7191 T 1 ^:, <
+chrM 7192 A 1 , I
+chrM 7193 A 1 , I
+chrM 7194 A 1 , I
+chrM 7195 T 1 , 0
+chrM 7196 T 1 , E
+chrM 7197 A 1 , I
+chrM 7198 A 1 , I
+chrM 7199 C 1 , 3
+chrM 7200 C 1 , +
+chrM 7201 C 1 , 3
+chrM 7202 A 1 , I
+chrM 7203 T 1 , 2
+chrM 7204 A 1 , 9
+chrM 7205 C 1 , I
+chrM 7206 C 1 , >
+chrM 7207 A 1 , I
+chrM 7208 G 1 , I
+chrM 7209 C 1 , I
+chrM 7210 A 1 , 8
+chrM 7211 C 1 , A
+chrM 7212 C 1 , I
+chrM 7213 A 1 , I
+chrM 7214 T 1 , I
+chrM 7215 A 1 , I
+chrM 7216 G 1 , I
+chrM 7217 A 1 , I
+chrM 7218 T 1 n "
+chrM 7219 G 1 n "
+chrM 7220 C 1 , I
+chrM 7221 T 1 , I
+chrM 7222 C 1 , I
+chrM 7223 A 1 , I
+chrM 7224 A 1 , I
+chrM 7225 G 1 , I
+chrM 7226 A 1 ,$ I
+chrM 7348 G 1 ^:, I
+chrM 7349 G 1 , I
+chrM 7350 C 1 , /
+chrM 7351 C 1 , <
+chrM 7352 A 1 , )
+chrM 7353 C 1 , 2
+chrM 7354 C 1 , I
+chrM 7355 A 1 , I
+chrM 7356 A 1 , I
+chrM 7357 T 1 , I
+chrM 7358 G 1 , I
+chrM 7359 A 1 , I
+chrM 7360 T 1 , I
+chrM 7361 A 1 , I
+chrM 7362 C 1 , I
+chrM 7363 T 1 , I
+chrM 7364 G 1 , I
+chrM 7365 A 1 , I
+chrM 7366 A 1 , I
+chrM 7367 G 1 , I
+chrM 7368 C 1 , I
+chrM 7369 T 1 , I
+chrM 7370 A 1 , I
+chrM 7371 C 1 , I
+chrM 7372 G 1 , I
+chrM 7373 A 1 , I
+chrM 7374 G 1 , I
+chrM 7375 T 1 n "
+chrM 7376 A 1 n "
+chrM 7377 T 1 , I
+chrM 7378 A 1 , I
+chrM 7379 C 1 , I
+chrM 7380 C 1 , I
+chrM 7381 G 1 , I
+chrM 7382 A 1 , I
+chrM 7383 T 1 ,$ I
+chrM 7398 C 1 ^:, I
+chrM 7399 T 1 , E
+chrM 7400 T 1 , I
+chrM 7401 T 1 , I
+chrM 7402 G 1 , I
+chrM 7403 A 1 , I
+chrM 7404 C 1 , I
+chrM 7405 T 1 , I
+chrM 7406 C 1 , I
+chrM 7407 C 1 , I
+chrM 7408 T 1 , I
+chrM 7409 A 1 , I
+chrM 7410 C 1 , I
+chrM 7411 A 1 , I
+chrM 7412 T 1 , I
+chrM 7413 G 1 , I
+chrM 7414 A 1 , I
+chrM 7415 T 1 , I
+chrM 7416 C 1 , I
+chrM 7417 C 1 , I
+chrM 7418 C 1 , I
+chrM 7419 C 1 , I
+chrM 7420 A 1 , I
+chrM 7421 C 1 , I
+chrM 7422 A 1 , I
+chrM 7423 T 1 , I
+chrM 7424 C 1 , I
+chrM 7425 A 1 n "
+chrM 7426 G 1 n "
+chrM 7427 A 1 , I
+chrM 7428 C 1 , I
+chrM 7429 C 1 , I
+chrM 7430 T 1 , I
+chrM 7431 A 1 , I
+chrM 7432 A 1 , I
+chrM 7433 A 1 ,$ I
+chrM 7564 G 1 ^:, 5
+chrM 7565 A 1 , I
+chrM 7566 C 1 , I
+chrM 7567 G 1 , I
+chrM 7568 C 1 , @
+chrM 7569 T 1 , 6
+chrM 7570 A 1 , I
+chrM 7571 T 1 , I
+chrM 7572 C 1 , I
+chrM 7573 C 1 , I
+chrM 7574 C 1 , I
+chrM 7575 T 1 , >
+chrM 7576 G 1 , I
+chrM 7577 G 1 , I
+chrM 7578 G 1 , I
+chrM 7579 C 1 , 5
+chrM 7580 G 1 , I
+chrM 7581 C 1 , I
+chrM 7582 C 1 , I
+chrM 7583 T 1 , I
+chrM 7584 A 1 , I
+chrM 7585 A 1 , I
+chrM 7586 A 1 , I
+chrM 7587 T 1 , I
+chrM 7588 C 1 , I
+chrM 7589 A 1 , I
+chrM 7590 G 1 , I
+chrM 7591 A 1 n "
+chrM 7592 C 1 n "
+chrM 7593 A 1 , I
+chrM 7594 A 1 , I
+chrM 7595 C 1 , I
+chrM 7596 T 1 , I
+chrM 7597 C 1 , I
+chrM 7598 T 1 , I
+chrM 7599 C 1 ,$ I
+chrM 7752 A 1 ^:. I
+chrM 7753 G 1 . I
+chrM 7754 C 1 . I
+chrM 7755 A 1 . I
+chrM 7756 T 1 . I
+chrM 7757 T 1 . I
+chrM 7758 A 1 . I
+chrM 7759 A 1 N "
+chrM 7760 C 1 N "
+chrM 7761 C 1 . I
+chrM 7762 T 1 . I
+chrM 7763 T 1 . I
+chrM 7764 T 1 . I
+chrM 7765 T 1 . I
+chrM 7766 A 1 . I
+chrM 7767 A 1 . ,
+chrM 7768 G 1 . I
+chrM 7769 T 1 . I
+chrM 7770 T 1 . I
+chrM 7771 A 1 . B
+chrM 7772 A 1 . ;
+chrM 7773 A 1 . B
+chrM 7774 G 1 . I
+chrM 7775 A 1 . <
+chrM 7776 T 1 . I
+chrM 7777 T 1 . I
+chrM 7778 G 1 . I
+chrM 7779 A 1 . I
+chrM 7780 G 1 . I
+chrM 7781 G 1 . I
+chrM 7782 G 1 . +
+chrM 7783 T 1 . I
+chrM 7784 T 1 . I
+chrM 7785 C 1 . I
+chrM 7786 A 1 . B
+chrM 7787 A 1 .$ I
+chrM 7971 G 1 ^:, @
+chrM 7972 A 1 , I
+chrM 7973 A 1 , I
+chrM 7974 A 1 , I
+chrM 7975 A 1 , I
+chrM 7976 T 1 , 7
+chrM 7977 C 1 , I
+chrM 7978 T 1 , I
+chrM 7979 A 1 , I
+chrM 7980 T 1 , D
+chrM 7981 T 1 , C
+chrM 7982 C 1 , I
+chrM 7983 G 1 , I
+chrM 7984 C 1 , I
+chrM 7985 C 1 , I
+chrM 7986 T 1 , B
+chrM 7987 C 1 , I
+chrM 7988 T 1 , I
+chrM 7989 T 1 , I
+chrM 7990 T 1 , I
+chrM 7991 C 1 , I
+chrM 7992 G 1 , I
+chrM 7993 C 1 , I
+chrM 7994 T 1 , I
+chrM 7995 A 1 , I
+chrM 7996 C 1 , I
+chrM 7997 C 1 , I
+chrM 7998 C 1 n "
+chrM 7999 C 1 n "
+chrM 8000 A 1 , I
+chrM 8001 A 1 , I
+chrM 8002 C 1 , I
+chrM 8003 A 1 , I
+chrM 8004 A 1 , I
+chrM 8005 T 1 , I
+chrM 8006 A 1 ,$ I
+chrM 8346 T 1 ^:. I
+chrM 8347 T 1 . I
+chrM 8348 T 1 . I
+chrM 8349 C 1 . I
+chrM 8350 T 1 . I
+chrM 8351 A 1 . I
+chrM 8352 C 1 . I
+chrM 8353 C 1 N "
+chrM 8354 T 1 N "
+chrM 8355 C 1 . I
+chrM 8356 A 1 . I
+chrM 8357 A 1 . I
+chrM 8358 G 1 . I
+chrM 8359 G 1 . I
+chrM 8360 G 1 . =
+chrM 8361 A 1 . I
+chrM 8362 C 1 . 7
+chrM 8363 G 1 . I
+chrM 8364 C 1 . I
+chrM 8365 C 1 . I
+chrM 8366 C 1 . I
+chrM 8367 A 1 . 3
+chrM 8368 T 1 . I
+chrM 8369 T 1 . I
+chrM 8370 T 1 . I
+chrM 8371 T 1 . I
+chrM 8372 C 1 . I
+chrM 8373 C 1 . I
+chrM 8374 T 1 . I
+chrM 8375 C 1 . I
+chrM 8376 A 1 . /
+chrM 8377 T 1 . I
+chrM 8378 C 1 . D
+chrM 8379 C 1 . @
+chrM 8380 C 1 . I
+chrM 8381 C 1 .$ I
+chrM 8421 C 1 ^:, I
+chrM 8422 C 1 , I
+chrM 8423 T 1 , %
+chrM 8424 G 1 , :
+chrM 8425 T 1 , :
+chrM 8426 A 1 , I
+chrM 8427 G 1 , <
+chrM 8428 C 1 , I
+chrM 8429 C 1 , I
+chrM 8430 C 1 , I
+chrM 8431 T 1 , I
+chrM 8432 A 1 , I
+chrM 8433 G 1 , E
+chrM 8434 C 1 , I
+chrM 8435 C 1 , I
+chrM 8436 G 1 , I
+chrM 8437 T 1 , 8
+chrM 8438 G 1 , I
+chrM 8439 C 1 , I
+chrM 8440 G 1 , I
+chrM 8441 G 1 , I
+chrM 8442 C 1 , I
+chrM 8443 T 1 , I
+chrM 8444 A 1 , I
+chrM 8445 A 1 , I
+chrM 8446 C 1 , I
+chrM 8447 C 1 , I
+chrM 8448 G 1 n "
+chrM 8449 C 1 n "
+chrM 8450 T 2 ,^:, II
+chrM 8451 A 2 ,, II
+chrM 8452 A 2 ,, II
+chrM 8453 C 2 ,, II
+chrM 8454 A 2 ,, II
+chrM 8455 T 2 ,, I>
+chrM 8456 T 2 ,$, I1
+chrM 8457 A 1 , I
+chrM 8458 C 1 , I
+chrM 8459 C 1 , I
+chrM 8460 G 1 , I
+chrM 8461 C 1 , I
+chrM 8462 C 1 , I
+chrM 8463 G 1 , I
+chrM 8464 G 1 , I
+chrM 8465 A 1 , I
+chrM 8466 C 1 , I
+chrM 8467 A 1 , I
+chrM 8468 C 1 , I
+chrM 8469 C 1 , I
+chrM 8470 T 1 , I
+chrM 8471 C 1 , I
+chrM 8472 C 1 , I
+chrM 8473 T 1 , I
+chrM 8474 A 1 , I
+chrM 8475 A 1 , I
+chrM 8476 T 1 , I
+chrM 8477 A 1 n "
+chrM 8478 C 1 n "
+chrM 8479 A 1 , I
+chrM 8480 C 1 , I
+chrM 8481 C 1 , I
+chrM 8482 T 1 , I
+chrM 8483 C 1 , I
+chrM 8484 A 1 , I
+chrM 8485 T 1 ,$ I
+chrM 8630 A 1 ^:. I
+chrM 8631 C 1 . I
+chrM 8632 A 1 . I
+chrM 8633 C 1 . I
+chrM 8634 G 1 . I
+chrM 8635 A 1 . I
+chrM 8636 C 1 . I
+chrM 8637 A 1 N "
+chrM 8638 A 1 N "
+chrM 8639 C 1 . I
+chrM 8640 A 1 . I
+chrM 8641 C 1 . I
+chrM 8642 C 1 . I
+chrM 8643 T 1 . I
+chrM 8644 A 1 . I
+chrM 8645 A 1 . I
+chrM 8646 T 1 . I
+chrM 8647 G 1 . I
+chrM 8648 A 1 . I
+chrM 8649 C 1 . I
+chrM 8650 C 1 . I
+chrM 8651 C 1 . I
+chrM 8652 A 1 . I
+chrM 8653 C 1 . I
+chrM 8654 C 1 . I
+chrM 8655 A 1 . >
+chrM 8656 A 1 . C
+chrM 8657 A 1 . :
+chrM 8658 C 1 . I
+chrM 8659 C 1 . I
+chrM 8660 C 1 . I
+chrM 8661 A 1 . D
+chrM 8662 C 1 . I
+chrM 8663 G 1 . <
+chrM 8664 C 1 . I
+chrM 8665 T 1 .$ I
+chrM 8752 C 1 ^:, I
+chrM 8753 T 1 , B
+chrM 8754 T 1 , I
+chrM 8755 T 1 , I
+chrM 8756 A 1 , I
+chrM 8757 A 1 , I
+chrM 8758 C 1 , I
+chrM 8759 T 1 , I
+chrM 8760 C 1 , I
+chrM 8761 A 1 , I
+chrM 8762 A 1 , I
+chrM 8763 C 1 , I
+chrM 8764 C 2 ,^:, II
+chrM 8765 T 2 ,, IA
+chrM 8766 T 2 ,, IA
+chrM 8767 A 2 ,, II
+chrM 8768 C 2 ,, II
+chrM 8769 T 2 ,, IH
+chrM 8770 T 2 ,, IA
+chrM 8771 C 2 ,, II
+chrM 8772 T 2 ,, I?
+chrM 8773 A 2 ,, II
+chrM 8774 G 2 ,, II
+chrM 8775 C 2 ,, II
+chrM 8776 T 2 ,, II
+chrM 8777 A 2 ,, II
+chrM 8778 T 2 ,, II
+chrM 8779 A 2 n, "I
+chrM 8780 G 2 n, "I
+chrM 8781 G 2 ,, II
+chrM 8782 G 2 ,, II
+chrM 8783 C 2 ,, II
+chrM 8784 T 2 ,, II
+chrM 8785 A 2 ,, II
+chrM 8786 T 2 ,, II
+chrM 8787 T 2 ,$, II
+chrM 8788 A 1 , I
+chrM 8789 A 1 , I
+chrM 8790 C 1 , I
+chrM 8791 T 1 n "
+chrM 8792 A 1 n "
+chrM 8793 A 1 , I
+chrM 8794 C 1 , I
+chrM 8795 A 1 , I
+chrM 8796 T 1 , I
+chrM 8797 C 1 , I
+chrM 8798 C 1 , I
+chrM 8799 T 1 ,$ I
+chrM 8908 C 1 ^:, I
+chrM 8909 T 1 , :
+chrM 8910 C 1 , I
+chrM 8911 A 1 , I
+chrM 8912 G 1 , D
+chrM 8913 A 1 , I
+chrM 8914 A 1 , I
+chrM 8915 G 1 , I
+chrM 8916 T 1 , I
+chrM 8917 C 1 , I
+chrM 8918 T 1 , I
+chrM 8919 T 1 , <
+chrM 8920 C 1 , I
+chrM 8921 T 1 , F
+chrM 8922 T 1 , I
+chrM 8923 C 1 , I
+chrM 8924 T 1 , F
+chrM 8925 T 1 , E
+chrM 8926 C 1 , I
+chrM 8927 T 1 , H
+chrM 8928 C 1 , I
+chrM 8929 T 2 ,^:, II
+chrM 8930 G 2 ,, II
+chrM 8931 G 2 ,, II
+chrM 8932 C 2 ,, II
+chrM 8933 T 2 ,, II
+chrM 8934 T 2 ,, II
+chrM 8935 C 2 n, "I
+chrM 8936 T 2 n, ";
+chrM 8937 T 2 ,, IG
+chrM 8938 C 2 ,, II
+chrM 8939 T 2 ,, IE
+chrM 8940 G 2 ,, II
+chrM 8941 A 2 ,, II
+chrM 8942 G 2 ,, II
+chrM 8943 C 2 ,$, II
+chrM 8944 C 1 , I
+chrM 8945 T 1 , I
+chrM 8946 T 1 , I
+chrM 8947 T 1 , I
+chrM 8948 T 1 , I
+chrM 8949 A 1 , I
+chrM 8950 C 1 , I
+chrM 8951 C 1 , I
+chrM 8952 A 1 , I
+chrM 8953 C 1 , I
+chrM 8954 T 1 , I
+chrM 8955 C 1 , I
+chrM 8956 A 1 n "
+chrM 8957 A 1 n "
+chrM 8958 G 1 , I
+chrM 8959 C 1 , I
+chrM 8960 C 1 , I
+chrM 8961 T 1 , I
+chrM 8962 A 1 , I
+chrM 8963 G 1 , I
+chrM 8964 C 1 ,$ I
+chrM 9111 G 1 ^:. I
+chrM 9112 T 1 . I
+chrM 9113 A 1 . I
+chrM 9114 A 1 . I
+chrM 9115 A 1 . I
+chrM 9116 A 1 . I
+chrM 9117 A 1 . I
+chrM 9118 T 1 N "
+chrM 9119 A 1 N "
+chrM 9120 T 1 . I
+chrM 9121 G 1 . I
+chrM 9122 C 1 . I
+chrM 9123 T 1 . I
+chrM 9124 C 1 . I
+chrM 9125 C 1 . I
+chrM 9126 A 1 . I
+chrM 9127 A 1 . I
+chrM 9128 G 1 . I
+chrM 9129 G 1 . I
+chrM 9130 C 1 . I
+chrM 9131 C 1 . I
+chrM 9132 T 1 . I
+chrM 9133 A 1 . I
+chrM 9134 T 1 . I
+chrM 9135 T 1 . I
+chrM 9136 C 1 . I
+chrM 9137 A 1 . I
+chrM 9138 T 1 . I
+chrM 9139 C 1 . I
+chrM 9140 A 1 . E
+chrM 9141 C 1 . I
+chrM 9142 A 1 . B
+chrM 9143 A 1 . 8
+chrM 9144 T 1 . I
+chrM 9145 T 1 . I
+chrM 9146 T 1 .$ I
+chrM 9331 C 1 ^:, &
+chrM 9332 A 1 , ,
+chrM 9333 G 1 , *
+chrM 9334 C 1 , I
+chrM 9335 C 1 , I
+chrM 9336 A 1 , -
+chrM 9337 C 1 , <
+chrM 9338 C 1 , ?
+chrM 9339 A 1 , <
+chrM 9340 C 1 , I
+chrM 9341 T 1 , I
+chrM 9342 T 1 , 4
+chrM 9343 C 1 , I
+chrM 9344 G 1 , (
+chrM 9345 G 1 , I
+chrM 9346 A 1 , 1
+chrM 9347 T 1 , I
+chrM 9348 T 1 , I
+chrM 9349 C 1 , I
+chrM 9350 G 2 ,^:. II
+chrM 9351 A 2 ,. II
+chrM 9352 A 2 ,. DI
+chrM 9353 G 2 ,. II
+chrM 9354 C 2 ,. II
+chrM 9355 A 2 ,. II
+chrM 9356 G 2 ,. II
+chrM 9357 C 2 ,N I"
+chrM 9358 C 2 nN ""
+chrM 9359 G 2 n. "I
+chrM 9360 C 2 ,. II
+chrM 9361 T 2 ,. II
+chrM 9362 T 2 ,. II
+chrM 9363 G 2 ,. II
+chrM 9364 A 2 ,. II
+chrM 9365 T 2 ,. II
+chrM 9366 A 2 ,$. II
+chrM 9367 C 1 . I
+chrM 9368 T 1 . I
+chrM 9369 G 1 . I
+chrM 9370 A 1 . I
+chrM 9371 C 1 . I
+chrM 9372 A 1 . I
+chrM 9373 C 1 . I
+chrM 9374 T 1 . I
+chrM 9375 T 1 . I
+chrM 9376 C 1 . I
+chrM 9377 G 1 . I
+chrM 9378 T 1 . I
+chrM 9379 C 1 . I
+chrM 9380 G 1 . I
+chrM 9381 A 1 . 9
+chrM 9382 C 1 . I
+chrM 9383 G 1 . I
+chrM 9384 T 1 . D
+chrM 9385 A 1 .$ F
+chrM 9563 C 1 ^:, I
+chrM 9564 T 1 , +
+chrM 9565 G 1 , -
+chrM 9566 A 1 , I
+chrM 9567 C 1 , I
+chrM 9568 T 1 , ?
+chrM 9569 A 1 , I
+chrM 9570 C 1 , D
+chrM 9571 C 1 , I
+chrM 9572 A 1 , I
+chrM 9573 C 1 , I
+chrM 9574 A 1 , I
+chrM 9575 A 1 , I
+chrM 9576 C 1 , I
+chrM 9577 T 1 , I
+chrM 9578 A 1 , I
+chrM 9579 A 1 , I
+chrM 9580 A 1 , I
+chrM 9581 C 1 , I
+chrM 9582 A 1 , I
+chrM 9583 T 1 , I
+chrM 9584 C 1 , I
+chrM 9585 T 1 , I
+chrM 9586 A 1 , I
+chrM 9587 T 1 , I
+chrM 9588 G 1 , I
+chrM 9589 C 1 , I
+chrM 9590 A 1 n "
+chrM 9591 G 1 n "
+chrM 9592 A 1 , I
+chrM 9593 A 1 , I
+chrM 9594 A 1 , I
+chrM 9595 A 1 , I
+chrM 9596 A 1 , I
+chrM 9597 A 1 , I
+chrM 9598 C 1 ,$ I
+chrM 9689 A 1 ^:, ,
+chrM 9690 T 1 , C
+chrM 9691 T 1 , I
+chrM 9692 C 1 , I
+chrM 9693 G 1 , I
+chrM 9694 A 1 , .
+chrM 9695 C 1 , I
+chrM 9696 T 1 , I
+chrM 9697 T 1 , 0
+chrM 9698 A 1 , I
+chrM 9699 G 1 , <
+chrM 9700 A 1 , I
+chrM 9701 A 1 , F
+chrM 9702 A 1 , I
+chrM 9703 T 1 , ;
+chrM 9704 T 1 , I
+chrM 9705 G 1 , I
+chrM 9706 C 1 , I
+chrM 9707 C 1 , I
+chrM 9708 C 1 , I
+chrM 9709 T 1 , D
+chrM 9710 C 1 , I
+chrM 9711 C 1 , I
+chrM 9712 T 1 , I
+chrM 9713 A 1 , I
+chrM 9714 T 1 , I
+chrM 9715 T 1 , I
+chrM 9716 A 1 n "
+chrM 9717 C 1 n "
+chrM 9718 C 1 , I
+chrM 9719 C 1 , I
+chrM 9720 C 1 , I
+chrM 9721 T 1 , I
+chrM 9722 T 1 , &
+chrM 9723 C 1 , I
+chrM 9724 C 1 ,$ I
+chrM 9810 G 1 ^:, A
+chrM 9811 A 1 , I
+chrM 9812 A 1 , I
+chrM 9813 T 1 , I
+chrM 9814 G 1 , I
+chrM 9815 A 1 , I
+chrM 9816 A 1 , I
+chrM 9817 C 1 , ?
+chrM 9818 C 1 , 2
+chrM 9819 C 1 , 2
+chrM 9820 A 1 , I
+chrM 9821 A 1 , I
+chrM 9822 A 1 , I
+chrM 9823 A 1 , I
+chrM 9824 A 1 , I
+chrM 9825 G 1 , I
+chrM 9826 G 1 , I
+chrM 9827 A 1 , I
+chrM 9828 C 1 , I
+chrM 9829 T 1 , I
+chrM 9830 A 1 , I
+chrM 9831 G 1 , I
+chrM 9832 A 1 , I
+chrM 9833 A 1 , I
+chrM 9834 T 1 , I
+chrM 9835 G 1 , I
+chrM 9836 A 1 , I
+chrM 9837 A 1 n "
+chrM 9838 C 1 n "
+chrM 9839 T 1 , I
+chrM 9840 G 1 , I
+chrM 9841 A 1 , I
+chrM 9842 G 1 , I
+chrM 9843 T 1 , I
+chrM 9844 A 1 , I
+chrM 9845 T 1 ,$ I
+chrM 9916 T 1 ^:. I
+chrM 9917 G 1 . I
+chrM 9918 T 1 . I
+chrM 9919 C 1 . I
+chrM 9920 A 1 . I
+chrM 9921 C 1 . I
+chrM 9922 T 1 . I
+chrM 9923 A 1 N "
+chrM 9924 G 1 N "
+chrM 9925 T 1 . I
+chrM 9926 C 1 . I
+chrM 9927 C 1 . I
+chrM 9928 A 1 . I
+chrM 9929 T 1 . I
+chrM 9930 A 1 . =
+chrM 9931 T 1 . I
+chrM 9932 T 1 . I
+chrM 9933 A 1 . I
+chrM 9934 A 1 . 9
+chrM 9935 T 1 . I
+chrM 9936 A 1 . @
+chrM 9937 T 1 . I
+chrM 9938 C 1 . I
+chrM 9939 T 1 . I
+chrM 9940 T 1 . I
+chrM 9941 C 1 . I
+chrM 9942 C 1 . I
+chrM 9943 T 1 . I
+chrM 9944 A 1 . B
+chrM 9945 G 1 . I
+chrM 9946 C 1 . I
+chrM 9947 A 1 . E
+chrM 9948 T 1 . I
+chrM 9949 T 1 . I
+chrM 9950 C 1 . I
+chrM 9951 A 1 .$ >
+chrM 10002 C 1 ^:, I
+chrM 10003 T 1 , :
+chrM 10004 C 1 , 2
+chrM 10005 C 1 , I
+chrM 10006 T 1 , E
+chrM 10007 A 1 , I
+chrM 10008 T 1 , :
+chrM 10009 G 1 , I
+chrM 10010 C 1 , I
+chrM 10011 C 1 , D
+chrM 10012 T 1 , I
+chrM 10013 A 1 , I
+chrM 10014 G 1 , I
+chrM 10015 A 1 , I
+chrM 10016 A 1 , I
+chrM 10017 G 1 , I
+chrM 10018 G 1 , 4
+chrM 10019 A 1 , I
+chrM 10020 A 1 , I
+chrM 10021 T 1 , I
+chrM 10022 A 1 , I
+chrM 10023 A 1 , I
+chrM 10024 T 1 , I
+chrM 10025 A 1 , I
+chrM 10026 C 1 , I
+chrM 10027 T 1 , I
+chrM 10028 A 1 , I
+chrM 10029 T 1 n "
+chrM 10030 C 1 n "
+chrM 10031 A 1 , I
+chrM 10032 C 1 , I
+chrM 10033 T 1 , I
+chrM 10034 A 1 , I
+chrM 10035 T 1 , I
+chrM 10036 T 1 , I
+chrM 10037 C 1 ,$ I
+chrM 10391 G 1 ^:. I
+chrM 10392 C 1 . I
+chrM 10393 C 1 . I
+chrM 10394 C 1 . I
+chrM 10395 C 1 . I
+chrM 10396 A 1 . I
+chrM 10397 C 1 . I
+chrM 10398 T 1 N "
+chrM 10399 T 1 N "
+chrM 10400 C 1 . I
+chrM 10401 T 1 . I
+chrM 10402 G 1 . I
+chrM 10403 G 1 . I
+chrM 10404 T 1 . I
+chrM 10405 G 1 . I
+chrM 10406 T 1 . I
+chrM 10407 T 1 . I
+chrM 10408 G 1 . I
+chrM 10409 A 1 . I
+chrM 10410 C 1 . I
+chrM 10411 A 1 . I
+chrM 10412 A 1 . I
+chrM 10413 C 1 . I
+chrM 10414 A 1 . =
+chrM 10415 T 1 . I
+chrM 10416 G 1 . *
+chrM 10417 A 1 . 5
+chrM 10418 C 1 . I
+chrM 10419 T 1 . I
+chrM 10420 A 1 . <
+chrM 10421 C 1 . I
+chrM 10422 T 1 . I
+chrM 10423 G 1 . '
+chrM 10424 C 1 . I
+chrM 10425 C 1 . I
+chrM 10426 A 1 .$ (
+chrM 10597 T 1 ^:, H
+chrM 10598 A 1 , I
+chrM 10599 T 1 , <
+chrM 10600 C 1 , I
+chrM 10601 A 1 , I
+chrM 10602 T 1 , ;
+chrM 10603 C 1 , I
+chrM 10604 A 1 , I
+chrM 10605 C 1 , I
+chrM 10606 C 1 , I
+chrM 10607 C 1 , I
+chrM 10608 G 1 , I
+chrM 10609 C 1 , I
+chrM 10610 T 1 , I
+chrM 10611 G 1 , I
+chrM 10612 A 1 , I
+chrM 10613 G 1 , I
+chrM 10614 G 1 , I
+chrM 10615 C 1 , I
+chrM 10616 A 1 , I
+chrM 10617 A 2 ,^:, II
+chrM 10618 C 2 ,, II
+chrM 10619 C 2 ,, II
+chrM 10620 A 2 ,, II
+chrM 10621 A 2 ,, II
+chrM 10622 A 2 ,, II
+chrM 10623 C 2 ,, II
+chrM 10624 A 2 n, "I
+chrM 10625 G 2 n, "I
+chrM 10626 A 2 ,, II
+chrM 10627 A 2 ,, II
+chrM 10628 C 2 ,, II
+chrM 10629 G 2 ,, II
+chrM 10630 C 2 ,, II
+chrM 10631 C 2 ,, II
+chrM 10632 T 2 ,$, II
+chrM 10633 G 1 , I
+chrM 10634 A 1 , I
+chrM 10635 A 1 , I
+chrM 10636 C 1 , I
+chrM 10637 G 1 , I
+chrM 10638 C 1 , I
+chrM 10639 A 1 , I
+chrM 10640 G 1 , I
+chrM 10641 G 1 , I
+chrM 10642 C 1 , I
+chrM 10643 C 1 , I
+chrM 10644 T 1 n "
+chrM 10645 C 1 n "
+chrM 10646 T 1 , I
+chrM 10647 A 1 , I
+chrM 10648 C 1 , I
+chrM 10649 T 1 , I
+chrM 10650 T 1 , I
+chrM 10651 C 1 , I
+chrM 10652 C 1 ,$ I
+chrM 10669 A 1 ^:, I
+chrM 10670 G 1 , I
+chrM 10671 G 1 , I
+chrM 10672 T 1 , I
+chrM 10673 T 1 , <
+chrM 10674 C 1 , I
+chrM 10675 C 1 , I
+chrM 10676 C 1 , I
+chrM 10677 T 1 , C
+chrM 10678 C 1 , I
+chrM 10679 C 1 , I
+chrM 10680 C 1 , I
+chrM 10681 A 1 , I
+chrM 10682 C 1 , I
+chrM 10683 T 1 , I
+chrM 10684 C 1 , I
+chrM 10685 T 1 , F
+chrM 10686 T 1 , I
+chrM 10687 A 1 , I
+chrM 10688 G 1 , I
+chrM 10689 T 1 , I
+chrM 10690 T 1 , I
+chrM 10691 G 1 , I
+chrM 10692 C 1 , I
+chrM 10693 A 1 , I
+chrM 10694 C 1 , I
+chrM 10695 T 1 , I
+chrM 10696 A 1 n "
+chrM 10697 A 1 n "
+chrM 10698 T 1 , I
+chrM 10699 C 1 , I
+chrM 10700 T 1 , I
+chrM 10701 C 1 , I
+chrM 10702 T 1 , I
+chrM 10703 A 1 , I
+chrM 10704 T 1 ,$ I
+chrM 10731 T 1 ^:. I
+chrM 10732 C 1 . I
+chrM 10733 C 1 . I
+chrM 10734 T 1 . I
+chrM 10735 A 1 . I
+chrM 10736 T 1 . I
+chrM 10737 T 1 . I
+chrM 10738 A 1 N "
+chrM 10739 A 1 N "
+chrM 10740 T 1 . I
+chrM 10741 T 1 . I
+chrM 10742 C 1 . I
+chrM 10743 A 1 . I
+chrM 10744 A 1 . I
+chrM 10745 T 1 . I
+chrM 10746 A 1 . I
+chrM 10747 C 1 . I
+chrM 10748 T 1 . I
+chrM 10749 G 1 . I
+chrM 10750 A 1 . I
+chrM 10751 A 1 . I
+chrM 10752 A 1 . I
+chrM 10753 C 1 . I
+chrM 10754 C 1 . I
+chrM 10755 A 1 . I
+chrM 10756 A 1 . F
+chrM 10757 G 1 . I
+chrM 10758 C 1 . I
+chrM 10759 A 1 . I
+chrM 10760 C 1 . I
+chrM 10761 T 1 . I
+chrM 10762 A 1 . @
+chrM 10763 C 1 . I
+chrM 10764 C 1 . I
+chrM 10765 C 1 . I
+chrM 10766 G 1 .$ H
+chrM 10784 T 1 ^:, E
+chrM 10785 T 1 , 9
+chrM 10786 C 1 , I
+chrM 10787 C 1 , /
+chrM 10788 T 1 , B
+chrM 10789 A 1 , I
+chrM 10790 T 1 , I
+chrM 10791 G 1 , I
+chrM 10792 A 1 , I
+chrM 10793 C 1 , C
+chrM 10794 T 1 , I
+chrM 10795 A 1 , I
+chrM 10796 G 1 , I
+chrM 10797 C 1 , I
+chrM 10798 A 1 , I
+chrM 10799 T 1 , F
+chrM 10800 G 1 , I
+chrM 10801 T 1 , I
+chrM 10802 A 1 , I
+chrM 10803 T 1 , I
+chrM 10804 A 1 , I
+chrM 10805 A 1 , I
+chrM 10806 T 1 , I
+chrM 10807 A 1 , I
+chrM 10808 G 1 , I
+chrM 10809 C 1 , I
+chrM 10810 A 1 , I
+chrM 10811 T 1 n "
+chrM 10812 T 1 n "
+chrM 10813 C 1 , I
+chrM 10814 A 1 , I
+chrM 10815 T 1 , I
+chrM 10816 A 1 , I
+chrM 10817 G 1 , I
+chrM 10818 T 1 , I
+chrM 10819 C 1 ,$ I
+chrM 10864 T 1 ^:, D
+chrM 10865 G 1 , B
+chrM 10866 T 1 , A
+chrM 10867 A 1 , I
+chrM 10868 G 1 , I
+chrM 10869 A 1 , I
+chrM 10870 A 1 , I
+chrM 10871 G 1 , I
+chrM 10872 C 1 , I
+chrM 10873 C 1 , I
+chrM 10874 C 1 , I
+chrM 10875 C 1 , I
+chrM 10876 A 1 , I
+chrM 10877 A 1 , I
+chrM 10878 T 1 , F
+chrM 10879 T 1 , I
+chrM 10880 G 1 , I
+chrM 10881 C 1 , I
+chrM 10882 C 1 , I
+chrM 10883 G 1 , I
+chrM 10884 G 1 , I
+chrM 10885 A 1 , I
+chrM 10886 T 1 , I
+chrM 10887 C 1 , I
+chrM 10888 C 1 , I
+chrM 10889 A 1 , I
+chrM 10890 T 1 , I
+chrM 10891 A 2 n^:, "5
+chrM 10892 G 2 n, "7
+chrM 10893 T 2 ,, I-
+chrM 10894 G 2 ,, IC
+chrM 10895 C 2 ,, I5
+chrM 10896 T 2 ,, I,
+chrM 10897 A 2 ,, II
+chrM 10898 G 2 ,, I5
+chrM 10899 C 2 ,$, II
+chrM 10900 A 1 , I
+chrM 10901 G 1 , I
+chrM 10902 C 2 ,^:, I'
+chrM 10903 C 2 ,, IA
+chrM 10904 A 2 ,, II
+chrM 10905 T 2 ,, II
+chrM 10906 T 2 ,, II
+chrM 10907 C 2 ,, I7
+chrM 10908 T 2 ,, I=
+chrM 10909 A 2 ,, @I
+chrM 10910 C 2 ,, II
+chrM 10911 T 2 ,, ID
+chrM 10912 A 2 ,, II
+chrM 10913 A 2 ,, II
+chrM 10914 A 2 ,, II
+chrM 10915 A 2 ,, I8
+chrM 10916 C 2 ,, I6
+chrM 10917 T 2 ,, I.
+chrM 10918 A 2 n, "I
+chrM 10919 G 2 n, "I
+chrM 10920 G 2 ,, II
+chrM 10921 A 2 ,, II
+chrM 10922 G 2 ,, II
+chrM 10923 G 2 ,, II
+chrM 10924 C 2 ,, II
+chrM 10925 T 2 ,, II
+chrM 10926 A 2 ,$, II
+chrM 10927 C 1 , I
+chrM 10928 G 1 , I
+chrM 10929 G 1 n "
+chrM 10930 A 1 n "
+chrM 10931 A 1 , I
+chrM 10932 T 1 , I
+chrM 10933 A 1 , I
+chrM 10934 C 1 , I
+chrM 10935 T 1 , I
+chrM 10936 A 1 , I
+chrM 10937 C 1 ,$ 7
+chrM 10991 A 1 ^:. I
+chrM 10992 T 1 . I
+chrM 10993 A 1 . I
+chrM 10994 C 1 . I
+chrM 10995 T 1 . I
+chrM 10996 A 1 . I
+chrM 10997 T 1 . I
+chrM 10998 C 1 N "
+chrM 10999 C 1 N "
+chrM 11000 C 1 . I
+chrM 11001 T 1 . I
+chrM 11002 G 1 . I
+chrM 11003 T 1 . I
+chrM 11004 G 1 . I
+chrM 11005 A 1 . 2
+chrM 11006 G 1 . I
+chrM 11007 G 1 . I
+chrM 11008 A 1 . I
+chrM 11009 A 1 . I
+chrM 11010 T 1 . I
+chrM 11011 A 1 . I
+chrM 11012 A 1 . I
+chrM 11013 T 1 . I
+chrM 11014 C 1 . I
+chrM 11015 A 1 . I
+chrM 11016 T 1 . I
+chrM 11017 A 1 . F
+chrM 11018 A 1 . I
+chrM 11019 C 1 . I
+chrM 11020 T 1 . I
+chrM 11021 A 1 . :
+chrM 11022 G 1 . I
+chrM 11023 T 1 . I
+chrM 11024 T 1 . I
+chrM 11025 C 1 . I
+chrM 11026 C 1 .$ I
+chrM 11036 C 1 ^:, I
+chrM 11037 G 1 , I
+chrM 11038 A 1 , I
+chrM 11039 C 1 , I
+chrM 11040 A 1 , I
+chrM 11041 A 1 , I
+chrM 11042 A 1 , I
+chrM 11043 C 1 , I
+chrM 11044 C 1 , I
+chrM 11045 G 1 , I
+chrM 11046 A 1 , I
+chrM 11047 T 1 , I
+chrM 11048 C 1 , I
+chrM 11049 T 1 , I
+chrM 11050 A 1 , I
+chrM 11051 A 1 , I
+chrM 11052 A 1 , I
+chrM 11053 A 1 , I
+chrM 11054 T 1 , I
+chrM 11055 C 1 , I
+chrM 11056 A 1 , I
+chrM 11057 C 1 , I
+chrM 11058 T 1 , I
+chrM 11059 T 1 , I
+chrM 11060 A 1 , I
+chrM 11061 T 1 , I
+chrM 11062 T 1 , I
+chrM 11063 G 1 n "
+chrM 11064 C 1 n "
+chrM 11065 A 1 , I
+chrM 11066 T 1 , I
+chrM 11067 A 1 , I
+chrM 11068 C 1 , I
+chrM 11069 T 1 , I
+chrM 11070 C 1 , I
+chrM 11071 C 1 ,$ I
+chrM 11086 A 1 ^:, I
+chrM 11087 G 1 , 1
+chrM 11088 C 1 , '
+chrM 11089 C 1 , =
+chrM 11090 C 1 , D
+chrM 11091 T 1 , 0
+chrM 11092 A 1 , I
+chrM 11093 G 1 , @
+chrM 11094 T 1 , 4
+chrM 11095 A 1 , I
+chrM 11096 A 1 , I
+chrM 11097 T 1 , A
+chrM 11098 C 1 , I
+chrM 11099 G 1 , I
+chrM 11100 T 1 , D
+chrM 11101 A 1 , I
+chrM 11102 G 1 , I
+chrM 11103 C 1 , I
+chrM 11104 C 1 , I
+chrM 11105 G 1 , I
+chrM 11106 T 1 , I
+chrM 11107 C 1 , I
+chrM 11108 C 1 , I
+chrM 11109 T 1 , I
+chrM 11110 C 1 , I
+chrM 11111 A 1 , I
+chrM 11112 T 1 , I
+chrM 11113 C 1 n "
+chrM 11114 C 1 n "
+chrM 11115 A 1 , I
+chrM 11116 A 1 , I
+chrM 11117 A 1 , I
+chrM 11118 C 1 , I
+chrM 11119 A 1 , I
+chrM 11120 C 1 , I
+chrM 11121 C 1 ,$ I
+chrM 11375 A 1 ^:. I
+chrM 11376 T 1 . I
+chrM 11377 T 1 . I
+chrM 11378 A 1 . I
+chrM 11379 C 1 . I
+chrM 11380 C 1 . I
+chrM 11381 A 1 . I
+chrM 11382 T 1 N "
+chrM 11383 T 1 N "
+chrM 11384 A 1 . I
+chrM 11385 T 1 . I
+chrM 11386 C 1 . I
+chrM 11387 C 1 . I
+chrM 11388 T 1 . I
+chrM 11389 A 1 . I
+chrM 11390 A 1 . I
+chrM 11391 T 1 . I
+chrM 11392 A 1 . G
+chrM 11393 G 1 . I
+chrM 11394 G 1 . I
+chrM 11395 A 1 . I
+chrM 11396 G 1 . I
+chrM 11397 C 1 . I
+chrM 11398 C 1 . I
+chrM 11399 A 1 . I
+chrM 11400 A 1 . I
+chrM 11401 T 1 . I
+chrM 11402 A 1 . I
+chrM 11403 T 1 . I
+chrM 11404 C 1 . I
+chrM 11405 A 1 . @
+chrM 11406 C 1 . I
+chrM 11407 C 1 . I
+chrM 11408 A 1 . 4
+chrM 11409 T 1 . I
+chrM 11410 C 1 .$ I
+chrM 11457 A 1 ^:. I
+chrM 11458 A 1 . I
+chrM 11459 T 1 . I
+chrM 11460 A 1 . I
+chrM 11461 C 1 . I
+chrM 11462 A 1 . I
+chrM 11463 C 1 . I
+chrM 11464 A 1 N "
+chrM 11465 C 1 N "
+chrM 11466 A 1 . I
+chrM 11467 C 1 . I
+chrM 11468 C 1 . I
+chrM 11469 A 1 . I
+chrM 11470 T 1 . I
+chrM 11471 A 1 . I
+chrM 11472 T 1 . I
+chrM 11473 C 1 . I
+chrM 11474 A 1 . I
+chrM 11475 A 1 . I
+chrM 11476 C 1 . I
+chrM 11477 A 1 . I
+chrM 11478 G 1 . I
+chrM 11479 C 1 . I
+chrM 11480 A 1 . I
+chrM 11481 T 1 . I
+chrM 11482 T 1 . I
+chrM 11483 A 1 . I
+chrM 11484 A 1 . I
+chrM 11485 A 1 . I
+chrM 11486 C 1 . I
+chrM 11487 C 1 . I
+chrM 11488 T 1 . I
+chrM 11489 T 1 . I
+chrM 11490 C 1 . I
+chrM 11491 A 1 . @
+chrM 11492 T 1 .$ I
+chrM 11616 G 1 ^:, I
+chrM 11617 A 1 , I
+chrM 11618 T 1 , 9
+chrM 11619 C 1 , I
+chrM 11620 T 1 , I
+chrM 11621 A 1 , I
+chrM 11622 G 1 , I
+chrM 11623 A 1 , I
+chrM 11624 A 1 , I
+chrM 11625 A 1 , I
+chrM 11626 C 1 , I
+chrM 11627 A 1 , I
+chrM 11628 G 1 , I
+chrM 11629 A 1 , I
+chrM 11630 A 1 , I
+chrM 11631 A 1 , I
+chrM 11632 C 1 , I
+chrM 11633 T 1 , I
+chrM 11634 T 1 , I
+chrM 11635 A 1 , I
+chrM 11636 A 1 , I
+chrM 11637 T 1 , I
+chrM 11638 A 1 , I
+chrM 11639 T 1 , I
+chrM 11640 T 1 , I
+chrM 11641 T 1 , I
+chrM 11642 C 1 , I
+chrM 11643 T 1 n "
+chrM 11644 T 1 n "
+chrM 11645 A 1 , I
+chrM 11646 T 1 , I
+chrM 11647 T 1 , I
+chrM 11648 T 1 , I
+chrM 11649 A 1 , I
+chrM 11650 C 1 , I
+chrM 11651 C 1 ,$ I
+chrM 11721 A 1 ^:. I
+chrM 11722 G 1 . I
+chrM 11723 G 1 . I
+chrM 11724 A 1 . I
+chrM 11725 T 1 . I
+chrM 11726 A 1 . I
+chrM 11727 G 1 . I
+chrM 11728 G 1 N "
+chrM 11729 A 1 N "
+chrM 11730 G 1 . I
+chrM 11731 C 1 . I
+chrM 11732 T 1 . I
+chrM 11733 A 1 . I
+chrM 11734 T 1 . I
+chrM 11735 C 1 . I
+chrM 11736 C 1 . I
+chrM 11737 G 1 . I
+chrM 11738 T 1 . I
+chrM 11739 T 1 . I
+chrM 11740 G 1 . I
+chrM 11741 G 1 . I
+chrM 11742 T 1 . I
+chrM 11743 C 1 . I
+chrM 11744 T 1 . I
+chrM 11745 T 1 . I
+chrM 11746 A 1 . I
+chrM 11747 G 1 . I
+chrM 11748 G 1 . I
+chrM 11749 A 1 . F
+chrM 11750 A 1 . I
+chrM 11751 C 1 . I
+chrM 11752 C 1 . I
+chrM 11753 A 1 . H
+chrM 11754 A 1 . :
+chrM 11755 A 1 . 6
+chrM 11756 A 1 .$ I
+chrM 12013 C 1 ^:, I
+chrM 12014 C 1 , I
+chrM 12015 T 1 , I
+chrM 12016 A 1 , I
+chrM 12017 A 1 , I
+chrM 12018 G 1 , I
+chrM 12019 C 1 , I
+chrM 12020 T 1 , I
+chrM 12021 T 1 , F
+chrM 12022 C 1 , I
+chrM 12023 A 1 , I
+chrM 12024 A 1 , I
+chrM 12025 A 1 , I
+chrM 12026 C 1 , I
+chrM 12027 T 1 , I
+chrM 12028 A 1 , I
+chrM 12029 G 1 , I
+chrM 12030 A 1 , I
+chrM 12031 T 1 , I
+chrM 12032 T 1 , I
+chrM 12033 A 1 , I
+chrM 12034 C 1 , I
+chrM 12035 T 1 , I
+chrM 12036 T 1 , I
+chrM 12037 C 1 , I
+chrM 12038 T 1 , I
+chrM 12039 C 1 , I
+chrM 12040 A 1 n "
+chrM 12041 A 1 n "
+chrM 12042 T 1 , I
+chrM 12043 A 1 , I
+chrM 12044 A 1 , I
+chrM 12045 T 1 , I
+chrM 12046 T 1 , I
+chrM 12047 T 1 , I
+chrM 12048 T 1 ,$ I
+chrM 12295 A 1 ^:. I
+chrM 12296 A 1 . I
+chrM 12297 T 1 . I
+chrM 12298 C 1 . I
+chrM 12299 C 1 . I
+chrM 12300 T 1 . I
+chrM 12301 T 1 . I
+chrM 12302 T 1 N "
+chrM 12303 A 1 N "
+chrM 12304 T 1 . I
+chrM 12305 A 1 . I
+chrM 12306 A 1 . I
+chrM 12307 C 1 . I
+chrM 12308 C 1 . I
+chrM 12309 G 1 . I
+chrM 12310 C 1 . I
+chrM 12311 A 1 . I
+chrM 12312 T 1 . I
+chrM 12313 C 1 . I
+chrM 12314 G 1 . I
+chrM 12315 G 1 . I
+chrM 12316 G 1 . I
+chrM 12317 G 1 . I
+chrM 12318 A 1 . I
+chrM 12319 T 1 . I
+chrM 12320 A 1 . I
+chrM 12321 T 1 . I
+chrM 12322 C 1 . I
+chrM 12323 G 1 . I
+chrM 12324 G 1 . I
+chrM 12325 C 1 . I
+chrM 12326 T 1 . I
+chrM 12327 T 1 . I
+chrM 12328 C 1 . :
+chrM 12329 A 1 . (
+chrM 12330 T 1 .$ D
+chrM 12387 T 1 ^:, F
+chrM 12388 C 1 , I
+chrM 12389 A 1 , I
+chrM 12390 T 1 , H
+chrM 12391 A 1 , I
+chrM 12392 C 1 , I
+chrM 12393 T 1 , ;
+chrM 12394 C 1 , I
+chrM 12395 G 1 , I
+chrM 12396 A 1 , I
+chrM 12397 C 1 , I
+chrM 12398 C 1 , I
+chrM 12399 C 1 , I
+chrM 12400 C 1 , I
+chrM 12401 A 1 , I
+chrM 12402 A 1 , I
+chrM 12403 C 1 , I
+chrM 12404 C 1 , I
+chrM 12405 T 1 , I
+chrM 12406 T 1 , I
+chrM 12407 A 1 , I
+chrM 12408 C 1 , I
+chrM 12409 C 1 , I
+chrM 12410 A 1 , I
+chrM 12411 A 1 , I
+chrM 12412 C 1 , I
+chrM 12413 C 1 , I
+chrM 12414 T 1 n "
+chrM 12415 C 1 n "
+chrM 12416 C 1 , I
+chrM 12417 C 1 , I
+chrM 12418 G 1 , I
+chrM 12419 C 1 , I
+chrM 12420 T 1 , I
+chrM 12421 C 1 , I
+chrM 12422 C 1 ,$ I
+chrM 12584 G 1 ^:. I
+chrM 12585 A 1 . I
+chrM 12586 A 1 . I
+chrM 12587 A 1 . I
+chrM 12588 A 1 . I
+chrM 12589 C 1 . I
+chrM 12590 A 1 . I
+chrM 12591 A 1 N "
+chrM 12592 C 1 N "
+chrM 12593 A 1 . I
+chrM 12594 A 1 . I
+chrM 12595 A 1 . I
+chrM 12596 A 1 . I
+chrM 12597 C 1 . I
+chrM 12598 A 1 . I
+chrM 12599 A 1 . I
+chrM 12600 T 1 . I
+chrM 12601 C 1 . I
+chrM 12602 C 1 . I
+chrM 12603 A 1 . I
+chrM 12604 G 1 . I
+chrM 12605 T 1 . I
+chrM 12606 C 1 . I
+chrM 12607 A 1 . I
+chrM 12608 C 1 . I
+chrM 12609 T 1 . I
+chrM 12610 T 1 . I
+chrM 12611 A 1 . I
+chrM 12612 C 1 . I
+chrM 12613 C 1 . I
+chrM 12614 C 1 . I
+chrM 12615 T 1 . I
+chrM 12616 A 1 . @
+chrM 12617 T 1 . I
+chrM 12618 G 1 . I
+chrM 12619 C 1 .$ I
+chrM 12988 G 1 ^:. I
+chrM 12989 T 1 . I
+chrM 12990 A 1 . I
+chrM 12991 C 1 . I
+chrM 12992 A 1 . I
+chrM 12993 C 1 . I
+chrM 12994 C 1 . I
+chrM 12995 A 1 N "
+chrM 12996 A 1 N "
+chrM 12997 C 1 . I
+chrM 12998 G 1 . I
+chrM 12999 C 1 . I
+chrM 13000 C 1 . I
+chrM 13001 T 1 . I
+chrM 13002 G 1 . I
+chrM 13003 A 1 . 9
+chrM 13004 G 1 . I
+chrM 13005 C 1 . I
+chrM 13006 C 1 . I
+chrM 13007 C 1 . I
+chrM 13008 T 1 . I
+chrM 13009 A 1 . I
+chrM 13010 C 1 . E
+chrM 13011 T 1 . I
+chrM 13012 A 1 . (
+chrM 13013 A 1 . I
+chrM 13014 T 1 . I
+chrM 13015 A 1 . 9
+chrM 13016 A 1 . .
+chrM 13017 C 1 . I
+chrM 13018 T 1 . 4
+chrM 13019 C 1 . I
+chrM 13020 T 1 . I
+chrM 13021 C 1 . I
+chrM 13022 A 1 . ,
+chrM 13023 T 1 .$ I
+chrM 13560 T 1 ^:, I
+chrM 13561 C 1 , I
+chrM 13562 A 1 , I
+chrM 13563 C 1 , I
+chrM 13564 C 1 , I
+chrM 13565 C 1 , I
+chrM 13566 T 1 , I
+chrM 13567 T 1 , I
+chrM 13568 A 1 , I
+chrM 13569 C 1 , I
+chrM 13570 C 1 , I
+chrM 13571 C 1 , I
+chrM 13572 T 1 , I
+chrM 13573 A 1 , I
+chrM 13574 A 1 , I
+chrM 13575 G 1 , I
+chrM 13576 C 1 , I
+chrM 13577 A 1 , I
+chrM 13578 T 1 , I
+chrM 13579 A 1 , I
+chrM 13580 C 1 , I
+chrM 13581 T 1 , I
+chrM 13582 A 1 , I
+chrM 13583 C 1 , I
+chrM 13584 T 1 , I
+chrM 13585 T 1 , I
+chrM 13586 T 1 , I
+chrM 13587 T 1 n "
+chrM 13588 T 1 n "
+chrM 13589 A 1 , I
+chrM 13590 A 1 , I
+chrM 13591 T 1 , I
+chrM 13592 C 1 , I
+chrM 13593 T 1 , I
+chrM 13594 C 1 , I
+chrM 13595 C 1 ,$ I
+chrM 13783 T 1 ^:. I
+chrM 13784 C 1 . I
+chrM 13785 A 1 . I
+chrM 13786 C 1 . I
+chrM 13787 T 1 . I
+chrM 13788 C 1 . I
+chrM 13789 T 1 . I
+chrM 13790 T 1 N "
+chrM 13791 C 1 N "
+chrM 13792 A 1 . I
+chrM 13793 G 1 . I
+chrM 13794 A 1 . I
+chrM 13795 A 1 . I
+chrM 13796 C 1 . I
+chrM 13797 A 1 . I
+chrM 13798 T 1 . I
+chrM 13799 A 1 . I
+chrM 13800 T 1 . I
+chrM 13801 A 1 . I
+chrM 13802 A 1 . I
+chrM 13803 A 1 . I
+chrM 13804 A 1 . I
+chrM 13805 C 1 . I
+chrM 13806 C 1 . I
+chrM 13807 A 1 . I
+chrM 13808 A 1 . I
+chrM 13809 C 1 . I
+chrM 13810 A 1 . ?
+chrM 13811 T 1 . I
+chrM 13812 A 1 . C
+chrM 13813 A 1 . C
+chrM 13814 C 1 . I
+chrM 13815 C 1 . I
+chrM 13816 T 1 . I
+chrM 13817 C 1 . I
+chrM 13818 C 1 .$ I
+chrM 13855 G 1 ^:, I
+chrM 13856 T 1 , I
+chrM 13857 A 1 , I
+chrM 13858 T 1 , I
+chrM 13859 T 1 , I
+chrM 13860 A 1 , I
+chrM 13861 G 1 , I
+chrM 13862 A 1 , I
+chrM 13863 C 1 , I
+chrM 13864 A 1 , I
+chrM 13865 C 1 , I
+chrM 13866 C 1 , I
+chrM 13867 C 1 , I
+chrM 13868 A 1 , I
+chrM 13869 T 1 , I
+chrM 13870 A 1 , I
+chrM 13871 C 1 , I
+chrM 13872 C 1 , I
+chrM 13873 T 1 , I
+chrM 13874 C 1 , I
+chrM 13875 A 1 , I
+chrM 13876 G 1 , I
+chrM 13877 G 1 , I
+chrM 13878 A 1 , I
+chrM 13879 T 1 , I
+chrM 13880 A 1 , I
+chrM 13881 C 1 , I
+chrM 13882 T 1 n "
+chrM 13883 G 1 n "
+chrM 13884 C 1 , I
+chrM 13885 T 1 , I
+chrM 13886 C 1 , I
+chrM 13887 A 1 , I
+chrM 13888 G 1 , I
+chrM 13889 T 1 , I
+chrM 13890 A 1 ,$ I
+chrM 14023 A 1 ^:, I
+chrM 14024 A 1 , I
+chrM 14025 A 1 , I
+chrM 14026 C 1 , /
+chrM 14027 C 1 , :
+chrM 14028 C 1 , &
+chrM 14029 C 1 , G
+chrM 14030 C 1 , I
+chrM 14031 A 1 , I
+chrM 14032 T 1 , 3
+chrM 14033 A 1 , I
+chrM 14034 A 1 , I
+chrM 14035 A 2 ,^:, II
+chrM 14036 T 2 ,, ;;
+chrM 14037 A 2 ,, II
+chrM 14038 G 2 ,, II
+chrM 14039 G 2 ,, II
+chrM 14040 T 2 ,, II
+chrM 14041 G 2 ,, II
+chrM 14042 A 2 ,, II
+chrM 14043 A 2 ,, II
+chrM 14044 G 2 ,, II
+chrM 14045 G 2 ,, II
+chrM 14046 T 2 ,, II
+chrM 14047 T 2 ,, II
+chrM 14048 T 2 ,, II
+chrM 14049 T 2 ,, II
+chrM 14050 G 2 n, "I
+chrM 14051 A 2 n, "I
+chrM 14052 A 2 ,, II
+chrM 14053 G 2 ,, II
+chrM 14054 A 2 ,, II
+chrM 14055 A 2 ,, II
+chrM 14056 A 2 ,, II
+chrM 14057 A 2 ,, II
+chrM 14058 C 2 ,$, II
+chrM 14059 C 1 , I
+chrM 14060 C 1 , I
+chrM 14061 C 1 , I
+chrM 14062 A 2 n^:, "I
+chrM 14063 C 2 n, "+
+chrM 14064 A 2 ,, II
+chrM 14065 A 2 ,, II
+chrM 14066 A 2 ,, II
+chrM 14067 A 2 ,, II
+chrM 14068 C 2 ,, I1
+chrM 14069 T 2 ,, II
+chrM 14070 A 2 ,$, II
+chrM 14071 A 1 , I
+chrM 14072 C 1 , I
+chrM 14073 A 1 , I
+chrM 14074 A 1 , I
+chrM 14075 C 1 , I
+chrM 14076 A 1 , I
+chrM 14077 A 1 , I
+chrM 14078 A 1 , I
+chrM 14079 A 1 , I
+chrM 14080 A 1 , I
+chrM 14081 T 1 , I
+chrM 14082 A 1 , I
+chrM 14083 A 1 , I
+chrM 14084 C 1 , I
+chrM 14085 A 1 , I
+chrM 14086 C 1 , I
+chrM 14087 T 1 , I
+chrM 14088 C 1 , I
+chrM 14089 A 1 n "
+chrM 14090 A 1 n "
+chrM 14091 A 1 , I
+chrM 14092 A 1 , I
+chrM 14093 T 1 , I
+chrM 14094 A 1 , I
+chrM 14095 A 1 , I
+chrM 14096 A 1 , I
+chrM 14097 C 1 ,$ I
+chrM 14239 T 1 ^:, I
+chrM 14240 T 1 , I
+chrM 14241 T 1 , I
+chrM 14242 A 1 , I
+chrM 14243 T 1 , I
+chrM 14244 T 1 , B
+chrM 14245 G 1 , I
+chrM 14246 A 1 , I
+chrM 14247 C 1 , I
+chrM 14248 C 1 , I
+chrM 14249 T 1 , I
+chrM 14250 A 1 , I
+chrM 14251 C 1 , I
+chrM 14252 C 1 , I
+chrM 14253 A 1 , I
+chrM 14254 G 1 , I
+chrM 14255 C 1 , I
+chrM 14256 C 1 , I
+chrM 14257 C 1 , I
+chrM 14258 C 1 , I
+chrM 14259 C 1 , I
+chrM 14260 T 1 , I
+chrM 14261 C 1 , I
+chrM 14262 A 1 , I
+chrM 14263 A 1 , I
+chrM 14264 A 1 , I
+chrM 14265 C 1 , I
+chrM 14266 A 1 n "
+chrM 14267 T 1 n "
+chrM 14268 T 1 , I
+chrM 14269 T 1 , I
+chrM 14270 C 1 , I
+chrM 14271 A 1 , I
+chrM 14272 T 1 , I
+chrM 14273 C 1 , I
+chrM 14274 A 1 ,$ I
+chrM 14463 C 1 ^:, I
+chrM 14464 T 1 , G
+chrM 14465 G 1 , I
+chrM 14466 C 1 , I
+chrM 14467 C 1 , I
+chrM 14468 T 1 , ;
+chrM 14469 C 1 , I
+chrM 14470 T 1 , I
+chrM 14471 T 1 , 8
+chrM 14472 C 1 , I
+chrM 14473 A 1 , I
+chrM 14474 T 1 , I
+chrM 14475 T 1 , I
+chrM 14476 C 1 , I
+chrM 14477 A 1 , I
+chrM 14478 C 1 , I
+chrM 14479 G 1 , I
+chrM 14480 T 1 , I
+chrM 14481 A 1 , I
+chrM 14482 G 1 , I
+chrM 14483 G 1 , I
+chrM 14484 A 1 , I
+chrM 14485 C 1 , I
+chrM 14486 G 1 , I
+chrM 14487 C 1 , I
+chrM 14488 G 1 , I
+chrM 14489 G 1 , I
+chrM 14490 C 1 n "
+chrM 14491 C 1 n "
+chrM 14492 T 1 , I
+chrM 14493 C 1 , I
+chrM 14494 T 1 , I
+chrM 14495 A 1 , I
+chrM 14496 C 1 , I
1
0
details: http://www.bx.psu.edu/hg/galaxy/rev/c0192e97a79a
changeset: 3425:c0192e97a79a
user: gua110
date: Mon Feb 22 16:22:12 2010 -0500
description:
Bug fixes to LCA tool
diffstat:
test-data/lca_input2.taxonomy | 4 +
test-data/lca_input3.taxonomy | 100 +++++++++++++++++++++++++++++++++++++++++
test-data/lca_output2.taxonomy | 1 +
test-data/lca_output3.taxonomy | 40 ++++++++++++++++
tools/taxonomy/lca.py | 49 +++++++++++++------
tools/taxonomy/lca.xml | 24 +++++++--
6 files changed, 195 insertions(+), 23 deletions(-)
diffs (308 lines):
diff -r 9d9f0dfeeebf -r c0192e97a79a test-data/lca_input2.taxonomy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/lca_input2.taxonomy Mon Feb 22 16:22:12 2010 -0500
@@ -0,0 +1,4 @@
+read_1 1 root superkingdom1 kingdom1 subkingdom1 superphylum1 phylum1 subphylum1 superclass1 class1 subclass1 superorder1 order1 suborder1 superfamily1 family1 subfamily1 tribe1 subtribe1 genus1 subgenus1 species1 subspecies1 1 2 3 4
+read_1 2 root superkingdom1 kingdom1 subkingdom1 superphylum1 phylum1 subphylum1 superclass1 class1 subclass1 superorder1 order1 suborder1 superfamily1 family1 subfamily1 tribe1 subtribe1 genus2 subgenus2 species2 subspecies2 1 2 3 4
+read_2 3 root superkingdom1 kingdom1 subkingdom1 superphylum1 phylum3 subphylum3 superclass3 class3 subclass3 superorder3 order3 suborder3 superfamily3 family3 subfamily3 tribe3 subtribe3 genus3 subgenus3 species3 subspecies3 1 X Y Z
+read_2 4 root superkingdom1 kingdom1 subkingdom1 superphylum1 phylum4 subphylum4 superclass4 class4 subclass4 superorder4 order4 suborder4 superfamily4 family4 subfamily4 tribe4 subtribe4 genus4 subgenus4 species4 subspecies4 1 X Y Z
diff -r 9d9f0dfeeebf -r c0192e97a79a test-data/lca_input3.taxonomy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/lca_input3.taxonomy Mon Feb 22 16:22:12 2010 -0500
@@ -0,0 +1,100 @@
+IA_1-79371 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604065
+IA_1-84488 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604065
+IA_1-270826 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604070
+IA_1-285361 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604070
+IA_1-93958 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604070
+IA_1-99821 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604070
+IA_1-144417 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604077
+IA_1-278966 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604077
+IA_1-314709 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604077
+IA_1-324951 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604077
+IA_1-27817 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604153
+IA_1-95255 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604181
+IA_1-104173 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-135979 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-139090 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-139090 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-139090 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-144996 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-161439 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-216231 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-237681 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-250166 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-254274 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-254274 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-27817 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-29000 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-291427 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-291427 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-293054 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-293054 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-296315 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-296315 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus
+IA_1-310974 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-310974 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-311282 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-311282 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-322295 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n
+IA_1-42600 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-45102 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-45102 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-48105 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-48105 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-57254 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-61975 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-61975 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-66943 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-68288 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-82334 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-95526 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
diff -r 9d9f0dfeeebf -r c0192e97a79a test-data/lca_output2.taxonomy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/lca_output2.taxonomy Mon Feb 22 16:22:12 2010 -0500
@@ -0,0 +1,1 @@
+read_1 1 root superkingdom1 kingdom1 subkingdom1 superphylum1 phylum1 subphylum1 superclass1 class1 subclass1 superorder1 order1 suborder1 superfamily1 family1 subfamily1 tribe1 subtribe1 n n n n 1 2 3 4
diff -r 9d9f0dfeeebf -r c0192e97a79a test-data/lca_output3.taxonomy
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/test-data/lca_output3.taxonomy Mon Feb 22 16:22:12 2010 -0500
@@ -0,0 +1,40 @@
+IA_1-104173 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-135979 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-139090 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-144417 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604077
+IA_1-144996 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-160446 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-161439 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-190855 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-205154 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-216231 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-236286 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-237681 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-250166 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-254274 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-270826 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604070
+IA_1-27817 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604153
+IA_1-278966 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604077
+IA_1-285361 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604070
+IA_1-29000 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-291427 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-293054 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-296315 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-310974 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-311282 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-314709 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604077
+IA_1-324951 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604077
+IA_1-42600 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-45102 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-48105 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-57254 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-61975 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-66943 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-68288 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-79371 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604065
+IA_1-82334 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-84488 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604065
+IA_1-93958 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604070
+IA_1-95255 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604181
+IA_1-95526 10116 root Eukaryota Metazoa n n Chordata Craniata Gnathostomata Mammalia n Euarchontoglires Rodentia Sciurognathi n Muridae Murinae n n Rattus n Rattus norvegicus n 281604186
+IA_1-99821 591020 root Bacteria n n n Proteobacteria n n Gammaproteobacteria n n Enterobacteriales n n Enterobacteriaceae n n n Shigella n Shigella flexneri n 281604070
diff -r 9d9f0dfeeebf -r c0192e97a79a tools/taxonomy/lca.py
--- a/tools/taxonomy/lca.py Mon Feb 22 13:56:51 2010 -0500
+++ b/tools/taxonomy/lca.py Mon Feb 22 16:22:12 2010 -0500
@@ -42,6 +42,16 @@
except:
stop_err("Syntax error: Use correct syntax: program infile outfile")
+ fin = open(sys.argv[1],'r')
+ for j, line in enumerate( fin ):
+ elems = line.strip().split('\t')
+ if len(elems) < 24:
+ stop_err("The format of the input dataset is incorrect. Taxonomy datatype should contain at least 24 columns.")
+ if j > 30:
+ break
+ cols = range(1,len(elems))
+ fin.close()
+
group_col = 0
tmpfile = tempfile.NamedTemporaryFile()
@@ -68,11 +78,11 @@
remaining_vals = []
skipped_lines = 0
fout = open(outfile, "w")
- cols = range(1,25)
block_valid = False
+
for ii, line in enumerate( file( tmpfile.name )):
- if line and not line.startswith( '#' ):
+ if line and not line.startswith( '#' ) and len(line.split('\t')) >= 24: #Taxonomy datatype should have at least 24 columns
line = line.rstrip( '\r\n' )
try:
fields = line.split("\t")
@@ -95,14 +105,11 @@
corresponding aggregate values into the output file. This works
due to the sort on group_col we've applied to the data above.
"""
- out_list = ['']*25
+ out_list = ['']*24
out_list[0] = str(prev_item)
out_list[1] = str(prev_vals[0][0])
out_list[2] = str(prev_vals[1][0])
- try:
- out_list[24] = str(prev_vals[23][0])
- except:
- pass
+
for k, col in enumerate(cols):
if col >= 3 and col < 24:
if len(set(prev_vals[k])) == 1:
@@ -113,11 +120,17 @@
out_list[k+1] = 'n'
k += 1
+ j = 0
+ while True:
+ try:
+ out_list.append(str(prev_vals[23+j][0]))
+ j += 1
+ except:
+ break
+
if rank_bound == 0:
print >>fout, '\t'.join(out_list).strip()
- #print 'n'*( 24 - rank_bound )
else:
- #print '\t'.join(out_list[rank_bound:24])
if ''.join(out_list[rank_bound:24]) != 'n'*( 24 - rank_bound ):
print >>fout, '\t'.join(out_list).strip()
@@ -144,15 +157,11 @@
skipped_lines += 1
# Handle the last grouped value
- out_list = ['']*25
+ out_list = ['']*24
out_list[0] = str(prev_item)
out_list[1] = str(prev_vals[0][0])
out_list[2] = str(prev_vals[1][0])
- try:
- out_list[24] = str(prev_vals[23][0])
- except:
- pass
-
+
for k, col in enumerate(cols):
if col >= 3 and col < 24:
if len(set(prev_vals[k])) == 1:
@@ -163,11 +172,17 @@
out_list[k+1] = 'n'
k += 1
+ j = 0
+ while True:
+ try:
+ out_list.append(str(prev_vals[23+j][0]))
+ j += 1
+ except:
+ break
+
if rank_bound == 0:
print >>fout, '\t'.join(out_list).strip()
else:
- #print ''.join(out_list[rank_bound:24])
- #print 'n'*( 24 - rank_bound )
if ''.join(out_list[rank_bound:24]) != 'n'*( 24 - rank_bound ):
print >>fout, '\t'.join(out_list).strip()
diff -r 9d9f0dfeeebf -r c0192e97a79a tools/taxonomy/lca.xml
--- a/tools/taxonomy/lca.xml Mon Feb 22 13:56:51 2010 -0500
+++ b/tools/taxonomy/lca.xml Mon Feb 22 16:22:12 2010 -0500
@@ -1,4 +1,4 @@
-<tool id="lca1" name="Find lowest diagnostic rank" version="1.0.0">
+<tool id="lca1" name="Find lowest diagnostic rank" version="1.0.1">
<description></description>
<command interpreter="python">
lca.py $input1 $out_file1 $rank_bound
@@ -34,11 +34,23 @@
<data format="taxonomy" name="out_file1" metadata_source="input1" />
</outputs>
<tests>
- <test>
- <param name="input1" value="lca_input.taxonomy" ftype="taxonomy"/>
- <param name="rank_bound" value="0" />
- <output name="out_file1" file="lca_output.taxonomy" ftype="taxonomy"/>
- </test>
+ <test>
+ <param name="input1" value="lca_input.taxonomy" ftype="taxonomy"/>
+ <param name="rank_bound" value="0" />
+ <output name="out_file1" file="lca_output.taxonomy" ftype="taxonomy"/>
+ </test>
+ <test>
+ <param name="input1" value="lca_input2.taxonomy" ftype="taxonomy"/>
+ <param name="rank_bound" value="7" />
+ <output name="out_file1" file="lca_output2.taxonomy" ftype="taxonomy"/>
+ </test>
+
+ <!--Test case with invalid lines -->
+ <test>
+ <param name="input1" value="lca_input3.taxonomy" ftype="taxonomy"/>
+ <param name="rank_bound" value="10" />
+ <output name="out_file1" file="lca_output3.taxonomy" ftype="taxonomy"/>
+ </test>
</tests>
<help>
1
0
24 Feb '10
details: http://www.bx.psu.edu/hg/galaxy/rev/9d9f0dfeeebf
changeset: 3424:9d9f0dfeeebf
user: jeremy goecks <jeremy.goecks(a)emory.edu>
date: Mon Feb 22 13:56:51 2010 -0500
description:
Annotations for published items: (1) added annotations to pages; (2) added annotation column to all published item grids; (3) refactored annotation code out of base controller and into its own mixin.
diffstat:
lib/galaxy/model/__init__.py | 3 +
lib/galaxy/model/mapping.py | 13 ++++-
lib/galaxy/model/migrate/versions/0040_page_annotations.py | 42 ++++++++++++++
lib/galaxy/web/base/controller.py | 8 ++-
lib/galaxy/web/controllers/dataset.py | 2 +-
lib/galaxy/web/controllers/history.py | 3 +-
lib/galaxy/web/controllers/page.py | 24 +++++--
lib/galaxy/web/controllers/root.py | 2 +-
lib/galaxy/web/controllers/workflow.py | 3 +-
lib/galaxy/web/framework/helpers/grids.py | 39 ++++++++++--
10 files changed, 118 insertions(+), 21 deletions(-)
diffs (351 lines):
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/model/__init__.py
--- a/lib/galaxy/model/__init__.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/model/__init__.py Mon Feb 22 13:56:51 2010 -0500
@@ -1567,6 +1567,9 @@
class WorkflowStepAnnotationAssociation( object ):
pass
+class PageAnnotationAssociation( object ):
+ pass
+
class UserPreference ( object ):
def __init__( self, name=None, value=None ):
self.name = name
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/model/mapping.py
--- a/lib/galaxy/model/mapping.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/model/mapping.py Mon Feb 22 13:56:51 2010 -0500
@@ -814,6 +814,12 @@
Column( "workflow_step_id", Integer, ForeignKey( "workflow_step.id" ), index=True ),
Column( "user_id", Integer, ForeignKey( "galaxy_user.id" ), index=True ),
Column( "annotation", TEXT, index=True) )
+
+PageAnnotationAssociation.table = Table( "page_annotation_association", metadata,
+ Column( "id", Integer, primary_key=True ),
+ Column( "page_id", Integer, ForeignKey( "page.id" ), index=True ),
+ Column( "user_id", Integer, ForeignKey( "galaxy_user.id" ), index=True ),
+ Column( "annotation", TEXT, index=True) )
# User tables.
@@ -1304,7 +1310,8 @@
latest_revision=relation( PageRevision, post_update=True,
primaryjoin=( Page.table.c.latest_revision_id == PageRevision.table.c.id ),
lazy=False ),
- tags=relation(PageTagAssociation, order_by=PageTagAssociation.table.c.id, backref="pages")
+ tags=relation(PageTagAssociation, order_by=PageTagAssociation.table.c.id, backref="pages"),
+ annotations=relation( PageAnnotationAssociation, order_by=PageAnnotationAssociation.table.c.id, backref="pages" )
) )
# Set up proxy so that
@@ -1377,6 +1384,10 @@
properties=dict( workflow_step=relation( WorkflowStep ), user=relation( User ) )
)
+assign_mapper( context, PageAnnotationAssociation, PageAnnotationAssociation.table,
+ properties=dict( page=relation( Page ), user=relation( User ) )
+ )
+
assign_mapper( context, UserPreference, UserPreference.table,
properties = {}
)
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/model/migrate/versions/0040_page_annotations.py
--- /dev/null Thu Jan 01 00:00:00 1970 +0000
+++ b/lib/galaxy/model/migrate/versions/0040_page_annotations.py Mon Feb 22 13:56:51 2010 -0500
@@ -0,0 +1,42 @@
+"""
+Migration script to (a) create tables for annotating pages.
+"""
+
+from sqlalchemy import *
+from sqlalchemy.orm import *
+from migrate import *
+from migrate.changeset import *
+
+import logging
+log = logging.getLogger( __name__ )
+
+metadata = MetaData( migrate_engine )
+db_session = scoped_session( sessionmaker( bind=migrate_engine, autoflush=False, autocommit=True ) )
+
+PageAnnotationAssociation_table = Table( "page_annotation_association", metadata,
+ Column( "id", Integer, primary_key=True ),
+ Column( "page_id", Integer, ForeignKey( "page.id" ), index=True ),
+ Column( "user_id", Integer, ForeignKey( "galaxy_user.id" ), index=True ),
+ Column( "annotation", TEXT, index=True) )
+
+def upgrade():
+ print __doc__
+ metadata.reflect()
+
+ # Create history_annotation_association table.
+ try:
+ PageAnnotationAssociation_table.create()
+ except Exception, e:
+ print str(e)
+ log.debug( "Creating page_annotation_association table failed: %s" % str( e ) )
+
+def downgrade():
+ metadata.reflect()
+
+ # Drop page_annotation_association table.
+ try:
+ PageAnnotationAssociation_table.drop()
+ except Exception, e:
+ print str(e)
+ log.debug( "Dropping page_annotation_association table failed: %s" % str( e ) )
+
\ No newline at end of file
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/web/base/controller.py
--- a/lib/galaxy/web/base/controller.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/web/base/controller.py Mon Feb 22 13:56:51 2010 -0500
@@ -41,6 +41,10 @@
item_class = None
return item_class
+Root = BaseController
+
+class UsesAnnotations:
+ """ Mixin for getting and setting item annotations. """
def get_item_annotation_str( self, db_session, user, item ):
""" Returns a user's annotation string for an item. """
annotation_obj = self.get_item_annotation_obj( db_session, user, item )
@@ -67,6 +71,8 @@
annotation_assoc = annotation_assoc.filter_by( stored_workflow=item )
elif item.__class__ == model.WorkflowStep:
annotation_assoc = annotation_assoc.filter_by( workflow_step=item )
+ elif item.__class__ == model.Page:
+ annotation_assoc = annotation_assoc.filter_by( page=item )
return annotation_assoc.first()
def add_item_annotation( self, trans, item, annotation ):
@@ -89,8 +95,6 @@
# Set annotation.
annotation_assoc.annotation = annotation
return True
-
-Root = BaseController
class SharableItemSecurity:
""" Mixin for handling security for sharable items. """
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/web/controllers/dataset.py
--- a/lib/galaxy/web/controllers/dataset.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/web/controllers/dataset.py Mon Feb 22 13:56:51 2010 -0500
@@ -110,7 +110,7 @@
# a user relation.
return query.select_from( model.HistoryDatasetAssociation.table.join( model.History.table ) ).filter( model.History.user == trans.user )
-class DatasetInterface( BaseController, UsesHistoryDatasetAssociation ):
+class DatasetInterface( BaseController, UsesAnnotations, UsesHistoryDatasetAssociation ):
stored_list_grid = HistoryDatasetAssociationListGrid()
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/web/controllers/history.py
--- a/lib/galaxy/web/controllers/history.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/web/controllers/history.py Mon Feb 22 13:56:51 2010 -0500
@@ -128,6 +128,7 @@
use_async = True
columns = [
NameURLColumn( "Name", key="name", model_class=model.History, filterable="advanced" ),
+ grids.OwnerAnnotationColumn( "Annotation", key="annotation", model_class=model.History, model_annotation_association_class=model.HistoryAnnotationAssociation, filterable="advanced" ),
grids.OwnerColumn( "Owner", key="username", model_class=model.User, filterable="advanced", sortable=False ),
grids.CommunityTagsColumn( "Community Tags", "tags", model.History, model.HistoryTagAssociation, filterable="advanced", grid_name="PublicHistoryListGrid" ),
grids.GridColumn( "Last Updated", key="update_time", format=time_ago )
@@ -146,7 +147,7 @@
# A public history is published, has a slug, and is not deleted.
return query.filter( self.model_class.published == True ).filter( self.model_class.slug != None ).filter( self.model_class.deleted == False )
-class HistoryController( BaseController, Sharable, UsesHistory ):
+class HistoryController( BaseController, Sharable, UsesAnnotations, UsesHistory ):
@web.expose
def index( self, trans ):
return ""
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/web/controllers/page.py
--- a/lib/galaxy/web/controllers/page.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/web/controllers/page.py Mon Feb 22 13:56:51 2010 -0500
@@ -45,7 +45,7 @@
]
operations = [
grids.DisplayByUsernameAndSlugGridOperation( "View", allow_multiple=False ),
- grids.GridOperation( "Edit name/id", allow_multiple=False, url_args=dict( action='edit') ),
+ grids.GridOperation( "Edit attributes", allow_multiple=False, url_args=dict( action='edit') ),
grids.GridOperation( "Edit content", allow_multiple=False, url_args=dict( action='edit_content') ),
grids.GridOperation( "Share or Publish", allow_multiple=False, condition=( lambda item: not item.deleted ), async_compatible=False ),
grids.GridOperation( "Delete" ),
@@ -63,6 +63,7 @@
default_filter = dict( title="All", username="All" )
columns = [
grids.PublicURLColumn( "Title", key="title", model_class=model.Page, filterable="advanced"),
+ grids.OwnerAnnotationColumn( "Annotation", key="annotation", model_class=model.Page, model_annotation_association_class=model.PageAnnotationAssociation, filterable="advanced" ),
grids.OwnerColumn( "Owner", key="username", model_class=model.User, filterable="advanced", sortable=False ),
grids.CommunityTagsColumn( "Community Tags", "tags", model.Page, model.PageTagAssociation, filterable="advanced", grid_name="PageAllPublishedGrid" ),
grids.GridColumn( "Last Updated", key="update_time", format=time_ago )
@@ -70,7 +71,7 @@
columns.append(
grids.MulticolFilterColumn(
"Search",
- cols_to_filter=[ columns[0], columns[1], columns[2] ],
+ cols_to_filter=[ columns[0], columns[1], columns[2], columns[3] ],
key="free-text-search", visible=False, filterable="standard" )
)
def build_initial_query( self, session ):
@@ -285,7 +286,7 @@
# Default behavior:
_BaseHTMLProcessor.unknown_endtag( self, tag )
-class PageController( BaseController, Sharable, UsesHistory, UsesStoredWorkflow, UsesHistoryDatasetAssociation ):
+class PageController( BaseController, Sharable, UsesAnnotations, UsesHistory, UsesStoredWorkflow, UsesHistoryDatasetAssociation ):
_page_list = PageListGrid()
_all_published_list = PageAllPublishedGrid()
@@ -385,7 +386,7 @@
@web.expose
@web.require_login( "create pages" )
- def edit( self, trans, id, page_title="", page_slug="" ):
+ def edit( self, trans, id, page_title="", page_slug="", page_annotation="" ):
"""
Create a new page
"""
@@ -395,7 +396,7 @@
page = session.query( model.Page ).get( id )
user = trans.user
assert page.user == user
- page_title_err = page_slug_err = ""
+ page_title_err = page_slug_err = page_annotation_err = ""
if trans.request.method == "POST":
if not page_title:
page_title_err = "Page name is required"
@@ -403,17 +404,24 @@
page_slug_err = "Page id is required"
elif not VALID_SLUG_RE.match( page_slug ):
page_slug_err = "Page identifier must consist of only lowercase letters, numbers, and the '-' character"
- elif page_slug == page.slug or trans.sa_session.query( model.Page ).filter_by( user=user, slug=page_slug, deleted=False ).first():
+ elif page_slug != page.slug and trans.sa_session.query( model.Page ).filter_by( user=user, slug=page_slug, deleted=False ).first():
page_slug_err = "Page id must be unique"
+ elif not page_annotation:
+ page_annotation_err = "Page annotation is required"
else:
page.title = page_title
page.slug = page_slug
+ page_annotation = sanitize_html( page_annotation, 'utf-8', 'text/html' )
+ self.add_item_annotation( trans, page, page_annotation )
session.flush()
# Redirect to page list.
return trans.response.send_redirect( web.url_for( action='list' ) )
else:
page_title = page.title
page_slug = page.slug
+ page_annotation = self.get_item_annotation_str( trans.sa_session, trans.get_user(), page )
+ if not page_annotation:
+ page_annotation = ""
return trans.show_form(
web.FormBuilder( web.url_for( id=encoded_id ), "Edit page attributes", submit_text="Submit" )
.add_text( "page_title", "Page title", value=page_title, error=page_title_err )
@@ -422,7 +430,9 @@
public links to this page. A default is generated
from the page title, but can be edited. This field
must contain only lowercase letters, numbers, and
- the '-' character.""" ),
+ the '-' character.""" )
+ .add_text( "page_annotation", "Page annotation", value=page_annotation, error=page_annotation_err,
+ help="A description of or notes about the page. Annotation is shown alongside published pages."),
template="page/create.mako" )
@web.expose
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/web/controllers/root.py
--- a/lib/galaxy/web/controllers/root.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/web/controllers/root.py Mon Feb 22 13:56:51 2010 -0500
@@ -10,7 +10,7 @@
log = logging.getLogger( __name__ )
-class RootController( BaseController, UsesHistory ):
+class RootController( BaseController, UsesHistory, UsesAnnotations ):
@web.expose
def default(self, trans, target1=None, target2=None, **kwd):
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/web/controllers/workflow.py
--- a/lib/galaxy/web/controllers/workflow.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/web/controllers/workflow.py Mon Feb 22 13:56:51 2010 -0500
@@ -60,6 +60,7 @@
use_async = True
columns = [
grids.PublicURLColumn( "Name", key="name", model_class=model.StoredWorkflow, filterable="advanced" ),
+ grids.OwnerAnnotationColumn( "Annotation", key="annotation", model_class=model.StoredWorkflow, model_annotation_association_class=model.StoredWorkflowAnnotationAssociation, filterable="advanced" ),
grids.OwnerColumn( "Owner", key="username", model_class=model.User, filterable="advanced", sortable=False ),
grids.CommunityTagsColumn( "Community Tags", "tags", model.StoredWorkflow, model.StoredWorkflowTagAssociation, filterable="advanced", grid_name="PublicWorkflowListGrid" ),
grids.GridColumn( "Last Updated", key="update_time", format=time_ago )
@@ -78,7 +79,7 @@
# A public workflow is published, has a slug, and is not deleted.
return query.filter( self.model_class.published==True ).filter( self.model_class.slug != None ).filter( self.model_class.deleted == False )
-class WorkflowController( BaseController, Sharable, UsesStoredWorkflow ):
+class WorkflowController( BaseController, Sharable, UsesStoredWorkflow, UsesAnnotations ):
stored_list_grid = StoredWorkflowListGrid()
published_list_grid = StoredWorkflowAllPublishedGrid()
diff -r 8d77e3acf653 -r 9d9f0dfeeebf lib/galaxy/web/framework/helpers/grids.py
--- a/lib/galaxy/web/framework/helpers/grids.py Mon Feb 22 09:21:42 2010 -0500
+++ b/lib/galaxy/web/framework/helpers/grids.py Mon Feb 22 13:56:51 2010 -0500
@@ -1,6 +1,7 @@
from galaxy.model import *
from galaxy.model.orm import *
+from galaxy.web.base import controller
from galaxy.web.framework.helpers import iff
from galaxy.tags.tag_handler import TagHandler
from galaxy.web import url_for
@@ -341,22 +342,46 @@
elif column_filter:
query = query.filter( self.get_filter( user, column_filter ) )
return query
+
def get_filter( self, user, column_filter ):
- """ Returns a SQLAlchemy criterion derived from column_filter. """
- model_class_key_field = getattr( self.model_class, self.key )
-
+ """ Returns a SQLAlchemy criterion derived from column_filter. """
if isinstance( column_filter, basestring ):
- return func.lower( model_class_key_field ).like( "%" + column_filter.lower() + "%" )
+ return self.get_single_filter( user, column_filter )
elif isinstance( column_filter, list ):
clause_list = []
for filter in column_filter:
- clause_list.append( func.lower( model_class_key_field ).like( "%" + filter.lower() + "%" ) )
+ clause_list.append( self.get_single_filter( user, filter ) )
return and_( *clause_list )
-
+
+ def get_single_filter( self, user, a_filter ):
+ """ Returns a SQLAlchemy criterion derived for a single filter. Single filter is the most basic filter--usually a string--and cannot be a list. """
+ model_class_key_field = getattr( self.model_class, self.key )
+ return func.lower( model_class_key_field ).like( "%" + a_filter.lower() + "%" )
+
+class OwnerAnnotationColumn( TextColumn, controller.UsesAnnotations ):
+ """ Column that displays and filters item owner's annotations. """
+ def __init__( self, col_name, key, model_class, model_annotation_association_class, filterable ):
+ GridColumn.__init__( self, col_name, key=key, model_class=model_class, filterable=filterable )
+ self.sortable = False
+ self.model_annotation_association_class = model_annotation_association_class
+
+ def get_value( self, trans, grid, item ):
+ """ Returns item annotation. """
+ annotation = self.get_item_annotation_str( trans.sa_session, item.user, item )
+ return iff( annotation, annotation, "" )
+
+ def get_single_filter( self, user, a_filter ):
+ """ Filter by annotation and annotation owner. """
+ return self.model_class.annotations.any(
+ and_( func.lower( self.model_annotation_association_class.annotation ).like( "%" + a_filter.lower() + "%" ),
+ # TODO: not sure why, to filter by owner's annotations, we have to do this rather than
+ # 'self.model_class.user==self.model_annotation_association_class.user'
+ self.model_annotation_association_class.table.c.user_id==self.model_class.table.c.user_id ) )
+
class CommunityTagsColumn( TextColumn ):
""" Column that supports community tags. """
def __init__( self, col_name, key, model_class, model_tag_association_class, filterable, grid_name=None ):
- GridColumn.__init__(self, col_name, key=key, model_class=model_class, filterable=filterable)
+ GridColumn.__init__( self, col_name, key=key, model_class=model_class, filterable=filterable )
self.model_tag_association_class = model_tag_association_class
# Tags cannot be sorted.
self.sortable = False
1
0
24 Feb '10
details: http://www.bx.psu.edu/hg/galaxy/rev/8d77e3acf653
changeset: 3423:8d77e3acf653
user: Greg Von Kuster <greg(a)bx.psu.edu>
date: Mon Feb 22 09:21:42 2010 -0500
description:
Fix for displaying datasets in the bx browser.
diffstat:
lib/galaxy/datatypes/interval.py | 2 +-
lib/galaxy/datatypes/tabular.py | 2 --
2 files changed, 1 insertions(+), 3 deletions(-)
diffs (24 lines):
diff -r 94741c94de0a -r 8d77e3acf653 lib/galaxy/datatypes/interval.py
--- a/lib/galaxy/datatypes/interval.py Mon Feb 22 08:12:03 2010 -0500
+++ b/lib/galaxy/datatypes/interval.py Mon Feb 22 09:21:42 2010 -0500
@@ -54,7 +54,7 @@
"""Initialize interval datatype, by adding UCSC display apps"""
Tabular.__init__(self, **kwd)
self.add_display_app ( 'ucsc', 'display at UCSC', 'as_ucsc_display_file', 'ucsc_links' )
- self.add_display_app ( 'main', 'BX', 'as_bx_display_file', 'bx_links' )
+ self.add_display_app ( 'main', 'BX', 'as_ucsc_display_file', 'bx_links' )
def init_meta( self, dataset, copy_from=None ):
Tabular.init_meta( self, dataset, copy_from=copy_from )
diff -r 94741c94de0a -r 8d77e3acf653 lib/galaxy/datatypes/tabular.py
--- a/lib/galaxy/datatypes/tabular.py Mon Feb 22 08:12:03 2010 -0500
+++ b/lib/galaxy/datatypes/tabular.py Mon Feb 22 09:21:42 2010 -0500
@@ -214,8 +214,6 @@
return open( dataset.file_name )
def as_ucsc_display_file( self, dataset, **kwd ):
return open( dataset.file_name )
- def as_bx_display_file( self, dataset, **kwd ):
- return open( dataset.file_name )
class Taxonomy( Tabular ):
def __init__(self, **kwd):
1
0
details: http://www.bx.psu.edu/hg/galaxy/rev/94741c94de0a
changeset: 3422:94741c94de0a
user: jeremy goecks <jeremy.goecks(a)emory.edu>
date: Mon Feb 22 08:12:03 2010 -0500
description:
Make anchor ID/name editable in pages.
diffstat:
templates/page/editor.mako | 3 ++-
1 files changed, 2 insertions(+), 1 deletions(-)
diffs (13 lines):
diff -r 831bbcccc4b2 -r 94741c94de0a templates/page/editor.mako
--- a/templates/page/editor.mako Mon Feb 22 07:43:12 2010 -0500
+++ b/templates/page/editor.mako Mon Feb 22 08:12:03 2010 -0500
@@ -138,7 +138,8 @@
// Set input elt class, value.
var attribute_input = $(".wym_href");
attribute_input.addClass("wym_id").removeClass("wym_href");
- attribute_input.val( attribute_input.attr('id') );
+ if (selected)
+ attribute_input.val( $(selected).attr('id') );
// Remove link.
$(this).remove();
1
0
details: http://www.bx.psu.edu/hg/galaxy/rev/831bbcccc4b2
changeset: 3421:831bbcccc4b2
user: jeremy goecks <jeremy.goecks(a)emory.edu>
date: Mon Feb 22 07:43:12 2010 -0500
description:
Pack script.
diffstat:
static/scripts/packed/galaxy.panels.js | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
diffs (8 lines):
diff -r 47aa31eb9cb6 -r 831bbcccc4b2 static/scripts/packed/galaxy.panels.js
--- a/static/scripts/packed/galaxy.panels.js Mon Feb 22 07:42:07 2010 -0500
+++ b/static/scripts/packed/galaxy.panels.js Mon Feb 22 07:43:12 2010 -0500
@@ -1,1 +1,1 @@
-function ensure_dd_helper(){if($("#DD-helper").length==0){$("<div id='DD-helper'/>").css({background:"white",opacity:0,zIndex:9000,position:"absolute",top:0,left:0,width:"100%",height:"100%"}).appendTo("body").hide()}}function make_left_panel(h,c,e){var g=false;var f=null;var d=function(i){var j=i;if(i<0){i=0}$(h).css("width",i);$(e).css("left",j);$(c).css("left",i+7);if(document.recalc){document.recalc()}};var a=function(){if(g){$(e).removeClass("hover");$(e).animate({left:f},"fast");$(h).css("left",-f).show().animate({left:0},"fast",function(){d(f);$(e).removeClass("hidden")});g=false}else{f=$(e).position().left;$(c).css("left",$(e).innerWidth());if(document.recalc){document.recalc()}$(e).removeClass("hover");$(h).animate({left:-f},"fast");$(e).animate({left:-1},"fast",function(){$(this).addClass("hidden")});g=true}};$(e).hover(function(){$(this).addClass("hover")},function(){$(this).removeClass("hover")}).bind("dragstart",function(i){$("#DD-helper").show()}).bind("dragen!
d",function(i){$("#DD-helper").hide()}).bind("drag",function(i){x=i.offsetX;x=Math.min(400,Math.max(100,x));if(g){$(h).css("left",0);$(e).removeClass("hidden");g=false}d(x)}).bind("dragclickonly",function(i){a()}).find("div").show();var b=function(i){if((g&&i=="show")||(!g&&i=="hide")){a()}};return{force_panel:b}}function make_right_panel(a,e,h){var j=false;var g=false;var c=null;var d=function(k){$(a).css("width",k);$(e).css("right",k+9);$(h).css("right",k).css("left","");if(document.recalc){document.recalc()}};var i=function(){if(j){$(h).removeClass("hover");$(h).animate({right:c},"fast");$(a).css("right",-c).show().animate({right:0},"fast",function(){d(c);$(h).removeClass("hidden")});j=false}else{c=$(document).width()-$(h).position().left-$(h).outerWidth();$(e).css("right",$(h).innerWidth()+1);if(document.recalc){document.recalc()}$(h).removeClass("hover");$(a).animate({right:-c},"fast");$(h).animate({right:-1},"fast",function(){$(this).addClass("hidden")});j=true}g=fals!
e};var b=function(k){var l=$(e).width()-(j?c:0);if(l<k){if(!j){i();g=t
rue}}else{if(g){i();g=false}}};$(h).hover(function(){$(this).addClass("hover")},function(){$(this).removeClass("hover")}).bind("dragstart",function(k){$("#DD-helper").show()}).bind("dragend",function(k){$("#DD-helper").hide()}).bind("drag",function(k){x=k.offsetX;w=$(window).width();x=Math.min(w-100,x);x=Math.max(w-400,x);if(j){$(a).css("right",0);$(h).removeClass("hidden");j=false}d(w-x-$(this).outerWidth())}).bind("dragclickonly",function(k){i()}).find("div").show();var f=function(k){if((j&&k=="show")||(!j&&k=="hide")){i()}};return{handle_minwidth_hint:b,force_panel:f}}function hide_modal(){$(".dialog-box-container").fadeOut(function(){$("#overlay").hide();$(".dialog-box").find(".body").children().remove()})}function show_modal(f,c,e,d){if(f){$(".dialog-box").find(".title").html(f);$(".dialog-box").find(".unified-panel-header").show()}else{$(".dialog-box").find(".unified-panel-header").hide()}var a=$(".dialog-box").find(".buttons").html("");if(e){$.each(e,function(b,g){a.a!
ppend($("<button/>").text(b).click(g));a.append(" ")});a.show()}else{a.hide()}var a=$(".dialog-box").find(".extra_buttons").html("");if(d){$.each(d,function(b,g){a.append($("<button/>").text(b).click(g));a.append(" ")});a.show()}else{a.hide()}if(c=="progress"){c=$("<img src='../images/yui/rel_interstitial_loading.gif')' />")}$(".dialog-box").find(".body").html(c);if(!$(".dialog-box-container").is(":visible")){$("#overlay").show();$(".dialog-box-container").fadeIn()}}function show_in_overlay(c){var d=c.width||"600";var b=c.height||"400";var a=c.scroll||"auto";$("#overlay-background").bind("click.overlay",function(){hide_modal();$("#overlay-background").unbind("click.overlay")});show_modal(null,$("<div style='margin: -5px;'><img id='close_button' style='position:absolute;right:-17px;top:-15px;' src='../images/closebox.png'><iframe style='margin: 0; padding: 0;' src='"+c.url+"' width='"+d+"' height='"+b+"' scrolling='"+a+"' frameborder='0'></iframe></div>"));$("#close_button")!
.bind("click",function(){hide_modal()})}$(function(){$(".tab").each(fu
nction(){var a=$(this).children(".submenu");if(a.length>0){if($.browser.msie){a.prepend("<iframe style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; filter:Alpha(Opacity='0');\"></iframe>")}$(this).hover(function(){a.show()},function(){a.hide()});a.click(function(){a.hide()})}})});function user_changed(a,b){if(a){$(".loggedin-only").show();$(".loggedout-only").hide();$("#user-email").text(a);if(b){$(".admin-only").show()}}else{$(".loggedin-only").hide();$(".loggedout-only").show();$(".admin-only").hide()}};
\ No newline at end of file
+function ensure_dd_helper(){if($("#DD-helper").length==0){$("<div id='DD-helper'/>").css({background:"white",opacity:0,zIndex:9000,position:"absolute",top:0,left:0,width:"100%",height:"100%"}).appendTo("body").hide()}}function make_left_panel(h,c,e){var g=false;var f=null;var d=function(i){var j=i;if(i<0){i=0}$(h).css("width",i);$(e).css("left",j);$(c).css("left",i+7);if(document.recalc){document.recalc()}};var a=function(){if(g){$(e).removeClass("hover");$(e).animate({left:f},"fast");$(h).css("left",-f).show().animate({left:0},"fast",function(){d(f);$(e).removeClass("hidden")});g=false}else{f=$(e).position().left;$(c).css("left",$(e).innerWidth());if(document.recalc){document.recalc()}$(e).removeClass("hover");$(h).animate({left:-f},"fast");$(e).animate({left:-1},"fast",function(){$(this).addClass("hidden")});g=true}};$(e).hover(function(){$(this).addClass("hover")},function(){$(this).removeClass("hover")}).bind("dragstart",function(i){$("#DD-helper").show()}).bind("dragen!
d",function(i){$("#DD-helper").hide()}).bind("drag",function(i){x=i.offsetX;x=Math.min(400,Math.max(100,x));if(g){$(h).css("left",0);$(e).removeClass("hidden");g=false}d(x)}).bind("dragclickonly",function(i){a()}).find("div").show();var b=function(i){if((g&&i=="show")||(!g&&i=="hide")){a()}};return{force_panel:b}}function make_right_panel(a,e,h){var j=false;var g=false;var c=null;var d=function(k){$(a).css("width",k);$(e).css("right",k+9);$(h).css("right",k).css("left","");if(document.recalc){document.recalc()}};var i=function(){if(j){$(h).removeClass("hover");$(h).animate({right:c},"fast");$(a).css("right",-c).show().animate({right:0},"fast",function(){d(c);$(h).removeClass("hidden")});j=false}else{c=$(document).width()-$(h).position().left-$(h).outerWidth();$(e).css("right",$(h).innerWidth()+1);if(document.recalc){document.recalc()}$(h).removeClass("hover");$(a).animate({right:-c},"fast");$(h).animate({right:-1},"fast",function(){$(this).addClass("hidden")});j=true}g=fals!
e};var b=function(k){var l=$(e).width()-(j?c:0);if(l<k){if(!j){i();g=t
rue}}else{if(g){i();g=false}}};$(h).hover(function(){$(this).addClass("hover")},function(){$(this).removeClass("hover")}).bind("dragstart",function(k){$("#DD-helper").show()}).bind("dragend",function(k){$("#DD-helper").hide()}).bind("drag",function(k){x=k.offsetX;w=$(window).width();x=Math.min(w-100,x);x=Math.max(w-400,x);if(j){$(a).css("right",0);$(h).removeClass("hidden");j=false}d(w-x-$(this).outerWidth())}).bind("dragclickonly",function(k){i()}).find("div").show();var f=function(k){if((j&&k=="show")||(!j&&k=="hide")){i()}};return{handle_minwidth_hint:b,force_panel:f}}function hide_modal(){$(".dialog-box-container").fadeOut(function(){$("#overlay").hide();$(".dialog-box").find(".body").children().remove()})}function show_modal(g,c,e,d,f){if(g){$(".dialog-box").find(".title").html(g);$(".dialog-box").find(".unified-panel-header").show()}else{$(".dialog-box").find(".unified-panel-header").hide()}var a=$(".dialog-box").find(".buttons").html("");if(e){$.each(e,function(b,h){a!
.append($("<button/>").text(b).click(h));a.append(" ")});a.show()}else{a.hide()}var a=$(".dialog-box").find(".extra_buttons").html("");if(d){$.each(d,function(b,h){a.append($("<button/>").text(b).click(h));a.append(" ")});a.show()}else{a.hide()}if(c=="progress"){c=$("<img src='../images/yui/rel_interstitial_loading.gif')' />")}$(".dialog-box").find(".body").html(c);if(!$(".dialog-box-container").is(":visible")){$("#overlay").show();$(".dialog-box-container").fadeIn()}if(f){f()}}function show_in_overlay(c){var d=c.width||"600";var b=c.height||"400";var a=c.scroll||"auto";$("#overlay-background").bind("click.overlay",function(){hide_modal();$("#overlay-background").unbind("click.overlay")});show_modal(null,$("<div style='margin: -5px;'><img id='close_button' style='position:absolute;right:-17px;top:-15px;' src='../images/closebox.png'><iframe style='margin: 0; padding: 0;' src='"+c.url+"' width='"+d+"' height='"+b+"' scrolling='"+a+"' frameborder='0'></iframe></div>"));$("#cl!
ose_button").bind("click",function(){hide_modal()})}$(function(){$(".t
ab").each(function(){var a=$(this).children(".submenu");if(a.length>0){if($.browser.msie){a.prepend("<iframe style=\"position: absolute; top: 0; left: 0; width: 100%; height: 100%; z-index: -1; filter:Alpha(Opacity='0');\"></iframe>")}$(this).hover(function(){a.show()},function(){a.hide()});a.click(function(){a.hide()})}})});function user_changed(a,b){if(a){$(".loggedin-only").show();$(".loggedout-only").hide();$("#user-email").text(a);if(b){$(".admin-only").show()}}else{$(".loggedin-only").hide();$(".loggedout-only").show();$(".admin-only").hide()}};
\ No newline at end of file
1
0
24 Feb '10
details: http://www.bx.psu.edu/hg/galaxy/rev/47aa31eb9cb6
changeset: 3420:47aa31eb9cb6
user: jeremy goecks <jeremy.goecks(a)emory.edu>
date: Mon Feb 22 07:42:07 2010 -0500
description:
Added functionality for creating links on pages: (1) existing links are editable and (2) can create in-page, named anchors.
diffstat:
static/scripts/galaxy.panels.js | 5 ++-
templates/page/editor.mako | 64 ++++++++++++++++++++++++++++++++--------
2 files changed, 54 insertions(+), 15 deletions(-)
diffs (119 lines):
diff -r 1e23f73647bb -r 47aa31eb9cb6 static/scripts/galaxy.panels.js
--- a/static/scripts/galaxy.panels.js Fri Feb 19 17:54:44 2010 -0500
+++ b/static/scripts/galaxy.panels.js Mon Feb 22 07:42:07 2010 -0500
@@ -165,7 +165,7 @@
} );
};
-function show_modal( title, body, buttons, extra_buttons ) {
+function show_modal( title, body, buttons, extra_buttons, init_fn ) {
if ( title ) {
$( ".dialog-box" ).find( ".title" ).html( title );
$( ".dialog-box" ).find( ".unified-panel-header" ).show();
@@ -200,6 +200,9 @@
$("#overlay").show();
$(".dialog-box-container").fadeIn()
}
+ if ( init_fn ) {
+ init_fn();
+ }
};
function show_in_overlay( options ) {
diff -r 1e23f73647bb -r 47aa31eb9cb6 templates/page/editor.mako
--- a/templates/page/editor.mako Fri Feb 19 17:54:44 2010 -0500
+++ b/templates/page/editor.mako Mon Feb 22 07:42:07 2010 -0500
@@ -126,6 +126,25 @@
var sStamp = wym.uniqueStamp();
var selected = wym.selected();
+ // Swap out URL attribute for id/name attribute in link creation to enable anchor creation in page.
+ function set_link_id()
+ {
+ // When "set link id" link clicked, update UI.
+ $('#set_link_id').click( function()
+ {
+ // Set label.
+ $("#link_attribute_label").text("ID/Name");
+
+ // Set input elt class, value.
+ var attribute_input = $(".wym_href");
+ attribute_input.addClass("wym_id").removeClass("wym_href");
+ attribute_input.val( attribute_input.attr('id') );
+
+ // Remove link.
+ $(this).remove();
+ });
+ }
+
// LINK DIALOG
if ( dialogType == WYMeditor.DIALOG_LINK ) {
if(selected) {
@@ -134,28 +153,45 @@
jQuery(wym._options.titleSelector).val(jQuery(selected).attr(WYMeditor.TITLE));
jQuery(wym._options.altSelector).val(jQuery(selected).attr(WYMeditor.ALT));
}
+ // Get current URL, title.
+ var curURL, curTitle;
+ if (selected)
+ {
+ curURL = $(selected).attr("href");
+ if (curURL == undefined)
+ curURL = "";
+ curTitle = $(selected).attr("title");
+ if (curTitle == undefined)
+ curTitle = "";
+ }
show_modal(
- "Link",
- "<div><div><label>URL</label><br><input type='text' class='wym_href' value='' size='40' /></div>"
- + "<div><label>Title</label><br><input type='text' class='wym_title' value='' size='40' /></div><div>",
+ "Create Link",
+ "<div><div><label id='link_attribute_label'>URL <span style='float: right; font-size: 90%'><a href='#' id='set_link_id'>Create in-page anchor</a></span></label><br><input type='text' class='wym_href' value='" + curURL + "' size='40' /></div>"
+ + "<div><label>Title</label><br><input type='text' class='wym_title' value='" + curTitle + "' size='40' /></div><div>",
{
"Make link": function() {
var sUrl = jQuery(wym._options.hrefSelector).val();
- if(sUrl.length > 0) {
-
- wym._exec(WYMeditor.CREATE_LINK, sStamp);
-
- jQuery("a[href=" + sStamp + "]", wym._doc.body)
- .attr(WYMeditor.HREF, sUrl)
- .attr(WYMeditor.TITLE, jQuery(wym._options.titleSelector).val());
-
+ sUrl = ( sUrl ? sUrl : "" );
+ var sName = $(".wym_id").val();
+ sName = ( sName ? sName : "" );
+ if ( (sUrl.length > 0) || (sName.length > 0) ) {
+ // Create link.
+ wym._exec(WYMeditor.CREATE_LINK, sStamp);
+
+ var link = jQuery("a[href=" + sStamp + "]", wym._doc.body);
+ link.attr(WYMeditor.HREF, sUrl);
+ link.attr(WYMeditor.TITLE, jQuery(wym._options.titleSelector).val());
+ if (sName.length > 0)
+ link.attr("id", sName);
}
hide_modal();
},
- "Cancel:": function() {
+ "Cancel": function() {
hide_modal();
}
- }
+ },
+ {},
+ set_link_id
);
return;
}
@@ -668,7 +704,7 @@
##"Embed Page": function() {
## editor.dialog(Galaxy.DIALOG_EMBED_PAGE);
##}
- });
+ });
});
</script>
</%def>
1
0
details: http://www.bx.psu.edu/hg/galaxy/rev/1e23f73647bb
changeset: 3419:1e23f73647bb
user: Kanwei Li <kanwei(a)gmail.com>
date: Fri Feb 19 17:54:44 2010 -0500
description:
trackster:
- Refactor
- Focus on new browser text
- Fixed linetrack bug when switching chroms
diffstat:
static/scripts/packed/trackster.js | 2 +-
static/scripts/trackster.js | 152 +++++++++++++++++-------------------
templates/tracks/browser.mako | 13 +-
templates/tracks/new_browser.mako | 2 +-
4 files changed, 83 insertions(+), 86 deletions(-)
diffs (313 lines):
diff -r 879432079138 -r 1e23f73647bb static/scripts/packed/trackster.js
--- a/static/scripts/packed/trackster.js Fri Feb 19 14:34:25 2010 -0500
+++ b/static/scripts/packed/trackster.js Fri Feb 19 17:54:44 2010 -0500
@@ -1,1 +1,1 @@
-var DEBUG=false;var DENSITY=1000,FEATURE_LEVELS=10,DATA_ERROR="There was an error in indexing this dataset.",DATA_NONE="No data for this chrom/contig.",DATA_PENDING="Currently indexing... please wait",DATA_LOADING="Loading data...",CACHED_TILES_FEATURE=10,CACHED_TILES_LINE=30,CACHED_DATA=20,CONTEXT=$("<canvas></canvas>").get(0).getContext("2d"),RIGHT_STRAND,LEFT_STRAND;var right_img=new Image();right_img.src="../images/visualization/strand_right.png";right_img.onload=function(){RIGHT_STRAND=CONTEXT.createPattern(right_img,"repeat")};var left_img=new Image();left_img.src="../images/visualization/strand_left.png";left_img.onload=function(){LEFT_STRAND=CONTEXT.createPattern(left_img,"repeat")};var right_img_inv=new Image();right_img_inv.src="../images/visualization/strand_right_inv.png";right_img_inv.onload=function(){RIGHT_STRAND_INV=CONTEXT.createPattern(right_img_inv,"repeat")};var left_img_inv=new Image();left_img_inv.src="../images/visualization/strand_left_inv.png";left_!
img_inv.onload=function(){LEFT_STRAND_INV=CONTEXT.createPattern(left_img_inv,"repeat")};function commatize(b){b+="";var a=/(\d+)(\d{3})/;while(a.test(b)){b=b.replace(a,"$1,$2")}return b}var Cache=function(a){this.num_elements=a;this.clear()};$.extend(Cache.prototype,{get:function(b){var a=this.key_ary.indexOf(b);if(a!=-1){this.key_ary.splice(a,1);this.key_ary.push(b)}return this.obj_cache[b]},set:function(b,c){if(!this.obj_cache[b]){if(this.key_ary.length>=this.num_elements){var a=this.key_ary.shift();delete this.obj_cache[a]}this.key_ary.push(b)}this.obj_cache[b]=c;return c},clear:function(){this.obj_cache={};this.key_ary=[]}});var View=function(b,d,c,a){this.vis_id=c;this.dbkey=a;this.title=d;this.chrom=b;this.tracks=[];this.label_tracks=[];this.max_low=0;this.max_high=0;this.center=(this.max_high-this.max_low)/2;this.zoom_factor=3;this.zoom_level=0;this.track_id_counter=0};$.extend(View.prototype,{add_track:function(a){a.view=this;a.track_id=this.track_id_counter;this.tr!
acks.push(a);if(a.init){a.init()}a.container_div.attr("id","track_"+a.
track_id);this.track_id_counter+=1},add_label_track:function(a){a.view=this;this.label_tracks.push(a)},remove_track:function(a){a.container_div.fadeOut("slow",function(){$(this).remove()});delete this.tracks[a]},update_options:function(){var b=$("ul#sortable-ul").sortable("toArray");var d=[];var c=$("#viewport > div").sort(function(g,f){return b.indexOf($(g).attr("id"))>b.indexOf($(f).attr("id"))});$("#viewport > div").remove();$("#viewport").html(c);for(var e in view.tracks){var a=view.tracks[e];if(a.update_options){a.update_options(e)}}},redraw:function(f){this.span=this.max_high-this.max_low;var d=this.span/Math.pow(this.zoom_factor,this.zoom_level),b=this.center-(d/2),e=b+d;if(b<0){b=0;e=b+d}else{if(e>this.max_high){e=this.max_high;b=e-d}}this.low=Math.floor(b);this.high=Math.ceil(e);this.center=Math.round(this.low+(this.high-this.low)/2);this.resolution=Math.pow(10,Math.ceil(Math.log((this.high-this.low)/DENSITY)/Math.LN10));this.zoom_res=Math.pow(FEATURE_LEVELS,Math.ma!
x(0,Math.ceil(Math.log(this.resolution,FEATURE_LEVELS)/Math.log(FEATURE_LEVELS))));$("#overview-box").css({left:(this.low/this.span)*$("#overview-viewport").width(),width:Math.max(12,((this.high-this.low)/this.span)*$("#overview-viewport").width())}).show();$("#low").val(commatize(this.low));$("#high").val(commatize(this.high));if(!f){for(var c=0,a=this.tracks.length;c<a;c++){this.tracks[c].draw()}for(var c=0,a=this.label_tracks.length;c<a;c++){this.label_tracks[c].draw()}}},zoom_in:function(a){if(this.max_high===0||this.high-this.low<30){return}if(a){this.center=a/$(document).width()*(this.high-this.low)+this.low}this.zoom_level+=1;this.redraw()},zoom_out:function(){if(this.max_high===0){return}if(this.zoom_level<=0){this.zoom_level=0;return}this.zoom_level-=1;this.redraw()}});var Track=function(a,b){this.name=a;this.parent_element=b;this.init_global()};$.extend(Track.prototype,{init_global:function(){this.header_div=$("<div class='track-header'>").text(this.name);this.con!
tent_div=$("<div class='track-content'>");this.container_div=$("<div><
/div>").addClass("track").append(this.header_div).append(this.content_div);this.parent_element.append(this.container_div)}});var TiledTrack=function(){};$.extend(TiledTrack.prototype,Track.prototype,{draw:function(){var i=this.view.low,e=this.view.high,f=e-i,d=this.view.resolution;if(DEBUG){$("#debug").text(d+" "+this.view.zoom_res)}var k=$("<div style='position: relative;'></div>");this.content_div.children(":first").remove();this.content_div.append(k);var l=this.content_div.width()/f;var h;var a=Math.floor(i/d/DENSITY);while((a*DENSITY*d)<e){var j=this.content_div.width()+"_"+this.view.zoom_level+"_"+a;var c=this.tile_cache.get(j);if(c){var g=a*DENSITY*d;var b=(g-i)*l;if(this.left_offset){b-=this.left_offset}c.css({left:b});k.append(c);this.max_height=Math.max(this.max_height,c.height())}else{this.delayed_draw(this,j,i,e,a,d,k,l)}a+=1}},delayed_draw:function(c,e,a,f,b,d,g,h){setTimeout(function(){if(!(a>c.view.high||f<c.view.low)){tile_element=c.draw_tile(d,b,g,h);if(tile_!
element){c.tile_cache.set(e,tile_element);c.max_height=Math.max(c.max_height,tile_element.height());c.content_div.css("height",c.max_height)}}},50)}});var LabelTrack=function(a){Track.call(this,null,a);this.track_type="LabelTrack";this.hidden=true;this.container_div.addClass("label-track")};$.extend(LabelTrack.prototype,Track.prototype,{draw:function(){var c=this.view,d=c.high-c.low,g=Math.floor(Math.pow(10,Math.floor(Math.log(d)/Math.log(10)))),a=Math.floor(c.low/g)*g,e=this.content_div.width(),b=$("<div style='position: relative; height: 1.3em;'></div>");while(a<c.high){var f=(a-c.low)/d*e;b.append($("<div class='label'>"+commatize(a)+"</div>").css({position:"absolute",left:f-1}));a+=g}this.content_div.children(":first").remove();this.content_div.append(b)}});var LineTrack=function(c,a,d,b){this.track_type="LineTrack";this.tile_cache=new Cache(CACHED_TILES_LINE);Track.call(this,c,$("#viewport"));TiledTrack.call(this);this.indexer=d;this.height_px=100;this.container_div.ad!
dClass("line-track");this.dataset_id=a;this.prefs={min_value:undefined
,max_value:undefined};if(b.min_value!==undefined){this.prefs.min_value=b.min_value}if(b.max_value!==undefined){this.prefs.max_value=b.max_value}};$.extend(LineTrack.prototype,TiledTrack.prototype,{init:function(){this.data_queue={};this.data_cache=new Cache(CACHED_DATA);var a=this,b=a.view.tracks.indexOf(a);a.content_div.text(DATA_LOADING);a.container_div.removeClass("nodata error pending");$.getJSON(data_url,{stats:true,indexer:a.indexer,chrom:a.view.chrom,low:null,high:null,dataset_id:a.dataset_id},function(d){if(!d||d=="error"){a.container_div.addClass("error");a.content_div.text(DATA_ERROR)}else{if(d.length===0||d=="no data"){a.container_div.addClass("nodata");a.content_div.text(DATA_NONE)}else{if(d=="pending"){a.container_div.addClass("pending");a.content_div.text(DATA_PENDING);setTimeout(function(){a.init()},5000)}else{a.content_div.text("");a.content_div.css("height",a.height_px+"px");if(a.prefs.min_value===undefined||a.prefs.max_value===undefined){a.prefs.min_value=d!
.min;a.prefs.max_value=d.max;$("#track_"+b+"_minval").val(a.prefs.min_value);$("#track_"+b+"_maxval").val(a.prefs.max_value)}a.vertical_range=a.prefs.max_value-a.prefs.min_value;if($("#linetrack_"+b+"_minval").length===0){var e=$("<div></div>").addClass("yaxislabel").attr("id","linetrack_"+b+"_minval").text(a.prefs.min_value);var c=$("<div></div>").addClass("yaxislabel").attr("id","linetrack_"+b+"_maxval").text(a.prefs.max_value);c.css({position:"relative",top:"25px"});c.prependTo(a.container_div);e.css({position:"relative",top:a.height_px+55+"px"});e.prependTo(a.container_div)}a.draw()}}}})},get_data:function(d,b){var c=this,a=b*DENSITY*d,f=(b+1)*DENSITY*d,e=d+"_"+b;if(!c.data_queue[e]){c.data_queue[e]=true;$.getJSON(data_url,{indexer:this.indexer,chrom:this.view.chrom,low:a,high:f,dataset_id:this.dataset_id,resolution:this.view.resolution},function(g){c.data_cache.set(e,g);delete c.data_queue[e];c.draw()})}},draw_tile:function(n,p,c,e){if(this.vertical_range===undefined){!
return}var q=p*DENSITY*n,a=DENSITY*n,b=$("<canvas class='tile'></canva
s>"),s=n+"_"+p;if(!this.data_cache.get(s)){this.get_data(n,p);return}var r=this.data_cache.get(s);b.css({position:"absolute",top:0,left:(q-this.view.low)*e});b.get(0).width=Math.ceil(a*e);b.get(0).height=this.height_px;var m=b.get(0).getContext("2d"),j=false,k=this.prefs.min_value,f=this.prefs.max_value,l=this.vertical_range,d=this.height_px;m.beginPath();for(var o=0;o<r.length-1;o++){var h=r[o][0]-q;var g=r[o][1];if(isNaN(g)){j=false}else{h=h*e;if(g<=k){g=k}else{if(g>=f){g=f}}g=Math.round(d-(g-k)/l*d);if(j){m.lineTo(h,g)}else{m.moveTo(h,g);j=true}}}m.stroke();c.append(b);return b},gen_options:function(j){var a=$("<div></div>").addClass("form-row");var e="track_"+j+"_minval",g="track_"+j+"_maxval",h=$("<label></label>").attr("for",e).text("Min value:"),b=(this.prefs.min_value===undefined?"":this.prefs.min_value),i=$("<input></input>").attr("id",e).val(b),d=$("<label></label>").attr("for",g).text("Max value:"),f=(this.prefs.max_value===undefined?"":this.prefs.max_value),c=$("!
<input></input>").attr("id",g).val(f);return a.append(h).append(i).append(d).append(c)},update_options:function(c){var a=$("#track_"+c+"_minval").val(),b=$("#track_"+c+"_maxval").val();if(a!==this.prefs.min_value||b!==this.prefs.max_value){this.prefs.min_value=parseFloat(a);this.prefs.max_value=parseFloat(b);this.vertical_range=this.prefs.max_value-this.prefs.min_value;$("#linetrack_"+c+"_minval").text(this.prefs.min_value);$("#linetrack_"+c+"_maxval").text(this.prefs.max_value);this.tile_cache.clear();this.draw()}}});var FeatureTrack=function(c,a,d,b){this.track_type="FeatureTrack";this.tile_cache=new Cache(CACHED_TILES_FEATURE);Track.call(this,c,$("#viewport"));TiledTrack.call(this);this.indexer=d;this.height_px=100;this.container_div.addClass("feature-track");this.dataset_id=a;this.zo_slots={};this.show_labels_scale=0.001;this.showing_details=false;this.vertical_detail_px=10;this.vertical_nodetail_px=3;this.default_font="9px Monaco, Lucida Console, monospace";this.left_o!
ffset=200;this.inc_slots={};this.data_queue={};this.s_e_by_tile={};thi
s.data_cache=new Cache(20);this.prefs={block_color:"black",label_color:"black"};if(b.block_color!==undefined){this.prefs.block_color=b.block_color}if(b.label_color!==undefined){this.prefs.label_color=b.label_color}};$.extend(FeatureTrack.prototype,TiledTrack.prototype,{init:function(){var a=this;a.content_div.text(DATA_LOADING);a.container_div.removeClass("nodata error pending");$.getJSON(data_url,{indexer:a.indexer,low:a.view.max_low,high:a.view.max_high,dataset_id:a.dataset_id,chrom:a.view.chrom},function(b){if(b=="error"){a.container_div.addClass("error");a.content_div.text(DATA_ERROR)}else{if(b.length===0||b=="no data"){a.container_div.addClass("nodata");a.content_div.text(DATA_NONE)}else{if(b=="pending"){a.container_div.adClass("pending");a.content_div.text(DATA_PENDING);setTimeout(function(){a.init()},5000)}else{a.content_div.text("");a.content_div.css("height",a.height_px+"px");a.values=b;a.calc_slots();a.slots=a.zo_slots;a.draw()}}}})},get_data:function(a,d){var b=th!
is,c=a+"_"+d;if(!b.data_queue[c]){b.data_queue[c]=true;$.getJSON(data_url,{indexer:b.indexer,chrom:b.view.chrom,low:a,high:d,dataset_id:b.dataset_id,include_blocks:true},function(e){b.data_cache.set(c,e);delete b.data_queue[c];b.draw()})}},calc_slots:function(){var b=[],a=this.content_div.width()/(this.view.high-this.view.low),d=this.view.max_low;for(var e=0,f=this.values.length;e<f;e++){var g,h,k=this.values[e];g=Math.floor((k.start-d)*a);h=Math.ceil((k.end-d)*a);var c=0;while(true){if(b[c]===undefined||b[c]<g){b[c]=h;this.zo_slots[k.uid]=c;break}c++}}this.height_px=b.length*this.vertical_nodetail_px+15;this.content_div.css("height",this.height_px+"px")},incremental_slots:function(a,f){if(!this.inc_slots[a]){this.inc_slots[a]={};this.inc_slots[a].w_scale=1/a;this.s_e_by_tile[a]={}}var h=this.inc_slots[a].w_scale,s=[],g=0,b=$("<canvas></canvas>").get(0).getContext("2d"),l=this.view.max_low;var c,e,u=[];for(var p=0,q=f.length;p<q;p++){var d=f[p];if(this.inc_slots[a][d.uid]!=!
=undefined){g=Math.max(g,this.inc_slots[a][d.uid]);u.push(this.inc_slo
ts[a][d.uid])}else{s.push(p)}}for(var p=0,q=s.length;p<q;p++){var d=f[s[p]];c=Math.floor((d.start-l)*h);c-=b.measureText(d.name).width;e=Math.ceil((d.end-l)*h);var o=0;while(true){var m=true;if(this.s_e_by_tile[a][o]!==undefined){for(var n=0,t=this.s_e_by_tile[a][o].length;n<t;n++){var r=this.s_e_by_tile[a][o][n];if(e>r[0]&&c<r[1]){m=false;break}}}if(m){if(this.s_e_by_tile[a][o]===undefined){this.s_e_by_tile[a][o]=[]}this.s_e_by_tile[a][o].push([c,e]);this.inc_slots[a][d.uid]=o;g=Math.max(g,o);break}o++}}return g},draw_tile:function(B,f,g,M){if(!this.values){return}var s=f*DENSITY*B,G=(f+1)*DENSITY*B,r=DENSITY*B;var K,L,m;if(M>this.show_labels_scale){if(!this.showing_details){this.showing_details=true}for(var H in this.data_cache.obj_cache){var C=H.split("_"),z=C[0],c=C[1];if(z<=s&&c>=G){K=this.data_cache.get(H);break}}if(!K){this.data_queue[[s,G]]=true;this.get_data(s,G);return}m=this.incremental_slots(this.view.zoom_res,K)*this.vertical_detail_px+15;L=this.inc_slots[this.v!
iew.zoom_res]}else{if(this.showing_details){this.showing_details=false}m=this.height_px;L=this.zo_slots;K=this.values}var a=Math.ceil(r*M),u=$("<canvas class='tile'></canvas>"),D=this.prefs.label_color,e=this.prefs.block_color,x=this.left_offset,N=this.showing_details,O=(this.showing_details?this.vertical_detail_px:this.vertical_nodetail_px);u.css({position:"absolute",top:0,left:(s-this.view.low)*M-x});u.get(0).width=a+x;u.get(0).height=m;var p=u.get(0).getContext("2d");p.fillStyle=this.prefs.block_color;p.font=this.default_font;p.textAlign="right";var I=0;for(var J=0,o=K.length;J<o;J++){var v=K[J];if(v.start<=G&&v.end>=s){var A=Math.floor(Math.max(0,(v.start-s)*M)),q=Math.ceil(Math.min(a,(v.end-s)*M)),y=L[v.uid]*O;var n,E,t=null,P=null;if(v.thick_start&&v.thick_end){t=Math.floor(Math.max(0,(v.thick_start-s)*M));P=Math.ceil(Math.min(a,(v.thick_end-s)*M))}if(!N){p.fillRect(A+x,y+5,q-A,1)}else{if(v.start>s){p.fillStyle=D;p.fillText(v.name,A-1+x,y+8);p.fillStyle=e}var Q=v.bloc!
ks;if(Q){if(v.strand){if(v.strand=="+"){p.fillStyle=RIGHT_STRAND}else{
if(v.strand=="-"){p.fillStyle=LEFT_STRAND}}p.fillRect(A+x,y,q-A,10);p.fillStyle=e}for(var H=0,d=Q.length;H<d;H++){var h=Q[H],b=Math.floor(Math.max(0,(h[0]-s)*M)),w=Math.ceil(Math.min(a,(h[1]-s)*M));if(b>w){continue}n=5;E=3;p.fillRect(b+x,y+E,w-b,n);if(t!==undefined&&!(b>P||w<t)){n=9;E=1;var F=Math.max(b,t),l=Math.min(w,P);p.fillRect(F+x,y+E,l-F,n)}}}else{n=9;E=1;p.fillRect(A+x,y+E,q-A,n);if(v.strand){if(v.strand=="+"){p.fillStyle=RIGHT_STRAND_INV}else{if(v.strand=="-"){p.fillStyle=LEFT_STRAND_INV}}p.fillRect(A+x,y,q-A,10);p.fillStyle=prefs.block_color}}}I++}}g.append(u);return u},gen_options:function(g){var a=$("<div></div>").addClass("form-row");var d="track_"+g+"_block_color",c=$("<label></label>").attr("for",d).text("Block color:"),b=$("<input></input>").attr("id",d).attr("name",d).val(this.prefs.block_color),f="track_"+g+"_label_color",h=$("<label></label>").attr("for",f).text("Label color:"),e=$("<input></input>").attr("id",f).attr("name",f).val(this.prefs.label_color);!
return a.append(c).append(b).append(h).append(e)},update_options:function(c){var a=$("#track_"+c+"_block_color").val(),b=$("#track_"+c+"_label_color").val();if(a!==this.prefs.block_color||b!==this.prefs.label_color){this.prefs.block_color=a;this.prefs.label_color=b;this.tile_cache.clear();this.draw()}}});var ReadTrack=function(c,a,d,b){this.track_type="ReadTrack";this.tile_cache=new Cache(CACHED_TILES_FEATURE);Track.call(this,c,$("#viewport"));TiledTrack.call(this);FeatureTrack.call(this,c,a,d,b)};$.extend(ReadTrack.prototype,TiledTrack.prototype,FeatureTrack.prototype,{draw_tile:function(v,z,m,n){if(!this.values){return}var A=z*DENSITY*v,e=(z+1)*DENSITY*v,q=DENSITY*v;var D,p,h;h=this.height_px;p=this.zo_slots;D=this.values;var t=Math.ceil(q*n),r=$("<canvas class='tile'></canvas>");r.css({position:"absolute",top:0,left:(A-this.view.low)*n-this.left_offset});r.get(0).width=t+this.left_offset;r.get(0).height=h;var u=r.get(0).getContext("2d");u.fillStyle=this.prefs.block_color!
;u.font=this.default_font;u.textAlign="right";var s=u.measureText("A")
.width;var w=0;for(var x=0,y=D.length;x<y;x++){var l=D[x];if(l.start<=e&&l.end>=A){var g=Math.floor(Math.max(0,(l.start-A)*n)),k=Math.ceil(Math.min(t,(l.end-A)*n)),f=p[l.uid]*this.vertical_detail_px;var a,E,d=null,o=null;if(n>s){for(var B=0,b=l.name.length;B<b;B++){var C=Math.floor(Math.max(0,(l.start+B-A)*n));u.fillText(l.name[B],C+this.left_offset,f+8)}}else{u.fillRect(g+this.left_offset,f+4,k-g,3)}}}m.append(r);return r}});
\ No newline at end of file
+var DEBUG=false;var DENSITY=1000,FEATURE_LEVELS=10,DATA_ERROR="There was an error in indexing this dataset.",DATA_NONE="No data for this chrom/contig.",DATA_PENDING="Currently indexing... please wait",DATA_LOADING="Loading data...",CACHED_TILES_FEATURE=10,CACHED_TILES_LINE=30,CACHED_DATA=20,CONTEXT=$("<canvas></canvas>").get(0).getContext("2d"),RIGHT_STRAND,LEFT_STRAND;var right_img=new Image();right_img.src="../images/visualization/strand_right.png";right_img.onload=function(){RIGHT_STRAND=CONTEXT.createPattern(right_img,"repeat")};var left_img=new Image();left_img.src="../images/visualization/strand_left.png";left_img.onload=function(){LEFT_STRAND=CONTEXT.createPattern(left_img,"repeat")};var right_img_inv=new Image();right_img_inv.src="../images/visualization/strand_right_inv.png";right_img_inv.onload=function(){RIGHT_STRAND_INV=CONTEXT.createPattern(right_img_inv,"repeat")};var left_img_inv=new Image();left_img_inv.src="../images/visualization/strand_left_inv.png";left_!
img_inv.onload=function(){LEFT_STRAND_INV=CONTEXT.createPattern(left_img_inv,"repeat")};function commatize(b){b+="";var a=/(\d+)(\d{3})/;while(a.test(b)){b=b.replace(a,"$1,$2")}return b}var Cache=function(a){this.num_elements=a;this.clear()};$.extend(Cache.prototype,{get:function(b){var a=this.key_ary.indexOf(b);if(a!=-1){this.key_ary.splice(a,1);this.key_ary.push(b)}return this.obj_cache[b]},set:function(b,c){if(!this.obj_cache[b]){if(this.key_ary.length>=this.num_elements){var a=this.key_ary.shift();delete this.obj_cache[a]}this.key_ary.push(b)}this.obj_cache[b]=c;return c},clear:function(){this.obj_cache={};this.key_ary=[]}});var View=function(b,d,c,a){this.vis_id=c;this.dbkey=a;this.title=d;this.chrom=b;this.tracks=[];this.label_tracks=[];this.max_low=0;this.max_high=0;this.center=(this.max_high-this.max_low)/2;this.zoom_factor=3;this.zoom_level=0;this.track_id_counter=0};$.extend(View.prototype,{add_track:function(a){a.view=this;a.track_id=this.track_id_counter;this.tr!
acks.push(a);if(a.init){a.init()}a.container_div.attr("id","track_"+a.
track_id);this.track_id_counter+=1},add_label_track:function(a){a.view=this;this.label_tracks.push(a)},remove_track:function(a){a.container_div.fadeOut("slow",function(){$(this).remove()});delete this.tracks[a]},update_options:function(){var b=$("ul#sortable-ul").sortable("toArray");var d=[];var c=$("#viewport > div").sort(function(g,f){return b.indexOf($(g).attr("id"))>b.indexOf($(f).attr("id"))});$("#viewport > div").remove();$("#viewport").html(c);for(var e in view.tracks){var a=view.tracks[e];if(a.update_options){a.update_options(e)}}},redraw:function(f){this.span=this.max_high-this.max_low;var d=this.span/Math.pow(this.zoom_factor,this.zoom_level),b=this.center-(d/2),e=b+d;if(b<0){b=0;e=b+d}else{if(e>this.max_high){e=this.max_high;b=e-d}}this.low=Math.floor(b);this.high=Math.ceil(e);this.center=Math.round(this.low+(this.high-this.low)/2);this.resolution=Math.pow(10,Math.ceil(Math.log((this.high-this.low)/DENSITY)/Math.LN10));this.zoom_res=Math.pow(FEATURE_LEVELS,Math.ma!
x(0,Math.ceil(Math.log(this.resolution,FEATURE_LEVELS)/Math.log(FEATURE_LEVELS))));$("#overview-box").css({left:(this.low/this.span)*$("#overview-viewport").width(),width:Math.max(12,((this.high-this.low)/this.span)*$("#overview-viewport").width())}).show();$("#low").val(commatize(this.low));$("#high").val(commatize(this.high));if(!f){for(var c=0,a=this.tracks.length;c<a;c++){this.tracks[c].draw()}for(var c=0,a=this.label_tracks.length;c<a;c++){this.label_tracks[c].draw()}}},zoom_in:function(a){if(this.max_high===0||this.high-this.low<30){return}if(a){this.center=a/$(document).width()*(this.high-this.low)+this.low}this.zoom_level+=1;this.redraw()},zoom_out:function(){if(this.max_high===0){return}if(this.zoom_level<=0){this.zoom_level=0;return}this.zoom_level-=1;this.redraw()}});var Track=function(a,b){this.name=a;this.parent_element=b;this.init_global()};$.extend(Track.prototype,{init_global:function(){this.header_div=$("<div class='track-header'>").text(this.name);this.con!
tent_div=$("<div class='track-content'>");this.container_div=$("<div><
/div>").addClass("track").append(this.header_div).append(this.content_div);this.parent_element.append(this.container_div)},init_each:function(c,b){var a=this;a.data_queue={};a.tile_cache.clear();a.data_cache.clear();a.content_div.css("height","30px");a.content_div.text(DATA_LOADING);a.container_div.removeClass("nodata error pending");if(a.view.chrom){$.getJSON(data_url,c,function(d){if(!d||d=="error"){a.container_div.addClass("error");a.content_div.text(DATA_ERROR)}else{if(d.length===0||d=="no data"){a.container_div.addClass("nodata");a.content_div.text(DATA_NONE)}else{if(d=="pending"){a.container_div.addClass("pending");a.content_div.text(DATA_PENDING);setTimeout(function(){a.init()},5000)}else{a.content_div.text("");a.content_div.css("height",a.height_px+"px");b(d);a.draw()}}}})}else{a.container_div.addClass("nodata");a.content_div.text(DATA_NONE)}}});var TiledTrack=function(){};$.extend(TiledTrack.prototype,Track.prototype,{draw:function(){var i=this.view.low,e=this.view.!
high,f=e-i,d=this.view.resolution;if(DEBUG){$("#debug").text(d+" "+this.view.zoom_res)}var k=$("<div style='position: relative;'></div>");this.content_div.children(":first").remove();this.content_div.append(k);var l=this.content_div.width()/f;var h;var a=Math.floor(i/d/DENSITY);while((a*DENSITY*d)<e){var j=this.content_div.width()+"_"+this.view.zoom_level+"_"+a;var c=this.tile_cache.get(j);if(c){var g=a*DENSITY*d;var b=(g-i)*l;if(this.left_offset){b-=this.left_offset}c.css({left:b});k.append(c);this.max_height=Math.max(this.max_height,c.height())}else{this.delayed_draw(this,j,i,e,a,d,k,l)}a+=1}},delayed_draw:function(c,e,a,f,b,d,g,h){setTimeout(function(){if(!(a>c.view.high||f<c.view.low)){tile_element=c.draw_tile(d,b,g,h);if(tile_element){c.tile_cache.set(e,tile_element);c.max_height=Math.max(c.max_height,tile_element.height());c.content_div.css("height",c.max_height+"px")}}},50)}});var LabelTrack=function(a){Track.call(this,null,a);this.track_type="LabelTrack";this.hidden!
=true;this.container_div.addClass("label-track")};$.extend(LabelTrack.
prototype,Track.prototype,{draw:function(){var c=this.view,d=c.high-c.low,g=Math.floor(Math.pow(10,Math.floor(Math.log(d)/Math.log(10)))),a=Math.floor(c.low/g)*g,e=this.content_div.width(),b=$("<div style='position: relative; height: 1.3em;'></div>");while(a<c.high){var f=(a-c.low)/d*e;b.append($("<div class='label'>"+commatize(a)+"</div>").css({position:"absolute",left:f-1}));a+=g}this.content_div.children(":first").remove();this.content_div.append(b)}});var LineTrack=function(c,a,d,b){this.track_type="LineTrack";Track.call(this,c,$("#viewport"));TiledTrack.call(this);this.indexer=d;this.height_px=100;this.container_div.addClass("line-track");this.dataset_id=a;this.data_cache=new Cache(CACHED_DATA);this.tile_cache=new Cache(CACHED_TILES_LINE);this.prefs={min_value:undefined,max_value:undefined};if(b.min_value!==undefined){this.prefs.min_value=b.min_value}if(b.max_value!==undefined){this.prefs.max_value=b.max_value}};$.extend(LineTrack.prototype,TiledTrack.prototype,{init:fu!
nction(){var a=this,b=a.view.tracks.indexOf(a);a.vertical_range=undefined;this.init_each({stats:true,indexer:a.indexer,chrom:a.view.chrom,low:null,high:null,dataset_id:a.dataset_id},function(d){if(isNaN(parseFloat(a.prefs.min_value))||isNaN(parseFloat(a.prefs.max_value))){a.prefs.min_value=d.min;a.prefs.max_value=d.max;$("#track_"+b+"_minval").val(a.prefs.min_value);$("#track_"+b+"_maxval").val(a.prefs.max_value)}a.vertical_range=a.prefs.max_value-a.prefs.min_value;$("#linetrack_"+b+"_minval").remove();$("#linetrack_"+b+"_maxval").remove();var e=$("<div></div>").addClass("yaxislabel").attr("id","linetrack_"+b+"_minval").text(a.prefs.min_value);var c=$("<div></div>").addClass("yaxislabel").attr("id","linetrack_"+b+"_maxval").text(a.prefs.max_value);c.css({position:"relative",top:"25px"});c.prependTo(a.container_div);e.css({position:"relative",top:a.height_px+55+"px"});e.prependTo(a.container_div)})},get_data:function(d,b){var c=this,a=b*DENSITY*d,f=(b+1)*DENSITY*d,e=d+"_"+b;!
if(!c.data_queue[e]){c.data_queue[e]=true;$.getJSON(data_url,{indexer:
this.indexer,chrom:this.view.chrom,low:a,high:f,dataset_id:this.dataset_id,resolution:this.view.resolution,},function(g){c.data_cache.set(e,g);delete c.data_queue[e];c.draw()})}},draw_tile:function(n,p,c,e){if(this.vertical_range===undefined){return}var q=p*DENSITY*n,a=DENSITY*n,b=$("<canvas class='tile'></canvas>"),s=n+"_"+p;if(!this.data_cache.get(s)){this.get_data(n,p);return}var r=this.data_cache.get(s);b.css({position:"absolute",top:0,left:(q-this.view.low)*e});b.get(0).width=Math.ceil(a*e);b.get(0).height=this.height_px;var m=b.get(0).getContext("2d"),j=false,k=this.prefs.min_value,f=this.prefs.max_value,l=this.vertical_range,d=this.height_px;m.beginPath();for(var o=0;o<r.length-1;o++){var h=r[o][0]-q;var g=r[o][1];if(isNaN(g)){j=false}else{h=h*e;if(g<=k){g=k}else{if(g>=f){g=f}}g=Math.round(d-(g-k)/l*d);if(j){m.lineTo(h,g)}else{m.moveTo(h,g);j=true}}}m.stroke();c.append(b);return b},gen_options:function(j){var a=$("<div></div>").addClass("form-row");var e="track_"+j+"_!
minval",g="track_"+j+"_maxval",h=$("<label></label>").attr("for",e).text("Min value:"),b=(this.prefs.min_value===undefined?"":this.prefs.min_value),i=$("<input></input>").attr("id",e).val(b),d=$("<label></label>").attr("for",g).text("Max value:"),f=(this.prefs.max_value===undefined?"":this.prefs.max_value),c=$("<input></input>").attr("id",g).val(f);return a.append(h).append(i).append(d).append(c)},update_options:function(c){var a=$("#track_"+c+"_minval").val(),b=$("#track_"+c+"_maxval").val();if(a!==this.prefs.min_value||b!==this.prefs.max_value){this.prefs.min_value=parseFloat(a);this.prefs.max_value=parseFloat(b);this.vertical_range=this.prefs.max_value-this.prefs.min_value;$("#linetrack_"+c+"_minval").text(this.prefs.min_value);$("#linetrack_"+c+"_maxval").text(this.prefs.max_value);this.tile_cache.clear();this.draw()}}});var FeatureTrack=function(c,a,d,b){this.track_type="FeatureTrack";Track.call(this,c,$("#viewport"));TiledTrack.call(this);this.indexer=d;this.height_px!
=100;this.container_div.addClass("feature-track");this.dataset_id=a;th
is.zo_slots={};this.show_labels_scale=0.001;this.showing_details=false;this.vertical_detail_px=10;this.vertical_nodetail_px=3;this.default_font="9px Monaco, Lucida Console, monospace";this.left_offset=200;this.inc_slots={};this.data_queue={};this.s_e_by_tile={};this.tile_cache=new Cache(CACHED_TILES_FEATURE);this.data_cache=new Cache(20);this.prefs={block_color:"black",label_color:"black"};if(b.block_color!==undefined){this.prefs.block_color=b.block_color}if(b.label_color!==undefined){this.prefs.label_color=b.label_color}};$.extend(FeatureTrack.prototype,TiledTrack.prototype,{init:function(){var a=this;this.init_each({indexer:a.indexer,low:a.view.max_low,high:a.view.max_high,dataset_id:a.dataset_id,chrom:a.view.chrom},function(b){a.values=b;a.calc_slots();a.slots=a.zo_slots})},get_data:function(a,d){var b=this,c=a+"_"+d;if(!b.data_queue[c]){b.data_queue[c]=true;$.getJSON(data_url,{indexer:b.indexer,chrom:b.view.chrom,low:a,high:d,dataset_id:b.dataset_id,include_blocks:true},!
function(e){b.data_cache.set(c,e);delete b.data_queue[c];b.draw()})}},calc_slots:function(){var b=[],a=this.content_div.width()/(this.view.high-this.view.low),d=this.view.max_low;for(var e=0,f=this.values.length;e<f;e++){var g,h,k=this.values[e];g=Math.floor((k.start-d)*a);h=Math.ceil((k.end-d)*a);var c=0;while(true){if(b[c]===undefined||b[c]<g){b[c]=h;this.zo_slots[k.uid]=c;break}c++}}this.height_px=b.length*this.vertical_nodetail_px+15;this.content_div.css("height",this.height_px+"px")},incremental_slots:function(a,f){if(!this.inc_slots[a]){this.inc_slots[a]={};this.inc_slots[a].w_scale=1/a;this.s_e_by_tile[a]={}}var h=this.inc_slots[a].w_scale,s=[],g=0,b=$("<canvas></canvas>").get(0).getContext("2d"),l=this.view.max_low;var c,e,u=[];for(var p=0,q=f.length;p<q;p++){var d=f[p];if(this.inc_slots[a][d.uid]!==undefined){g=Math.max(g,this.inc_slots[a][d.uid]);u.push(this.inc_slots[a][d.uid])}else{s.push(p)}}for(var p=0,q=s.length;p<q;p++){var d=f[s[p]];c=Math.floor((d.start-l)!
*h);c-=b.measureText(d.name).width;e=Math.ceil((d.end-l)*h);var o=0;wh
ile(true){var m=true;if(this.s_e_by_tile[a][o]!==undefined){for(var n=0,t=this.s_e_by_tile[a][o].length;n<t;n++){var r=this.s_e_by_tile[a][o][n];if(e>r[0]&&c<r[1]){m=false;break}}}if(m){if(this.s_e_by_tile[a][o]===undefined){this.s_e_by_tile[a][o]=[]}this.s_e_by_tile[a][o].push([c,e]);this.inc_slots[a][d.uid]=o;g=Math.max(g,o);break}o++}}return g},draw_tile:function(B,f,g,M){if(!this.values){return}var s=f*DENSITY*B,G=(f+1)*DENSITY*B,r=DENSITY*B;var K,L,m;if(M>this.show_labels_scale){if(!this.showing_details){this.showing_details=true}for(var H in this.data_cache.obj_cache){var C=H.split("_"),z=C[0],c=C[1];if(z<=s&&c>=G){K=this.data_cache.get(H);break}}if(!K){this.data_queue[[s,G]]=true;this.get_data(s,G);return}m=this.incremental_slots(this.view.zoom_res,K)*this.vertical_detail_px+15;L=this.inc_slots[this.view.zoom_res]}else{if(this.showing_details){this.showing_details=false}m=this.height_px;L=this.zo_slots;K=this.values}var a=Math.ceil(r*M),u=$("<canvas class='tile'></can!
vas>"),D=this.prefs.label_color,e=this.prefs.block_color,x=this.left_offset,N=this.showing_details,O=(this.showing_details?this.vertical_detail_px:this.vertical_nodetail_px);u.css({position:"absolute",top:0,left:(s-this.view.low)*M-x});u.get(0).width=a+x;u.get(0).height=m;var p=u.get(0).getContext("2d");p.fillStyle=this.prefs.block_color;p.font=this.default_font;p.textAlign="right";var I=0;for(var J=0,o=K.length;J<o;J++){var v=K[J];if(v.start<=G&&v.end>=s){var A=Math.floor(Math.max(0,(v.start-s)*M)),q=Math.ceil(Math.min(a,(v.end-s)*M)),y=L[v.uid]*O;var n,E,t=null,P=null;if(v.thick_start&&v.thick_end){t=Math.floor(Math.max(0,(v.thick_start-s)*M));P=Math.ceil(Math.min(a,(v.thick_end-s)*M))}if(!N){p.fillRect(A+x,y+5,q-A,1)}else{if(v.start>s){p.fillStyle=D;p.fillText(v.name,A-1+x,y+8);p.fillStyle=e}var Q=v.blocks;if(Q){if(v.strand){if(v.strand=="+"){p.fillStyle=RIGHT_STRAND}else{if(v.strand=="-"){p.fillStyle=LEFT_STRAND}}p.fillRect(A+x,y,q-A,10);p.fillStyle=e}for(var H=0,d=Q.le!
ngth;H<d;H++){var h=Q[H],b=Math.floor(Math.max(0,(h[0]-s)*M)),w=Math.c
eil(Math.min(a,(h[1]-s)*M));if(b>w){continue}n=5;E=3;p.fillRect(b+x,y+E,w-b,n);if(t!==undefined&&!(b>P||w<t)){n=9;E=1;var F=Math.max(b,t),l=Math.min(w,P);p.fillRect(F+x,y+E,l-F,n)}}}else{n=9;E=1;p.fillRect(A+x,y+E,q-A,n);if(v.strand){if(v.strand=="+"){p.fillStyle=RIGHT_STRAND_INV}else{if(v.strand=="-"){p.fillStyle=LEFT_STRAND_INV}}p.fillRect(A+x,y,q-A,10);p.fillStyle=prefs.block_color}}}I++}}g.append(u);return u},gen_options:function(g){var a=$("<div></div>").addClass("form-row");var d="track_"+g+"_block_color",c=$("<label></label>").attr("for",d).text("Block color:"),b=$("<input></input>").attr("id",d).attr("name",d).val(this.prefs.block_color),f="track_"+g+"_label_color",h=$("<label></label>").attr("for",f).text("Label color:"),e=$("<input></input>").attr("id",f).attr("name",f).val(this.prefs.label_color);return a.append(c).append(b).append(h).append(e)},update_options:function(c){var a=$("#track_"+c+"_block_color").val(),b=$("#track_"+c+"_label_color").val();if(a!==this.p!
refs.block_color||b!==this.prefs.label_color){this.prefs.block_color=a;this.prefs.label_color=b;this.tile_cache.clear();this.draw()}}});var ReadTrack=function(c,a,d,b){this.track_type="ReadTrack";this.tile_cache=new Cache(CACHED_TILES_FEATURE);Track.call(this,c,$("#viewport"));TiledTrack.call(this);FeatureTrack.call(this,c,a,d,b)};$.extend(ReadTrack.prototype,TiledTrack.prototype,FeatureTrack.prototype,{draw_tile:function(v,z,m,n){if(!this.values){return}var A=z*DENSITY*v,e=(z+1)*DENSITY*v,q=DENSITY*v;var D,p,h;h=this.height_px;p=this.zo_slots;D=this.values;var t=Math.ceil(q*n),r=$("<canvas class='tile'></canvas>");r.css({position:"absolute",top:0,left:(A-this.view.low)*n-this.left_offset});r.get(0).width=t+this.left_offset;r.get(0).height=h;var u=r.get(0).getContext("2d");u.fillStyle=this.prefs.block_color;u.font=this.default_font;u.textAlign="right";var s=u.measureText("A").width;var w=0;for(var x=0,y=D.length;x<y;x++){var l=D[x];if(l.start<=e&&l.end>=A){var g=Math.floor(!
Math.max(0,(l.start-A)*n)),k=Math.ceil(Math.min(t,(l.end-A)*n)),f=p[l.
uid]*this.vertical_detail_px;var a,E,d=null,o=null;if(n>s){for(var B=0,b=l.name.length;B<b;B++){var C=Math.floor(Math.max(0,(l.start+B-A)*n));u.fillText(l.name[B],C+this.left_offset,f+8)}}else{u.fillRect(g+this.left_offset,f+4,k-g,3)}}}m.append(r);return r}});
\ No newline at end of file
diff -r 879432079138 -r 1e23f73647bb static/scripts/trackster.js
--- a/static/scripts/trackster.js Fri Feb 19 14:34:25 2010 -0500
+++ b/static/scripts/trackster.js Fri Feb 19 17:54:44 2010 -0500
@@ -198,6 +198,39 @@
this.content_div = $("<div class='track-content'>");
this.container_div = $("<div></div>").addClass('track').append( this.header_div ).append( this.content_div );
this.parent_element.append( this.container_div );
+ },
+ init_each: function(params, success_fn) {
+ var track = this;
+ track.data_queue = {};
+ track.tile_cache.clear();
+ track.data_cache.clear();
+ track.content_div.css( "height", "30px" );
+ track.content_div.text(DATA_LOADING);
+ track.container_div.removeClass("nodata error pending");
+
+ if (track.view.chrom) {
+ $.getJSON( data_url, params, function ( data ) {
+ if (!data || data == "error") {
+ track.container_div.addClass("error");
+ track.content_div.text(DATA_ERROR);
+ } else if (data.length === 0 || data == "no data") {
+ track.container_div.addClass("nodata");
+ track.content_div.text(DATA_NONE);
+ } else if (data == "pending") {
+ track.container_div.addClass("pending");
+ track.content_div.text(DATA_PENDING);
+ setTimeout(function() { track.init(); }, 5000);
+ } else {
+ track.content_div.text("");
+ track.content_div.css( "height", track.height_px + "px" );
+ success_fn(data);
+ track.draw();
+ }
+ });
+ } else {
+ track.container_div.addClass("nodata");
+ track.content_div.text(DATA_NONE);
+ }
}
});
@@ -233,9 +266,7 @@
if (this.left_offset) {
left -= this.left_offset;
}
- cached.css( {
- left: left
- });
+ cached.css({ left: left });
// Our responsibility to move the element to the new parent
parent_element.append( cached );
this.max_height = Math.max( this.max_height, cached.height() );
@@ -252,7 +283,7 @@
if ( tile_element ) {
track.tile_cache.set(key, tile_element);
track.max_height = Math.max( track.max_height, tile_element.height() );
- track.content_div.css( "height", track.max_height );
+ track.content_div.css( "height", track.max_height + "px");
}
}
}, 50);
@@ -289,7 +320,6 @@
var LineTrack = function ( name, dataset_id, indexer, prefs ) {
this.track_type = "LineTrack";
- this.tile_cache = new Cache(CACHED_TILES_LINE);
Track.call( this, name, $("#viewport") );
TiledTrack.call( this );
@@ -297,61 +327,42 @@
this.height_px = 100;
this.container_div.addClass( "line-track" );
this.dataset_id = dataset_id;
+ this.data_cache = new Cache(CACHED_DATA);
+ this.tile_cache = new Cache(CACHED_TILES_LINE);
this.prefs = { 'min_value': undefined, 'max_value': undefined };
if (prefs.min_value !== undefined) { this.prefs.min_value = prefs.min_value; }
if (prefs.max_value !== undefined) { this.prefs.max_value = prefs.max_value; }
};
$.extend( LineTrack.prototype, TiledTrack.prototype, {
init: function() {
- this.data_queue = {};
- this.data_cache = new Cache(CACHED_DATA); // We need to cache some data because of
- // asynchronous calls
var track = this,
track_id = track.view.tracks.indexOf(track);
- track.content_div.text(DATA_LOADING);
- track.container_div.removeClass("nodata error pending");
- $.getJSON( data_url, { stats: true, indexer: track.indexer,
+ track.vertical_range = undefined;
+ this.init_each({ stats: true, indexer: track.indexer,
chrom: track.view.chrom, low: null, high: null,
- dataset_id: track.dataset_id }, function ( data ) {
- if (!data || data == "error") {
- track.container_div.addClass("error");
- track.content_div.text(DATA_ERROR);
- } else if (data.length === 0 || data == "no data") {
- track.container_div.addClass("nodata");
- track.content_div.text(DATA_NONE);
- } else if (data == "pending") {
- track.container_div.addClass("pending");
- track.content_div.text(DATA_PENDING);
- setTimeout(function() { track.init(); }, 5000);
- } else {
- track.content_div.text("");
- track.content_div.css( "height", track.height_px + "px" );
-
- if (track.prefs.min_value === undefined || track.prefs.max_value === undefined) {
- track.prefs.min_value = data.min;
- track.prefs.max_value = data.max;
-
- // Update the config
- $('#track_' + track_id + '_minval').val(track.prefs.min_value);
- $('#track_' + track_id + '_maxval').val(track.prefs.max_value);
- }
- track.vertical_range = track.prefs.max_value - track.prefs.min_value;
-
- // Draw y-axis labels if necessary
- if ( $('#linetrack_' + track_id + '_minval').length === 0) {
- var min_label = $("<div></div>").addClass('yaxislabel').attr("id", 'linetrack_' + track_id + '_minval').text(track.prefs.min_value);
- var max_label = $("<div></div>").addClass('yaxislabel').attr("id", 'linetrack_' + track_id + '_maxval').text(track.prefs.max_value);
-
- max_label.css({ position: "relative", top: "25px" });
- max_label.prependTo(track.container_div);
-
- min_label.css({ position: "relative", top: track.height_px + 55 + "px" });
- min_label.prependTo(track.container_div);
- }
-
- track.draw();
+ dataset_id: track.dataset_id }, function(data) {
+ if ( isNaN(parseFloat(track.prefs.min_value)) || isNaN(parseFloat(track.prefs.max_value)) ) {
+ track.prefs.min_value = data.min;
+ track.prefs.max_value = data.max;
+ // Update the config
+ $('#track_' + track_id + '_minval').val(track.prefs.min_value);
+ $('#track_' + track_id + '_maxval').val(track.prefs.max_value);
}
+ track.vertical_range = track.prefs.max_value - track.prefs.min_value;
+
+ // Draw y-axis labels if necessary
+ $('#linetrack_' + track_id + '_minval').remove();
+ $('#linetrack_' + track_id + '_maxval').remove();
+
+ var min_label = $("<div></div>").addClass('yaxislabel').attr("id", 'linetrack_' + track_id + '_minval').text(track.prefs.min_value);
+ var max_label = $("<div></div>").addClass('yaxislabel').attr("id", 'linetrack_' + track_id + '_maxval').text(track.prefs.max_value);
+
+ max_label.css({ position: "relative", top: "25px" });
+ max_label.prependTo(track.container_div);
+
+ min_label.css({ position: "relative", top: track.height_px + 55 + "px" });
+ min_label.prependTo(track.container_div);
});
},
get_data: function( resolution, position ) {
@@ -362,9 +373,9 @@
if (!track.data_queue[key]) {
track.data_queue[key] = true;
- $.getJSON( data_url, { indexer: this.indexer, chrom: this.view.chrom,
- low: low, high: high, dataset_id: this.dataset_id,
- resolution: this.view.resolution }, function ( data ) {
+ $.getJSON( data_url, { "indexer": this.indexer, "chrom": this.view.chrom,
+ "low": low, "high": high, "dataset_id": this.dataset_id,
+ "resolution": this.view.resolution, }, function (data) {
track.data_cache.set(key, data);
delete track.data_queue[key];
track.draw();
@@ -392,7 +403,7 @@
top: 0,
left: ( tile_low - this.view.low ) * w_scale
});
-
+
canvas.get(0).width = Math.ceil( tile_length * w_scale );
canvas.get(0).height = this.height_px;
var ctx = canvas.get(0).getContext("2d"),
@@ -462,7 +473,6 @@
var FeatureTrack = function ( name, dataset_id, indexer, prefs ) {
this.track_type = "FeatureTrack";
- this.tile_cache = new Cache(CACHED_TILES_FEATURE);
Track.call( this, name, $("#viewport") );
TiledTrack.call( this );
@@ -480,7 +490,9 @@
this.inc_slots = {};
this.data_queue = {};
this.s_e_by_tile = {};
+ this.tile_cache = new Cache(CACHED_TILES_FEATURE);
this.data_cache = new Cache(20);
+
this.prefs = { 'block_color': 'black', 'label_color': 'black' };
if (prefs.block_color !== undefined) { this.prefs.block_color = prefs.block_color; }
if (prefs.label_color !== undefined) { this.prefs.label_color = prefs.label_color; }
@@ -489,33 +501,15 @@
$.extend( FeatureTrack.prototype, TiledTrack.prototype, {
init: function() {
var track = this;
- track.content_div.text(DATA_LOADING);
- track.container_div.removeClass("nodata error pending");
- $.getJSON( data_url, { indexer: track.indexer, low: track.view.max_low,
- high: track.view.max_high, dataset_id: track.dataset_id,
- chrom: track.view.chrom }, function ( data ) {
- if (data == "error") {
- track.container_div.addClass("error");
- track.content_div.text(DATA_ERROR);
- } else if (data.length === 0 || data == "no data") {
- track.container_div.addClass("nodata");
- track.content_div.text(DATA_NONE);
- } else if (data == "pending") {
- track.container_div.adClass("pending");
- track.content_div.text(DATA_PENDING);
- setTimeout(function() { track.init(); }, 5000);
- } else {
- track.content_div.text("");
- track.content_div.css( "height", track.height_px + "px" );
- track.values = data;
- track.calc_slots();
- track.slots = track.zo_slots;
- track.draw();
- }
+ this.init_each({ indexer: track.indexer, low: track.view.max_low,
+ high: track.view.max_high, dataset_id: track.dataset_id,
+ chrom: track.view.chrom }, function (data) {
+ track.values = data;
+ track.calc_slots();
+ track.slots = track.zo_slots;
});
},
get_data: function( low, high ) {
- // console.log("getting: ", low, high);
var track = this,
key = low + '_' + high;
@@ -523,7 +517,7 @@
track.data_queue[key] = true;
$.getJSON( data_url, { indexer: track.indexer, chrom: track.view.chrom,
low: low, high: high, dataset_id: track.dataset_id,
- include_blocks: true }, function ( data ) {
+ include_blocks: true }, function (data) {
track.data_cache.set(key, data);
// console.log("datacache", track.data_cache.get(key));
delete track.data_queue[key];
diff -r 879432079138 -r 1e23f73647bb templates/tracks/browser.mako
--- a/templates/tracks/browser.mako Fri Feb 19 14:34:25 2010 -0500
+++ b/templates/tracks/browser.mako Fri Feb 19 17:54:44 2010 -0500
@@ -107,8 +107,10 @@
error: function() { alert( "Couldn't create new browser" ) },
success: function(form_html) {
show_modal("New Track Browser", form_html, {
+ "Cancel": function() { window.location = "/"; },
"Continue": continue_fn
});
+ $("#new-title").focus();
}
});
%endif
@@ -292,7 +294,7 @@
track.init();
}
}
- // view.redraw();
+ view.redraw();
});
});
@@ -301,8 +303,9 @@
var track_id = track.track_id,
label = $('<label for="track_' + track_id + 'title">' + track.name + '</label>'),
title = $('<div class="historyItemTitle"></div>'),
- del_icon = $('<a style="display:block; float:right" href="#" class="icon-button delete" />'),
- edit_icon = $('<a style="display:block; float:right" href="#" class="icon-button edit" />'),
+ icon_div = $('<div class="historyItemButtons"></div>');
+ del_icon = $('<a href="#" class="icon-button delete" />'),
+ edit_icon = $('<a href="#" class="icon-button edit" />'),
body = $('<div class="historyItemBody"></div>'),
checkbox = $('<input type="checkbox" checked="checked"></input>').attr("id", "track_" + track_id + "title"),
li = $('<li class="sortable"></li>').attr("id", "track_" + track_id),
@@ -318,8 +321,8 @@
view.remove_track(track);
view.update_options();
});
-
- title.append(label).append(del_icon).append(edit_icon);
+ icon_div.append(edit_icon).append(del_icon);
+ title.append(label).prepend(icon_div);
if (track.gen_options) {
editable.append(track.gen_options(track_id)).appendTo(body);
}
diff -r 879432079138 -r 1e23f73647bb templates/tracks/new_browser.mako
--- a/templates/tracks/new_browser.mako Fri Feb 19 14:34:25 2010 -0500
+++ b/templates/tracks/new_browser.mako Fri Feb 19 17:54:44 2010 -0500
@@ -2,7 +2,7 @@
<div class="form-row">
<label for="title">Browser name:</label>
<div class="form-row-input">
- <input type="text" name="title" id="new-title" value="Unnamed Browser"></input>
+ <input type="text" name="title" id="new-title" value="Unnamed"></input>
</div>
<div style="clear: both;"></div>
</div>
1
0
details: http://www.bx.psu.edu/hg/galaxy/rev/879432079138
changeset: 3418:879432079138
user: Nate Coraor <nate(a)bx.psu.edu>
date: Fri Feb 19 14:34:25 2010 -0500
description:
Fix MySQL_python static egg on OS X
diffstat:
eggs.ini | 2 +-
scripts/scramble/scripts/MySQL_python.py | 2 +-
2 files changed, 2 insertions(+), 2 deletions(-)
diffs (24 lines):
diff -r 68eaeb1b1d69 -r 879432079138 eggs.ini
--- a/eggs.ini Fri Feb 19 11:29:25 2010 -0500
+++ b/eggs.ini Fri Feb 19 14:34:25 2010 -0500
@@ -71,7 +71,7 @@
bx_python = http://bitbucket.org/james_taylor/bx-python/get/3b9d30e47619.bz2
Cheetah = http://pypi.python.org/packages/source/C/Cheetah/Cheetah-2.2.2.tar.gz
DRMAA_python = http://gridengine.sunsource.net/files/documents/7/36/DRMAA-python-0.2.tar.gz
-MySQL_python = http://superb-west.dl.sourceforge.net/sourceforge/mysql-python/MySQL-python… http://downloads.mysql.com/archives/mysql-5.0/mysql-5.0.67.tar.gz
+MySQL_python = http://downloads.sourceforge.net/project/mysql-python/mysql-python/1.2.2/My… http://downloads.mysql.com/archives/mysql-5.0/mysql-5.0.67.tar.gz
pbs_python = http://ftp.sara.nl/pub/outgoing/pbs_python-2.9.4.tar.gz
pexpect = http://pypi.python.org/packages/source/p/pexpect/pexpect-2.4.tar.gz
psycopg2 = http://initd.org/pub/software/psycopg/PSYCOPG-2-0/psycopg2-2.0.6.tar.gz ftp://ftp-archives.postgresql.org/pub/source/v8.2.6/postgresql-8.2.6.tar.bz2
diff -r 68eaeb1b1d69 -r 879432079138 scripts/scramble/scripts/MySQL_python.py
--- a/scripts/scramble/scripts/MySQL_python.py Fri Feb 19 11:29:25 2010 -0500
+++ b/scripts/scramble/scripts/MySQL_python.py Fri Feb 19 14:34:25 2010 -0500
@@ -80,7 +80,7 @@
CONFIGURE += "CXXFLAGS='-O -g -isysroot /Developer/SDKs/MacOSX10.4u.sdk -arch i386 -arch ppc' "
CONFIGURE += "LDFLAGS='-arch i386 -arch ppc' "
CONFIGURE += "LD='gcc -mmacosx-version-min=10.4 -isysroot /Developer/SDKs/MacOSX10.4u.sdk -nostartfiles -arch i386 -arch ppc' "
- CONFIGURE += "./configure --prefix=%s/mysql --disable-dependency-tracking --without-server --without-uca --without-libwrap " %os.getcwd()
+ CONFIGURE += "./configure --prefix=%s/mysql --disable-dependency-tracking --disable-shared --without-server --without-uca --without-libwrap " %os.getcwd()
CONFIGURE += "--without-extra-tools --without-openssl --without-yassl --without-docs --without-man --without-bench --enable-thread-safe-client"
else:
CONFIGURE = "CFLAGS='-fPIC' ./configure --prefix=%s/mysql --disable-shared --without-server --without-uca --without-libwrap " %os.getcwd()
1
0
24 Feb '10
details: http://www.bx.psu.edu/hg/galaxy/rev/68eaeb1b1d69
changeset: 3417:68eaeb1b1d69
user: jeremy goecks <jeremy.goecks(a)emory.edu>
date: Fri Feb 19 11:29:25 2010 -0500
description:
Fix bug so that, when a user submits edits to a page's attributes, he is redicted to his page list.
diffstat:
lib/galaxy/web/controllers/page.py | 4 ++--
1 files changed, 2 insertions(+), 2 deletions(-)
diffs (14 lines):
diff -r d995557d383b -r 68eaeb1b1d69 lib/galaxy/web/controllers/page.py
--- a/lib/galaxy/web/controllers/page.py Fri Feb 19 10:01:33 2010 -0500
+++ b/lib/galaxy/web/controllers/page.py Fri Feb 19 11:29:25 2010 -0500
@@ -409,8 +409,8 @@
page.title = page_title
page.slug = page_slug
session.flush()
- # Display the management page
- return trans.response.send_redirect( web.url_for( action='index' ) )
+ # Redirect to page list.
+ return trans.response.send_redirect( web.url_for( action='list' ) )
else:
page_title = page.title
page_slug = page.slug
1
0