# multi_dim(\%hash, @keys, $value) # sets $hash{$key[0]}{$key[1]}... = $value sub multi_dim { my $h = \shift; my $v = pop; $h = \$$h->{shift()} while @_; $$h = $v; }