sub out { my $x = shift; local *in = sub { my ($inn) = @_; $x += $inn; return $x; }; local *in_2 = sub { my $arg = 1; my $rs = in($arg); return $x * 10 + $rs; }; return $x + in_2(); }