#!/usr/bin/perl -w

use strict;
use Filehandle;
use Data::Dumper;
$Data::Dumper::Sortkeys = 1;

use lib "go/scratch/tools/";
use GO::GeneralPurposeParser;
use GO::Utilities;

my $verbose = $ENV{GO_VERBOSE} || 1;
my $timestring = localtime();

## read in the file
my $parser = GO::GeneralPurposeParser->new();


my $secondary = { 
	parser => 'delimited',
	parser_args => {
		delimiter => '-',
		field_list => ['go_id', 'go_name'],
	},
	save_as => 'parent_hash_merge',
};

my $reactome = $parser->parse_from_file({
	file => 'Downloads/reactome-Homo_sapiens.xrefcheck',
	record_sep => "\n",
	parser => "delimited",
	parser_args => {
		delimiter => "\t",
		field_list => [ 'r_name', 'r_id', $secondary, 'tag' ],
#		has_header_row => 1,
	},
	process => sub {
		my $var = shift;
		$var =~ s/_/ /g;
		return $var;
	},
	save_as => 'hash_add',
	hash_key_field => 'r_id',
});

print STDERR "reactome record nr 1: ".Dumper($reactome)."\n";

exit(0);