#! /usr/bin/perl

use strict;
use warnings;

my %buckets = ();

while (<>) {
	chomp;
	my (@x) = split /\s+/, $_;

	my $num_packets = scalar @x;
	my $num_drops = grep { /\*/ } @x;

	$buckets{$num_packets}->{'num_bursts'}++;
	$buckets{$num_packets}->{'num_drops'} += $num_drops;
	if ($num_drops > 0) {
		$buckets{$num_packets}->{'bursts_with_drops'}++;
	}
}

for my $n (sort { $a <=> $b } keys %buckets) {
	my $drop_rate = $buckets{$n}->{'num_drops'} / ($n * $buckets{$n}->{'num_bursts'});
	my $drop_event_rate = $buckets{$n}->{'num_drops'} / ($n * $buckets{$n}->{'num_bursts'});
	printf "%3d: drop_rate %.5f  drop_event_rate %.5f\n",
		$n, $drop_rate, $drop_event_rate; 
}
