sub multi_push { my @v = @{ pop @_ }; while(@_) { push @{ +shift }, +shift @v; } }