<string>Handle argument type checking -- throw errors for bad types -- handle problem with providing arguments to flag causing problems everywhere</string>
<string>Improve performance of BAM reader, BinaryCodec is slow</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>12</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>73</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.907362</string>
<key>g</key>
<string>0.615564</string>
<key>r</key>
<string>0.437675</string>
</dict>
</dict>
<key>task</key>
<string>ROD writer -- in particular GFF for allele caller</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>13</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.898039</string>
<key>g</key>
<string>0.792157</string>
<key>r</key>
<string>0.219608</string>
</dict>
</dict>
<key>task</key>
<string>Provide external access to TraversalEngine data structures so that we can write algorithms that use reads, reference, rods outside of the walker system but using the AnalysisTK interface and loading routines.</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>15</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>12</integer>
<key>kind</key>
<integer>2</integer>
</dict>
<dict>
<key>id</key>
<integer>26</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.907362</string>
<key>g</key>
<string>0.615564</string>
<key>r</key>
<string>0.437675</string>
</dict>
</dict>
<key>task</key>
<string>On disk sorting of RODs -- see reading all data in memory in PrepareROD</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>16</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.898039</string>
<key>g</key>
<string>0.792157</string>
<key>r</key>
<string>0.219608</string>
</dict>
</dict>
<key>task</key>
<string>Enable window size in traversal -- N bases for loci, for example</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>86400</real>
<key>objectId</key>
<integer>17</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.898039</string>
<key>g</key>
<string>0.792157</string>
<key>r</key>
<string>0.219608</string>
</dict>
</dict>
<key>task</key>
<string>ByPair traversal -- ordered and unordered</string>
<string>Interfacing Java and Python -- how? Want to write walkers in python for rapid prototyping</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>40</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.101961</string>
<key>g</key>
<string>0.101961</string>
<key>r</key>
<string>0.101961</string>
</dict>
</dict>
<key>task</key>
<string>Support for communal directory and naming system for reference ordered data -- I don't want to always have to provide command line flag for DBSNP when a walker needs it. How do we we this?</string>
<string>Need a better way to dynamically tell the class of a walker instead of trying to cast it and catching the exception</string>
<key>workDone</key>
<real>8</real>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>44</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.101961</string>
<key>g</key>
<string>0.101961</string>
<key>r</key>
<string>0.101961</string>
</dict>
</dict>
<key>task</key>
<string>Optimize GenomeLoc so that comparison operations are cheaper. Right now we use contig strings (painful) and really should automatically index / intern the strings upon creation for fast comparisons. Maybe build fast lookup system with regex?</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>children</key>
<array>
<integer>58</integer>
<integer>59</integer>
</array>
<key>isExpanded</key>
<false/>
<key>objectId</key>
<integer>45</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.101961</string>
<key>g</key>
<string>0.101961</string>
<key>r</key>
<string>0.101961</string>
</dict>
</dict>
<key>task</key>
<string>Faster loading of fasta file</string>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>46</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.101961</string>
<key>g</key>
<string>0.101961</string>
<key>r</key>
<string>0.101961</string>
</dict>
</dict>
<key>task</key>
<string>Fix: NullPointerException at sting.utils.Utils.setupRefContigOrdering. When I leave out the reference, I get a SAMFormatException (I think because it defaults to expecting paired reads)</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>47</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.101961</string>
<key>g</key>
<string>0.101961</string>
<key>r</key>
<string>0.101961</string>
</dict>
</dict>
<key>task</key>
<string>Time per read base in performance output</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>49</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>17</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.898039</string>
<key>g</key>
<string>0.792157</string>
<key>r</key>
<string>0.219608</string>
</dict>
</dict>
<key>task</key>
<string>Spanning pairs traversal</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>children</key>
<array>
<integer>41</integer>
<integer>36</integer>
</array>
<key>objectId</key>
<integer>50</integer>
<key>style</key>
<dict>
<key>font-size</key>
<real>12</real>
<key>gantt-fill-color</key>
<dict>
<key>b</key>
<string>0.101961</string>
<key>g</key>
<string>0.101961</string>
<key>r</key>
<string>0.101961</string>
</dict>
</dict>
<key>task</key>
<string>Proposed features</string>
</dict>
<dict>
<key>assignments</key>
<array>
<dict>
<key>id</key>
<integer>3</integer>
<key>units</key>
<real>1</real>
</dict>
</array>
<key>doneSeconds</key>
<real>28800</real>
<key>effort</key>
<real>28800</real>
<key>effortDone</key>
<real>28800</real>
<key>objectId</key>
<integer>52</integer>
<key>task</key>
<string>Choose replacement</string>
<key>workDone</key>
<real>8</real>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>assignments</key>
<array>
<dict>
<key>id</key>
<integer>3</integer>
<key>units</key>
<real>1</real>
</dict>
</array>
<key>doneSeconds</key>
<real>28800</real>
<key>effort</key>
<real>28800</real>
<key>effortDone</key>
<real>28800</real>
<key>objectId</key>
<integer>53</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>52</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>task</key>
<string>Add replacement code to project</string>
<key>workDone</key>
<real>8</real>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>assignments</key>
<array>
<dict>
<key>id</key>
<integer>2</integer>
<key>units</key>
<real>1</real>
</dict>
</array>
<key>doneSeconds</key>
<real>86400</real>
<key>effort</key>
<real>86400</real>
<key>effortDone</key>
<real>86400</real>
<key>forcedStart</key>
<string>20090324080000</string>
<key>objectId</key>
<integer>54</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>53</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>task</key>
<string>Extend walkers to support extra arguments</string>
<string>Enable fast jumping to offset in fasta file by calculating minimum offset for next contig from dictionary</string>
<key>workDone</key>
<real>5.3333334922790527</real>
<key>workSeconds</key>
<real>19200</real>
<key>workTime</key>
<real>5.3333334922790527</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>61</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>15</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>task</key>
<string>Revised preprocessing algorithm for ROD incorporating new indexing and sorting systems</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>children</key>
<array>
<integer>70</integer>
<integer>64</integer>
<integer>65</integer>
<integer>68</integer>
</array>
<key>objectId</key>
<integer>63</integer>
<key>task</key>
<string>Quality assurance and stress testing</string>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>64</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>70</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>task</key>
<string>Expand simple python script to handle more detailed list of BAM files to process, along with additional commands to execute the data on</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>65</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>64</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>task</key>
<string>Continue integration of stress test requests into a unified list</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>68</integer>
<key>prerequisites</key>
<array>
<dict>
<key>id</key>
<integer>65</integer>
<key>kind</key>
<integer>2</integer>
</dict>
</array>
<key>task</key>
<string>Enable tracking of results in GATK -- needs a stress test mode that will email if something fails</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>assignments</key>
<array>
<dict>
<key>id</key>
<integer>11</integer>
<key>units</key>
<real>0.75</real>
</dict>
</array>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>70</integer>
<key>task</key>
<string>Develop preliminary stress test system -- enable weekly testing of many files in common (CountReads, Pileup, etc.) to ensure the system can process files</string>
<string>Revise the reference metadata system, really think about the organization from scratch. A key issue will be dynamic loading of RMD, we need a mime like system and ways of registering handlers</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>3600</real>
<key>objectId</key>
<integer>74</integer>
<key>task</key>
<string>Rename to reference metadata, not ROD</string>
<key>workSeconds</key>
<real>3600</real>
<key>workTime</key>
<real>1</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>78</integer>
<key>task</key>
<string>Add support for "and onward" argument to location, so we can say "chr1:1+" will start from chr1 and continue onward for the rest of the file</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>assignments</key>
<array>
<dict>
<key>id</key>
<integer>2</integer>
<key>units</key>
<real>1</real>
</dict>
</array>
<key>effort</key>
<real>3600</real>
<key>objectId</key>
<integer>79</integer>
<key>task</key>
<string>Move interval interface into Picard</string>
<key>workSeconds</key>
<real>3600</real>
<key>workTime</key>
<real>1</real>
</dict>
<dict>
<key>assignments</key>
<array>
<dict>
<key>id</key>
<integer>7</integer>
<key>units</key>
<real>0.25</real>
</dict>
</array>
<key>effort</key>
<real>7200</real>
<key>objectId</key>
<integer>80</integer>
<key>task</key>
<string>Utilize Picard interval and expand functionality if at all possible</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>83</integer>
<key>task</key>
<string>The file progress meter is stupidly broken on lane /seq/dirseq/aphilipp/combo/sequences/pcr/samfiles/9701.7.clean.sam in CountReads mode</string>
<string>Develop sound, common core of RMD types, unify work of kris, andrew, etc. on affy type. Look into what tim has done.</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>94</integer>
<key>task</key>
<string>Upgrade interval traversals. Allow nested / overlapping, etc. intervals, along with map getting info on our interval (pass in genomeLoc) and reduce receiving all of the map results over that interval. Handle RODs and Reference appropriately.</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>95</integer>
<key>task</key>
<string>itertools for java</string>
<key>workSeconds</key>
<real>28800</real>
<key>workTime</key>
<real>8</real>
</dict>
<dict>
<key>effort</key>
<real>28800</real>
<key>objectId</key>
<integer>96</integer>
<key>task</key>
<string>Generalize file line reading (readlines and xreadlines) and use it for parsing locations, etc</string>