 template <typename system_tag, typename string_set_type>
 InfixSet<string_set_type, const string_set_infix_coord_type*>
 extract_seeds(
-    const string_set_type                                   string_set,
-    const uint32                                            seed_len,
-    const uint32                                            seed_interval,
-    nvbio::vector<system_tag,string_set_infix_coord_type>&  seed_coords)
+    const string_set_type                                   string_set,         // the input string-set
+    const uint32                                            seed_len,           // the seeds length
+    const uint32                                            seed_interval,      // the spacing between seeds
+    nvbio::vector<system_tag,string_set_infix_coord_type>&  seed_coords)        // the output vector of seed coordinates
 {
     // enumerate all seeds
     const uint32 n_seeds = enumerate_string_set_seeds(

//
int main(int argc, char* argv[])
{
    uint32 n_bps = 10000000;
    char*  reads = "./data/SRR493095_1.fastq.gz";


            reads = argv[++i];
    }

    // start our program
    log_info(stderr, "seeding... started\n");

    // open a read file
    log_info(stderr, "  loading reads... started\n");

    SharedPointer<io::ReadDataStream> read_data_file(
        io::open_read_file(
            reads,
            io::Phred33,
            uint32(-1),
            uint32(-1) ) );

    // check whether the file opened correctly
    if (read_data_file == NULL || read_data_file->is_ok() == false)
    {
        log_error(stderr, "    failed opening file \"%s\"\n", reads);
