#!/usr/bin/perl -w
print `date`;

my @lettres=((pop @ARGV) =~ /(.)/g);
my %let;
map {$let{$_}++} @lettres;
@lettres=();

my %original;
my %valeur;
my %inutile;

while (<>) {
	chop;
	my $old = $_;
	tr/ΰδαβ/aaaa/;
	tr/θλικ/eeee/;
	tr/μνοξ/iiii/;
	tr/ωϊόϋ/uuuu/;
	tr/ςφστ/oooo/;
	tr/[A-Z]/[a-z]/;
	tr/η/c/;
	my $mot = $_;
	if (!defined $inutile{$mot}) {
		if(!defined $original{$mot}) {
			my $total=0;
			foreach my $t (keys %let) {
				my @res = ($mot =~ /($t)/g);
				my $count = scalar (@res);
				$count = ($count < $let{$t})?$count:$let{$t};
				$total +=$count unless $count == 0;
			}
			if (($total >0) && ($total ==length $mot)) {
				push @{$original{$mot}},$old;
				$valeur{$mot} = $total;
			} else {
				$inutile{$mot}++;
			}
		} else {
			push @{$original{$mot}},$old;
		}
	}
	 
}

foreach my $mot (sort { $valeur{$a} <=> $valeur{$b}} keys %valeur) {
	print  "$valeur{$mot} - @{$original{$mot}}\n";
}
print `date`;

