diff --git a/misc-scripts/xref_mapping/XrefParser/BaseParser.pm b/misc-scripts/xref_mapping/XrefParser/BaseParser.pm
index 9b95239c90a19e22e7e7d85ba228331e9de6baf1..9b9fc46bc8a768697e6bd22904972e6e6d7c9151 100644
--- a/misc-scripts/xref_mapping/XrefParser/BaseParser.pm
+++ b/misc-scripts/xref_mapping/XrefParser/BaseParser.pm
@@ -270,7 +270,7 @@ sub get_valid_codes{
       $valid_codes{$row[0]} =$row[1];
     }
   }
-  return %valid_codes;
+  return \%valid_codes;
 }
 
 # --------------------------------------------------------------------------------
diff --git a/misc-scripts/xref_mapping/XrefParser/GOParser.pm b/misc-scripts/xref_mapping/XrefParser/GOParser.pm
index 1874f846981cbc464ec1232046d9f3816b15844f..6b4d11718ab85e0b22dc524a36cf1ded6577b8cf 100644
--- a/misc-scripts/xref_mapping/XrefParser/GOParser.pm
+++ b/misc-scripts/xref_mapping/XrefParser/GOParser.pm
@@ -40,8 +40,8 @@ sub run {
   }
 
 
-  my (%swiss) = XrefParser::BaseParser->get_valid_codes("uniprot",$species_id);
-  my (%refseq) = XrefParser::BaseParser->get_valid_codes("refseq",$species_id);
+  my (%swiss) = %{XrefParser::BaseParser->get_valid_codes("uniprot",$species_id)};
+  my (%refseq) = %{XrefParser::BaseParser->get_valid_codes("refseq",$species_id)};
 
   my $count  = 0;
 
diff --git a/misc-scripts/xref_mapping/XrefParser/HUGOParser.pm b/misc-scripts/xref_mapping/XrefParser/HUGOParser.pm
index 7ab5e5fb923b4853510a1d2dbf91d7305f7c5318..8ffe6a7abebdd15de79423760e243ffbbf96000e 100644
--- a/misc-scripts/xref_mapping/XrefParser/HUGOParser.pm
+++ b/misc-scripts/xref_mapping/XrefParser/HUGOParser.pm
@@ -63,8 +63,8 @@ sub run {
   close ENS4;
 
   
-  my (%swiss)  =  XrefParser::BaseParser->get_valid_codes("uniprot",$species_id);
-  my (%refseq) =  XrefParser::BaseParser->get_valid_codes("refseq",$species_id);
+  my (%swiss)  =  %{XrefParser::BaseParser->get_valid_codes("uniprot",$species_id)};
+  my (%refseq) =  %{XrefParser::BaseParser->get_valid_codes("refseq",$species_id)};
  
 
   my $count = 0;
diff --git a/misc-scripts/xref_mapping/XrefParser/MGDParser.pm b/misc-scripts/xref_mapping/XrefParser/MGDParser.pm
index 0fa06f0939f5c8d8d56cf9bbd9e3899d750f1a8b..4247a309589f0ac6adc3ccc0f12276d72e27e979 100644
--- a/misc-scripts/xref_mapping/XrefParser/MGDParser.pm
+++ b/misc-scripts/xref_mapping/XrefParser/MGDParser.pm
@@ -43,8 +43,8 @@ sub run {
     $species_id = XrefParser::BaseParser->get_species_id_for_filename($file);
   }                                                                                                                      
                                                                                                                       
-  my (%swiss) = XrefParser::BaseParser->get_valid_codes("uniprot",$species_id);
-  my (%refseq) = XrefParser::BaseParser->get_valid_codes("refseq",$species_id);
+  my (%swiss) = %{XrefParser::BaseParser->get_valid_codes("uniprot",$species_id)};
+  my (%refseq) = %{XrefParser::BaseParser->get_valid_codes("refseq",$species_id)};
 
 
   my $count = 0;
diff --git a/misc-scripts/xref_mapping/XrefParser/RGDParser.pm b/misc-scripts/xref_mapping/XrefParser/RGDParser.pm
index 24cad2b5b10b96063d38e1d6e32cabd0c5c4f388..5487b73b030caca1eea8964334ce3cdba456e864 100644
--- a/misc-scripts/xref_mapping/XrefParser/RGDParser.pm
+++ b/misc-scripts/xref_mapping/XrefParser/RGDParser.pm
@@ -44,8 +44,8 @@ sub run {
   }
 
 
-  my (%genbank) = XrefParser::BaseParser->get_valid_codes("EMBL",$species_id);
-  my (%refseq) = XrefParser::BaseParser->get_valid_codes("refseq",$species_id);
+  my (%genbank) = %{XrefParser::BaseParser->get_valid_codes("EMBL",$species_id)};
+  my (%refseq) = %{XrefParser::BaseParser->get_valid_codes("refseq",$species_id)};
 
   open(RGD,"<".$file) || die "Could not open $file\n";
 #Genbank_Nucleotide      Gene_Symbol     RGD_ID
diff --git a/misc-scripts/xref_mapping/XrefParser/ZFINParser.pm b/misc-scripts/xref_mapping/XrefParser/ZFINParser.pm
index 79f75513198f47e8d6854deeddd6dac4317c9dba..156b58b4ea0a182403918aef9c2431b6ce190497 100644
--- a/misc-scripts/xref_mapping/XrefParser/ZFINParser.pm
+++ b/misc-scripts/xref_mapping/XrefParser/ZFINParser.pm
@@ -42,8 +42,8 @@ sub run {
   my $dir = dirname($file);
   
 
-  my (%swiss) = XrefParser::BaseParser->get_valid_codes("uniprot",$species_id);
-  my (%refseq) = XrefParser::BaseParser->get_valid_codes("refseq",$species_id);
+  my (%swiss) = %{XrefParser::BaseParser->get_valid_codes("uniprot",$species_id)};
+  my (%refseq) = %{XrefParser::BaseParser->get_valid_codes("refseq",$species_id)};
 
   open(SWISSPROT,"<".$dir."/swissprot.txt") || die "Could not open $dir/swissprot.txt\n";
 #e.g.