+sub pushio {
+ my $self = shift;
+ my $io = shift;
+
+ push(@{$self->{'_OUTSTACK'}}, $self->{'_OUT'});
+ $self->setio($io);
+}
+
+sub popio {
+ my $self = shift;
+ my $io = pop(@{$self->{'_OUTSTACK'}});
+
+ if (defined($io)) {
+ $self->setio($io);
+ }
+}
+