]> git.ozlabs.org Git - ccan/commitdiff
timer: change to use time_mono (api break!)
authorRusty Russell <rusty@rustcorp.com.au>
Mon, 31 Oct 2016 00:45:33 +0000 (11:15 +1030)
committerRusty Russell <rusty@rustcorp.com.au>
Mon, 31 Oct 2016 00:47:00 +0000 (11:17 +1030)
Remove timer_add() in favor of explicit timer_addrel and timer_addmono.

Someone hit a real-life case where time went backwards, and we asserted.
The correct fix is to use time_mono() where available, but as all known
users actually want a relative timeout, have a helper for that case.

Signed-off-by: Rusty Russell <rusty@rustcorp.com.au>
ccan/timer/_info
ccan/timer/test/run-add.c
ccan/timer/test/run-corrupt.c
ccan/timer/test/run-corrupt2.c
ccan/timer/test/run-expiry.c
ccan/timer/test/run-ff.c
ccan/timer/test/run-original-corrupt.c
ccan/timer/test/run.c
ccan/timer/timer.c
ccan/timer/timer.h

index 420aba1145ad46372d6a34172c5a837d32800a2b..c3a01e301e8328cb985042ede9e758ba430672ed 100644 (file)
  *             struct timer *t;
  *             struct timed_string *s;
  *
  *             struct timer *t;
  *             struct timed_string *s;
  *
- *             timers_init(&timers, time_now());
+ *             timers_init(&timers, time_mono());
  *             list_head_init(&strings);
  *
  *             while (argv[1]) {
  *                     s = malloc(sizeof(*s));
  *                     s->string = argv[1];
  *             list_head_init(&strings);
  *
  *             while (argv[1]) {
  *                     s = malloc(sizeof(*s));
  *                     s->string = argv[1];
- *                     timer_add(&timers, &s->timer,
- *                               timeabs_add(time_now(),
- *                                           time_from_msec(atol(argv[2]))));
+ *                     timer_addrel(&timers, &s->timer,
+ *                                  time_from_msec(atol(argv[2])));
  *                     list_add_tail(&strings, &s->node);
  *                     argv += 2;
  *             }
  *
  *             while (!list_empty(&strings)) {
  *                     list_add_tail(&strings, &s->node);
  *                     argv += 2;
  *             }
  *
  *             while (!list_empty(&strings)) {
- *                     struct timeabs now = time_now();
+ *                     struct timemono now = time_mono();
  *                     list_for_each(&strings, s, node)
  *                             printf("%s", s->string);
  *                     while ((t = timers_expire(&timers, now)) != NULL) {
  *                     list_for_each(&strings, s, node)
  *                             printf("%s", s->string);
  *                     while ((t = timers_expire(&timers, now)) != NULL) {
index e97bf781ddcc82e644d82165b9d7d373deee351c..9ad44b7e347608f9040310a40292271669b76a80 100644 (file)
@@ -20,7 +20,7 @@ int main(void)
        struct timer t;
        uint64_t diff;
        unsigned int i;
        struct timer t;
        uint64_t diff;
        unsigned int i;
-       struct timeabs epoch = { { 0, 0 } };
+       struct timemono epoch = { { 0, 0 } };
 
        /* This is how many tests you plan to run */
        plan_tests(2 + (18 + (MAX_ORD - 4) * 3) * (18 + (MAX_ORD - 4) * 3));
 
        /* This is how many tests you plan to run */
        plan_tests(2 + (18 + (MAX_ORD - 4) * 3) * (18 + (MAX_ORD - 4) * 3));
@@ -38,7 +38,7 @@ int main(void)
                for (timers.base = 0;
                     timers.base < (1ULL << MAX_ORD)+2;
                     timers.base = next(timers.base)) {
                for (timers.base = 0;
                     timers.base < (1ULL << MAX_ORD)+2;
                     timers.base = next(timers.base)) {
-                       timer_add(&timers, &t, grains_to_time(timers.base + diff));
+                       timer_addmono(&timers, &t, grains_to_time(timers.base + diff));
                        ok1(timers_check(&timers, NULL));
                        timer_del(&timers, &t);
                }
                        ok1(timers_check(&timers, NULL));
                        timer_del(&timers, &t);
                }
index ee9660481ea92655618f30eeb7f0b7fd6328e6d5..4b78735c3f3a6ab5ef2a2013d31a8a959c729238 100644 (file)
@@ -7,17 +7,17 @@
 static void new_timer(struct timers *timers, unsigned long nsec)
 {
        struct timer *timer;
 static void new_timer(struct timers *timers, unsigned long nsec)
 {
        struct timer *timer;
-       struct timeabs when;
+       struct timemono when;
 
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = nsec;
 
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = nsec;
-       timer_add(timers, timer, when);
+       timer_addmono(timers, timer, when);
 }
 
 static void update_and_expire(struct timers *timers)
 {
 }
 
 static void update_and_expire(struct timers *timers)
 {
-       struct timeabs when;
+       struct timemono when;
 
        timer_earliest(timers, &when);
        free(timers_expire(timers, when));
 
        timer_earliest(timers, &when);
        free(timers_expire(timers, when));
@@ -25,7 +25,7 @@ static void update_and_expire(struct timers *timers)
 
 int main(int argc, char *argv[])
 {
 
 int main(int argc, char *argv[])
 {
-       struct timeabs when;
+       struct timemono when;
        struct timers timers;
 
        plan_tests(7);
        struct timers timers;
 
        plan_tests(7);
index c2f32976165f456fe665b41be4ecbc47116ca4df..8fcc2f8254101b2b868ff9a1dfa3836bbfe46f4d 100644 (file)
@@ -7,7 +7,7 @@
 /* This is the original pre-cut-down dump. */
 int main(int argc, char *argv[])
 {
 /* This is the original pre-cut-down dump. */
 int main(int argc, char *argv[])
 {
-       struct timeabs when;
+       struct timemono when;
        struct timers timers;
        struct timer *timer;
 
        struct timers timers;
        struct timer *timer;
 
@@ -19,1611 +19,1611 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 18000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 18000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 158000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 158000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 12000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 12000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 13000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 13000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 161000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 161000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 25000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 25000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 71000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 71000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 33000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 33000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 188000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 188000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 61000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 61000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 90000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 90000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 22000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 22000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 20000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 20000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 30000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 30000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 176000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 176000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 94000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 94000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 16000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 16000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 17000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 17000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 32000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 32000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 161000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 161000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 31000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 31000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 64000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 64000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 12000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 12000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 31000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 31000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 22000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 22000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 17000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 17000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 115000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 115000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 54000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 54000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 32000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 32000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 45000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 45000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 65000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 65000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 71000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 71000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 61000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 61000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 78000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 78000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 16000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 16000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 191000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 191000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 75000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 75000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 21000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 21000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 73000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 73000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 45000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 45000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -1631,553 +1631,553 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 79000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 79000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 188000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 188000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 30000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 30000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 25000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 25000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 79000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 79000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 94000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 94000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 105000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 105000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 65000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 65000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 229000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 229000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 211000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 211000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 76000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 76000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2185,165 +2185,165 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 75000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 75000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 218000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 218000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2351,225 +2351,225 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 176000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 176000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 211000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 211000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 62000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 62000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 86000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 86000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 74000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 74000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 234000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 234000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2577,37 +2577,37 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 191000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 191000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2615,41 +2615,41 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2659,71 +2659,71 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 239000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 239000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2731,25 +2731,25 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2761,115 +2761,115 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 105000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 105000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2877,73 +2877,73 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 78000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 78000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 247000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 247000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -2951,49 +2951,49 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3003,35 +3003,35 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3039,19 +3039,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3059,33 +3059,33 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3093,11 +3093,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3105,53 +3105,53 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3159,15 +3159,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3177,15 +3177,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3195,31 +3195,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 258000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 258000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3227,63 +3227,63 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 74000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 74000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3293,7 +3293,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3301,79 +3301,79 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 266000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 266000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 262000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 262000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 228000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 228000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3383,7 +3383,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 229000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 229000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3401,15 +3401,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3423,99 +3423,99 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 116000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 116000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 265000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 265000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 115000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 115000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3523,31 +3523,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3557,15 +3557,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3573,15 +3573,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3591,23 +3591,23 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3621,27 +3621,27 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3653,39 +3653,39 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3695,17 +3695,17 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3727,21 +3727,21 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 274000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 274000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3755,11 +3755,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3767,23 +3767,23 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3791,57 +3791,57 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3855,51 +3855,51 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 292000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 292000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3907,41 +3907,41 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3957,7 +3957,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3965,27 +3965,27 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -3995,85 +3995,85 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 141000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 141000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 286000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 286000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 288000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 288000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 286000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 286000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 253000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 253000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4081,61 +4081,61 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4149,21 +4149,21 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4175,15 +4175,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4191,31 +4191,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4231,21 +4231,21 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 299000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 299000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 275000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 275000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4255,19 +4255,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 274000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 274000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4275,15 +4275,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 276000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 276000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4299,7 +4299,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4307,11 +4307,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 279000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 279000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4321,49 +4321,49 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 274000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 274000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 158000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 158000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 304000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 304000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4371,69 +4371,69 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 294000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 294000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 278000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 278000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 302000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 302000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 276000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 276000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 251000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 251000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 307000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 307000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 299000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 299000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4441,11 +4441,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 141000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 141000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4453,11 +4453,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4467,7 +4467,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4477,25 +4477,25 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 281000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 281000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4517,37 +4517,37 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 284000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 284000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 270000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 270000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 237000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 237000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4555,7 +4555,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4563,17 +4563,17 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 265000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 265000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 158000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 158000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4581,11 +4581,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4595,45 +4595,45 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 117000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 117000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 254000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 254000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 289000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 289000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4643,33 +4643,33 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 312000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 312000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 246000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 246000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 273000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 273000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4677,11 +4677,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4689,19 +4689,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4719,15 +4719,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 309000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 309000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 272000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 272000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4735,11 +4735,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 317000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 317000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4767,31 +4767,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 228000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 228000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 262000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 262000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 258000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 258000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 291000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 291000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 297000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 297000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 261000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 261000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 305000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 305000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4815,33 +4815,33 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4867,19 +4867,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 265000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 265000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 289000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 289000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 261000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 261000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4893,57 +4893,57 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 292000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 292000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 251000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 251000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 279000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 279000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 294000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 294000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 315000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 315000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4967,19 +4967,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 322000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 322000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 278000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 278000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -4995,11 +4995,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5011,37 +5011,37 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 263000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 263000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 293000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 293000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 251000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 251000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 263000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 263000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 260000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 260000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5053,11 +5053,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 276000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 276000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5071,7 +5071,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 315000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 315000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5079,29 +5079,29 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 302000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 302000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 321000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 321000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5125,19 +5125,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 324000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 324000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 330000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 330000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5155,31 +5155,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 236000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 236000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 290000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 290000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 236000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 236000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5195,15 +5195,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 318000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 318000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5213,35 +5213,35 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 282000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 282000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 318000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 318000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 306000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 306000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5255,31 +5255,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 338000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 338000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 289000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 289000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 288000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 288000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 253000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 253000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5291,7 +5291,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 300000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 300000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5315,11 +5315,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5329,7 +5329,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5337,19 +5337,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 340000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 340000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 275000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 275000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5357,37 +5357,37 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 294000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 294000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 297000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 297000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 278000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 278000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5401,25 +5401,25 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 269000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 269000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 328000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 328000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 342000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 342000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5429,27 +5429,27 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 308000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 308000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 260000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 260000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 305000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 305000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 326000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 326000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5459,31 +5459,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 330000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 330000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 243000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 243000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 275000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 275000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5493,17 +5493,17 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5525,11 +5525,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5541,15 +5541,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 263000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 263000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 334000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 334000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 324000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 324000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5565,7 +5565,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 315000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 315000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5609,27 +5609,27 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 340000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 340000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 284000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 284000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 246000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 246000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5639,23 +5639,23 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 323000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 323000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 306000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 306000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 320000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 320000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 269000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 269000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5673,27 +5673,27 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 351000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 351000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 332000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 332000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5703,43 +5703,43 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 218000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 218000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 342000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 342000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 319000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 319000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 353000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 353000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5749,11 +5749,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 332000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 332000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5769,19 +5769,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 340000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 340000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 302000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 302000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 298000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 298000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 278000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 278000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5789,15 +5789,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 324000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 324000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5807,19 +5807,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 353000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 353000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 258000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 258000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 293000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 293000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 305000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 305000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5867,15 +5867,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 272000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 272000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5883,73 +5883,73 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 298000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 298000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 360000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 360000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 349000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 349000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 261000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 261000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 289000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 289000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 347000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 347000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5959,29 +5959,29 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 281000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 281000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 327000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 327000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 309000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 309000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 353000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 353000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -5997,23 +5997,23 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 347000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 347000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 326000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 326000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 254000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 254000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -6021,7 +6021,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 246000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 246000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -6031,17 +6031,17 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 308000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 308000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 260000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 260000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -6065,19 +6065,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 293000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 293000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 304000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 304000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -6107,33 +6107,33 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 334000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 334000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 314000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 314000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 368000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 368000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 335000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 335000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -6141,7 +6141,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 272000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 272000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        free(timers_expire(&timers, when)); timers_check(&timers, "expire");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
@@ -6153,23 +6153,23 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 288000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 288000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 260000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 260000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 305000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 305000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        when.ts.tv_sec = 0; when.ts.tv_nsec = 263000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 263000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when); timers_check(&timers, "add");
+       timer_addmono(&timers, timer, when); timers_check(&timers, "add");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
 
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
        timer_earliest(&timers, &when); timers_check(&timers, "earliest");
 
index 1c276c2c9016332d1101343f815980bae9d177d2..39b5b5eafd5b00d06cc81bca395b46853fa64cd0 100644 (file)
@@ -14,7 +14,7 @@ int main(void)
        timers_init(&timers, grains_to_time(1364984760903400ULL));
        ok1(timers.base == 1364984760903400ULL);
        timer_init(&t);
        timers_init(&timers, grains_to_time(1364984760903400ULL));
        ok1(timers.base == 1364984760903400ULL);
        timer_init(&t);
-       timer_add(&timers, &t, grains_to_time(1364984761003398ULL));
+       timer_addmono(&timers, &t, grains_to_time(1364984761003398ULL));
        ok1(t.time == 1364984761003398ULL);
        ok1(timers.first == 1364984761003398ULL);
        ok1(!timers_expire(&timers, grains_to_time(1364984760903444ULL)));
        ok1(t.time == 1364984761003398ULL);
        ok1(timers.first == 1364984761003398ULL);
        ok1(!timers_expire(&timers, grains_to_time(1364984760903444ULL)));
index 49c6e3744c1e3e9991e9fea9db09f5ac2f3decdd..37f035da4ba167c2cd6cd9bc696877b889784ab1 100644 (file)
@@ -3,10 +3,10 @@
 #include <ccan/timer/timer.c>
 #include <ccan/tap/tap.h>
 
 #include <ccan/timer/timer.c>
 #include <ccan/tap/tap.h>
 
-static struct timeabs timeabs_from_usec(unsigned long long usec)
+static struct timemono timemono_from_usec(unsigned long long usec)
 {
 {
-       struct timeabs epoch = { { 0, 0 } };
-       return timeabs_add(epoch, time_from_usec(usec));
+       struct timemono epoch = { { 0, 0 } };
+       return timemono_add(epoch, time_from_usec(usec));
 }
 
 int main(void)
 }
 
 int main(void)
@@ -17,13 +17,13 @@ int main(void)
        /* This is how many tests you plan to run */
        plan_tests(3);
 
        /* This is how many tests you plan to run */
        plan_tests(3);
 
-       timers_init(&timers, timeabs_from_usec(1364726722653919ULL));
+       timers_init(&timers, timemono_from_usec(1364726722653919ULL));
        timer_init(&t);
        timer_init(&t);
-       timer_add(&timers, &t, timeabs_from_usec(1364726722703919ULL));
-       ok1(!timers_expire(&timers, timeabs_from_usec(1364726722653920ULL)));
-       expired = timers_expire(&timers, timeabs_from_usec(1364726725454187ULL));
+       timer_addmono(&timers, &t, timemono_from_usec(1364726722703919ULL));
+       ok1(!timers_expire(&timers, timemono_from_usec(1364726722653920ULL)));
+       expired = timers_expire(&timers, timemono_from_usec(1364726725454187ULL));
        ok1(expired == &t);
        ok1(expired == &t);
-       ok1(!timers_expire(&timers, timeabs_from_usec(1364726725454187ULL)));
+       ok1(!timers_expire(&timers, timemono_from_usec(1364726725454187ULL)));
        timers_cleanup(&timers);
 
        /* This exits depending on whether all tests passed */
        timers_cleanup(&timers);
 
        /* This exits depending on whether all tests passed */
index 8bd2b428f38c27543bf295dab564236aa04b1138..c0d91b83d92ec3a2ddc4e37632ba094da15a1c7e 100644 (file)
@@ -7,7 +7,7 @@
 /* This is the original pre-cut-down dump. */
 int main(int argc, char *argv[])
 {
 /* This is the original pre-cut-down dump. */
 int main(int argc, char *argv[])
 {
-       struct timeabs when;
+       struct timemono when;
        struct timers timers;
        struct timer *timer;
 
        struct timers timers;
        struct timer *timer;
 
@@ -19,1611 +19,1611 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 18000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 18000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 158000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 158000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 12000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 12000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 13000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 13000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 161000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 161000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 25000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 25000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 39000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 71000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 71000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 33000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 33000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 188000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 188000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 61000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 61000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 90000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 90000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 22000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 22000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 20000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 20000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 30000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 30000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 176000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 176000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 94000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 94000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 16000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 16000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 17000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 17000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 179000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 32000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 32000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 161000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 161000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 31000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 31000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 64000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 64000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 12000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 12000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 149000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 31000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 31000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 22000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 22000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 17000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 17000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 67000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 115000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 115000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 54000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 54000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 32000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 32000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 84000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 24000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 187000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 45000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 45000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 163000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 28000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 27000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 65000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 65000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 71000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 71000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 61000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 61000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 15000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 78000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 78000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 16000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 16000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 36000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 191000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 191000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 75000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 75000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 46000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 21000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 21000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 37000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 73000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 73000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 40000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 124000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 45000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 45000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 14000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 72000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 58000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -1631,553 +1631,553 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 43000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 79000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 79000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 188000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 188000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 42000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 30000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 30000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 133000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 201000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 41000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 25000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 25000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 204000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 79000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 79000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 94000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 94000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 50000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 105000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 105000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 44000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 35000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 152000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 65000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 65000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 47000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 38000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 156000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 140000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 49000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 229000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 229000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 211000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 211000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 57000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 129000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 76000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 76000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2185,165 +2185,165 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 56000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 59000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 63000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 53000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 75000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 75000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 151000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 52000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 218000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 218000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2351,225 +2351,225 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 176000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 176000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 211000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 211000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 62000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 62000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 86000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 86000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 51000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 74000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 74000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 200000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 125000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 93000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 48000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 60000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 175000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 88000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 234000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 234000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2577,37 +2577,37 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 191000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 191000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2615,41 +2615,41 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 66000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 157000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2659,71 +2659,71 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 142000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 80000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 123000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 239000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 239000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 108000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 242000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2731,25 +2731,25 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 164000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2761,115 +2761,115 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 68000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 92000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 105000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 105000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 70000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2877,73 +2877,73 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 170000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 182000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 209000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 78000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 78000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 247000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 247000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -2951,49 +2951,49 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 206000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 153000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 171000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 91000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3003,35 +3003,35 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 82000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 145000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3039,19 +3039,19 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3059,33 +3059,33 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 221000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3093,11 +3093,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 136000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3105,53 +3105,53 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 238000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 81000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3159,15 +3159,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 205000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3177,15 +3177,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 138000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3195,31 +3195,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 132000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 77000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 258000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 258000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3227,63 +3227,63 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 69000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 241000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 74000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 74000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 185000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 83000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 240000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3293,7 +3293,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3301,79 +3301,79 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 194000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 266000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 266000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 87000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 195000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 262000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 262000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 217000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 228000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 228000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 167000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3383,7 +3383,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 229000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 229000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3401,15 +3401,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 97000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 192000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3423,99 +3423,99 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 116000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 116000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 85000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 155000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 202000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 265000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 265000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 216000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 184000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 107000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 89000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 115000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 115000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3523,31 +3523,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 147000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 98000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 106000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 148000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 257000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3557,15 +3557,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 173000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 177000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 102000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3573,15 +3573,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 166000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3591,23 +3591,23 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 189000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 252000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3621,27 +3621,27 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 110000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 113000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 159000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 174000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3653,39 +3653,39 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 130000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 232000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 224000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 168000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3695,17 +3695,17 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 197000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 231000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3727,21 +3727,21 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 274000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 274000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 169000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 99000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 122000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3755,11 +3755,11 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 223000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3767,23 +3767,23 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 213000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 178000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 264000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 134000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 210000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3791,57 +3791,57 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 245000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 135000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 215000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 230000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 150000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 154000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 109000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 244000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 203000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 160000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 196000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 95000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3855,51 +3855,51 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 226000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 292000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 292000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 112000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 128000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 162000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 143000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 180000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3907,41 +3907,41 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 96000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 131000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 256000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 183000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 104000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 100000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3957,7 +3957,7 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3965,27 +3965,27 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 127000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 101000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 114000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 190000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 119000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -3995,85 +3995,85 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 220000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 103000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 141000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 141000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 227000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 277000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 146000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 144000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 286000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 286000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 198000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 250000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 288000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 288000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 286000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 286000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 253000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 253000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -4081,61 +4081,61 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 249000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 137000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 207000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 208000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 193000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 118000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 165000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 222000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 121000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 181000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 267000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 295000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 255000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -4149,21 +4149,21 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 225000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 139000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 235000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 186000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -4175,15 +4175,15 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 219000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 214000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 233000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -4191,31 +4191,31 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 120000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 212000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 268000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 259000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 111000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 172000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 248000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        timer_earliest(&timers, &when);
@@ -4231,21 +4231,21 @@ int main(int argc, char *argv[])
        when.ts.tv_sec = 0; when.ts.tv_nsec = 299000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 299000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        when.ts.tv_sec = 0; when.ts.tv_nsec = 126000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 275000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 275000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
        when.ts.tv_sec = 0; when.ts.tv_nsec = 199000000;
        timer = malloc(sizeof(*timer));
        timer_init(timer);
-       timer_add(&timers, timer, when);
+       timer_addmono(&timers, timer, when);
        ok1(timers_check(&timers, NULL));
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
        ok1(timers_check(&timers, NULL));
        timer_earliest(&timers, &when);
        free(timers_expire(&timers, when));
index e2d467eb0ebdb4a662c732f277a6c948f69403b8..ca0435e3015bab0933c60a29dea3a326901dbc27 100644 (file)
@@ -1,25 +1,31 @@
 #define CCAN_TIMER_DEBUG
 #include <ccan/timer/timer.h>
 #define CCAN_TIMER_DEBUG
 #include <ccan/timer/timer.h>
+#include <ccan/time/time.h>
+
+#define time_mono() fake_mono_time
+
+static struct timemono fake_mono_time;
+
 /* Include the C files directly. */
 #include <ccan/timer/timer.c>
 #include <ccan/tap/tap.h>
 
 /* Include the C files directly. */
 #include <ccan/timer/timer.c>
 #include <ccan/tap/tap.h>
 
-static struct timeabs timeabs_from_nsec(unsigned long long nsec)
+static struct timemono timemono_from_nsec(unsigned long long nsec)
 {
 {
-       struct timeabs epoch = { { 0, 0 } };
-       return timeabs_add(epoch, time_from_nsec(nsec));
+       struct timemono epoch = { { 0, 0 } };
+       return timemono_add(epoch, time_from_nsec(nsec));
 }
 
 int main(void)
 {
        struct timers timers;
        struct timer t[64];
 }
 
 int main(void)
 {
        struct timers timers;
        struct timer t[64];
-       struct timeabs earliest;
+       struct timemono earliest;
        uint64_t i;
        uint64_t i;
-       struct timeabs epoch = { { 0, 0 } };
+       const struct timemono epoch = { { 0, 0 } };
 
        /* This is how many tests you plan to run */
 
        /* This is how many tests you plan to run */
-       plan_tests(488);
+       plan_tests(495);
 
        timers_init(&timers, epoch);
        ok1(timers_check(&timers, NULL));
 
        timers_init(&timers, epoch);
        ok1(timers_check(&timers, NULL));
@@ -29,10 +35,10 @@ int main(void)
        /* timer_del can be called immediately after init. */
        timer_del(&timers, &t[0]);
 
        /* timer_del can be called immediately after init. */
        timer_del(&timers, &t[0]);
 
-       timer_add(&timers, &t[0], timeabs_from_nsec(1));
+       timer_addmono(&timers, &t[0], timemono_from_nsec(1));
        ok1(timers_check(&timers, NULL));
        ok1(timer_earliest(&timers, &earliest));
        ok1(timers_check(&timers, NULL));
        ok1(timer_earliest(&timers, &earliest));
-       ok1(timeabs_eq(earliest, grains_to_time(t[0].time)));
+       ok1(timemono_eq(earliest, grains_to_time(t[0].time)));
        timer_del(&timers, &t[0]);
        ok1(timers_check(&timers, NULL));
        ok1(!timer_earliest(&timers, &earliest));
        timer_del(&timers, &t[0]);
        ok1(timers_check(&timers, NULL));
        ok1(!timer_earliest(&timers, &earliest));
@@ -43,10 +49,10 @@ int main(void)
        /* Check timer ordering. */
        for (i = 0; i < 32; i++) {
                timer_init(&t[i*2]);
        /* Check timer ordering. */
        for (i = 0; i < 32; i++) {
                timer_init(&t[i*2]);
-               timer_add(&timers, &t[i*2], timeabs_from_nsec(1ULL << i));
+               timer_addmono(&timers, &t[i*2], timemono_from_nsec(1ULL << i));
                ok1(timers_check(&timers, NULL));
                timer_init(&t[i*2+1]);
                ok1(timers_check(&timers, NULL));
                timer_init(&t[i*2+1]);
-               timer_add(&timers, &t[i*2+1], timeabs_from_nsec((1ULL << i) + 1));
+               timer_addmono(&timers, &t[i*2+1], timemono_from_nsec((1ULL << i) + 1));
                ok1(timers_check(&timers, NULL));
        }
 
                ok1(timers_check(&timers, NULL));
        }
 
@@ -68,9 +74,9 @@ int main(void)
        for (i = 0; i < 32; i++) {
                uint64_t exp = (uint64_t)TIMER_GRANULARITY << i;
 
        for (i = 0; i < 32; i++) {
                uint64_t exp = (uint64_t)TIMER_GRANULARITY << i;
 
-               timer_add(&timers, &t[i*2], timeabs_from_nsec(exp));
+               timer_addmono(&timers, &t[i*2], timemono_from_nsec(exp));
                ok1(timers_check(&timers, NULL));
                ok1(timers_check(&timers, NULL));
-               timer_add(&timers, &t[i*2+1], timeabs_from_nsec(exp + 1));
+               timer_addmono(&timers, &t[i*2+1], timemono_from_nsec(exp + 1));
                ok1(timers_check(&timers, NULL));
        }
 
                ok1(timers_check(&timers, NULL));
        }
 
@@ -90,7 +96,19 @@ int main(void)
        }
 
        ok1(!timer_earliest(&timers, &earliest));
        }
 
        ok1(!timer_earliest(&timers, &earliest));
-
+       ok1(timers_check(&timers, NULL));
+       timers_cleanup(&timers);
+       
+       /* Relative timers. */
+       timers_init(&timers, epoch);
+       fake_mono_time = timemono_from_nsec(TIMER_GRANULARITY);
+       timer_addrel(&timers, &t[0], time_from_sec(1));
+       ok1(timer_earliest(&timers, &earliest));
+       ok1(timers_check(&timers, NULL));
+       ok1(earliest.ts.tv_sec == 1 && earliest.ts.tv_nsec == TIMER_GRANULARITY);
+       ok1(timers_expire(&timers, earliest) == &t[0]);
+       ok1(!timer_earliest(&timers, &earliest));
+       ok1(timers_check(&timers, NULL));
        timers_cleanup(&timers);
 
        /* This exits depending on whether all tests passed */
        timers_cleanup(&timers);
 
        /* This exits depending on whether all tests passed */
index 8d220a6a8c6f44893f12c76e95090c6f0998321d..c55e23dd21cf287d64b6d1ce6482b7cf0d33df9d 100644 (file)
@@ -12,15 +12,15 @@ struct timer_level {
        struct list_head list[PER_LEVEL];
 };
 
        struct list_head list[PER_LEVEL];
 };
 
-static uint64_t time_to_grains(struct timeabs t)
+static uint64_t time_to_grains(struct timemono t)
 {
        return t.ts.tv_sec * ((uint64_t)1000000000 / TIMER_GRANULARITY)
                + (t.ts.tv_nsec / TIMER_GRANULARITY);
 }
 
 {
        return t.ts.tv_sec * ((uint64_t)1000000000 / TIMER_GRANULARITY)
                + (t.ts.tv_nsec / TIMER_GRANULARITY);
 }
 
-static struct timeabs grains_to_time(uint64_t grains)
+static struct timemono grains_to_time(uint64_t grains)
 {
 {
-       struct timeabs t;
+       struct timemono t;
 
        t.ts.tv_sec = grains / (1000000000 / TIMER_GRANULARITY);
        t.ts.tv_nsec = (grains % (1000000000 / TIMER_GRANULARITY))
 
        t.ts.tv_sec = grains / (1000000000 / TIMER_GRANULARITY);
        t.ts.tv_nsec = (grains % (1000000000 / TIMER_GRANULARITY))
@@ -28,7 +28,7 @@ static struct timeabs grains_to_time(uint64_t grains)
        return t;
 }
 
        return t;
 }
 
-void timers_init(struct timers *timers, struct timeabs start)
+void timers_init(struct timers *timers, struct timemono start)
 {
        unsigned int i;
 
 {
        unsigned int i;
 
@@ -79,7 +79,26 @@ static bool list_node_initted(const struct list_node *n)
        return n->prev == n;
 }
 
        return n->prev == n;
 }
 
-void timer_add(struct timers *timers, struct timer *t, struct timeabs when)
+void timer_addrel(struct timers *timers, struct timer *t, struct timerel rel)
+{
+       assert(list_node_initted(&t->list));
+
+       t->time = time_to_grains(timemono_add(time_mono(), rel));
+
+#if TIME_HAVE_MONOTONIC
+       assert(t->time >= timers->base);
+#else
+       /* Added in the past?  Treat it as imminent. */
+       if (t->time < timers->base)
+               t->time = timers->base;
+#endif
+       if (t->time < timers->first)
+               timers->first = t->time;
+
+       timer_add_raw(timers, t);
+}
+
+void timer_addmono(struct timers *timers, struct timer *t, struct timemono when)
 {
        assert(list_node_initted(&t->list));
 
 {
        assert(list_node_initted(&t->list));
 
@@ -241,7 +260,7 @@ static bool update_first(struct timers *timers)
        return true;
 }
 
        return true;
 }
 
-bool timer_earliest(struct timers *timers, struct timeabs *first)
+bool timer_earliest(struct timers *timers, struct timemono *first)
 {
        if (!update_first(timers))
                return false;
 {
        if (!update_first(timers))
                return false;
@@ -298,7 +317,7 @@ static void timer_fast_forward(struct timers *timers, uint64_t time)
 }
 
 /* Returns an expired timer. */
 }
 
 /* Returns an expired timer. */
-struct timer *timers_expire(struct timers *timers, struct timeabs expire)
+struct timer *timers_expire(struct timers *timers, struct timemono expire)
 {
        uint64_t now = time_to_grains(expire);
        unsigned int off;
 {
        uint64_t now = time_to_grains(expire);
        unsigned int off;
index e678f7f7dfcbf78274e89ecbefcdc8e320992f0b..5c40a3bbc1c9979251ad5c2b76ca6a0443c5926a 100644 (file)
@@ -29,9 +29,9 @@ struct timer;
  * Example:
  *     struct timers timeouts;
  *
  * Example:
  *     struct timers timeouts;
  *
- *     timers_init(&timeouts, time_now());
+ *     timers_init(&timeouts, time_mono());
  */
  */
-void timers_init(struct timers *timers, struct timeabs start);
+void timers_init(struct timers *timers, struct timemono start);
 
 /**
  * timers_cleanup - free allocations within timers struct.
 
 /**
  * timers_cleanup - free allocations within timers struct.
@@ -56,19 +56,39 @@ void timers_cleanup(struct timers *timers);
 void timer_init(struct timer *t);
 
 /**
 void timer_init(struct timer *t);
 
 /**
- * timer_add - insert a timer.
+ * timer_addrel - insert a relative timer.
  * @timers: the struct timers
  * @timer: the (initialized or timer_del'd) timer to add
  * @timers: the struct timers
  * @timer: the (initialized or timer_del'd) timer to add
- * @when: when @timer expires.
+ * @rel: when @timer expires (relative).
+ *
+ * This efficiently adds @timer to @timers, to expire @rel (rounded to
+ * TIMER_GRANULARITY nanoseconds) after the current time.  This
+ * is a convenient wrapper around timer_addmono().
+ *
+ * Example:
+ *     // Timeout in 100ms.
+ *     timer_addrel(&timeouts, &t, time_from_msec(100));
+ */
+void timer_addrel(struct timers *timers, struct timer *timer, struct timerel rel);
+
+/**
+ * timer_addmono - insert an absolute timer.
+ * @timers: the struct timers
+ * @timer: the (initialized or timer_del'd) timer to add
+ * @when: when @timer expires (absolute).
  *
  * This efficiently adds @timer to @timers, to expire @when (rounded to
  * TIMER_GRANULARITY nanoseconds).
  *
  *
  * This efficiently adds @timer to @timers, to expire @when (rounded to
  * TIMER_GRANULARITY nanoseconds).
  *
+ * Note that if @when is before time_mono(), then it will be set to expire
+ * immediately.
+ *
  * Example:
  *     // Timeout in 100ms.
  * Example:
  *     // Timeout in 100ms.
- *     timer_add(&timeouts, &t, timeabs_add(time_now(), time_from_msec(100)));
+ *     timer_addmono(&timeouts, &t, timemono_add(time_mono(), time_from_msec(100)));
  */
  */
-void timer_add(struct timers *timers, struct timer *timer, struct timeabs when);
+void timer_addmono(struct timers *timers, struct timer *timer,
+                  struct timemono when);
 
 /**
  * timer_del - remove a timer.
 
 /**
  * timer_del - remove a timer.
@@ -94,10 +114,10 @@ void timer_del(struct timers *timers, struct timer *timer);
  * timer (rounded to TIMER_GRANULARITY nanoseconds), and returns true.
  *
  * Example:
  * timer (rounded to TIMER_GRANULARITY nanoseconds), and returns true.
  *
  * Example:
- *     struct timeabs next = { { (time_t)-1ULL, -1UL } };
+ *     struct timemono next = { { (time_t)-1ULL, -1UL } };
  *     timer_earliest(&timeouts, &next);
  */
  *     timer_earliest(&timeouts, &next);
  */
-bool timer_earliest(struct timers *timers, struct timeabs *first);
+bool timer_earliest(struct timers *timers, struct timemono *first);
 
 /**
  * timers_expire - update timers structure and remove one expire timer.
 
 /**
  * timers_expire - update timers structure and remove one expire timer.
@@ -118,11 +138,11 @@ bool timer_earliest(struct timers *timers, struct timeabs *first);
  * Example:
  *     struct timer *expired;
  *
  * Example:
  *     struct timer *expired;
  *
- *     while ((expired = timers_expire(&timeouts, time_now())) != NULL)
+ *     while ((expired = timers_expire(&timeouts, time_mono())) != NULL)
  *             printf("Timer expired!\n");
  *
  */
  *             printf("Timer expired!\n");
  *
  */
-struct timer *timers_expire(struct timers *timers, struct timeabs expire);
+struct timer *timers_expire(struct timers *timers, struct timemono expire);
 
 /**
  * timers_check - check timer structure for consistency
 
 /**
  * timers_check - check timer structure for consistency