sub combinations{ return map{my $i=$_<<1;[grep{($i>>=1)&1}@_]}0..(1<<@_)-1 }