sub in_todo { my($todo, $caller); $todo = defined((caller++$caller)[0])?(caller$caller)[0]->can('is_todo')?(caller$caller)[0]->is_todo?1:undef:undef:0 until defined $todo; $todo; }