Hmm, instead of
$master{$keyed}=@temp;, did you not mean to write
$master{$keyed}=\@temp;? As you've actually written it, a scalar is created as the value, instead of the array reference that you apparently meant.
A user level that continues to overstate my experience :-))