-push @{caller().'::ISA'}, @_; +push @{caller().'::ISA'}, map {m#^main$# ? () : $_} @_;