##
sub run {
my $tmpl_path = shift;
generate($tmpl_path) unless $tmpl_sub{$tmpl_path};
return $tmpl_sub{$tmpl_path}->(@_);
#goto &$tmpl_sub{$tmpl_path};
#if you want to scare the other devs ;-)
}
sub emit {
print $site_head;
print run(@_);
print $site_tail;
}