sub pow { shift if @_ > 2; return $_[0] ** $_[1]; }