#!/usr/bin/perl


use strict;
use warnings;

use Carp qw(confess);
use Data::Dumper;
use Getopt::Std;

use Ernad::Args;
#use Ernad::Indat::Report;
use Ernad::Common;
use Ernad::Store;
use Ernad::Erimp;

#my %o;
#&Getopt::Std::getopts('adb', \%o);
#my $do_add = $o{'a'} // 0;
#my $do_delete = $o{'d'} // 0;
##my $do_build = $o{'b'} // 0;

our ($impna, $e, $repcode, $in_file);
&Ernad::Args::parse();
$e=Ernad::Erimp->new({'impna'=> $impna, 'verbose'=>3});

my $frast=$e->{'conf'}->{'frast'};

my $f=Ernad::Store::load($frast);
my $max=0;
my $s=[];
foreach my $fras (keys %$f) {
  my $n=$f->{$fras};
  if(not $n=~m|^\d+$|) {
    confess "I can't deal with your occurance '$n'";
  }
  if($max < $n) {
    $max=$n;
  }
  ## make some room
  delete $f->{$fras};
  push(@{$s->[$n]},$fras);
}

print "max is $max\n";

my $count=$max;
while($count) {
  if(not $s->[$count]) {
    $count--;
    next;
  }
  print $count;
  foreach my $fras (@{$s->[$count]}) {
    print " '$fras'";
  }
  print "\n";
  $count--;
}



__END__;
