##
%presence = ( 'hi' => [
[65, 85],
[86, 106]
],
'bye' => [
[12, 32],
[33, 53]
],
);
####
use constant FROM => 0;
use constant TO => 1;
####
my %presence;
while() {
my($name, $from, $to) = /^(\w+):\s+(\d+)\s+.*?\s+(\d+)$/ or next;
push @{$presence{$name}}, { from => $from, to => $to };
# or, with arrays:
# push @{$presence{$name}}, [ $from, $to ];
}