#!/usr/bin/perl

$_ = <>; s/\s+$//;
while (1)
{
	if (/^\[(.*)\]$/)
	{
		unless ($juzbyl = exists $znak{$1})
		{
			push @znaki, $1;
			$znak{$1} = "";
		}
	}
	elsif (/^$/)
	{
		if (@znaki || $juzbyl)
		{
			foreach (@znaki)
			{
				$znak{$_} .= $znak;
			}
			@znaki = ();
			$znak = "";
			$juzbyl = 0;
		}
	}
	else
	{
		(@znaki ? /^[.0]+$/ ? $znak : $znak{$znaki[-1]} : $font)
			.= "$_\n"
			unless $juzbyl;
	}
	last unless defined;
	$_ = <>; s/\s+$//;
}

print "$font\n";

foreach (sort keys %znak)
{
	print "[$_]\n$znak{$_}\n";
}
