in reply to How to assign an array to a value in hash?
@{$new_hash{$some_key1}} = @some_array1; # extra {} are for clarity [download]
Of course, you will need to change the @value_array assignement:
my @value_array = @{$new_hash{$_}}; [download]