BEGIN   {            Dup_sg          = "";            Frei_sg         = "";            Min_ig          = 99999999;            Max_ig          = 0;            LastFileDup_sg  = "";        }         function PrintDup (From_iv, To_iv, File1_sv, File2_sv)        {            Dup_sg = Dup_sg sprintf ("Doppelt: %5d..%-5d %-10s  %s\n%-34s%s\n", From_iv, To_iv, "(" To_iv - From_iv + 1 " Stk)",                                        File1_sv, "", File2_sv);            LastFileDup_sg = "";        } function PrintFrei (From_iv, To_iv)        {            Frei_sg = Frei_sg sprintf ("Frei:    %5d..%-5d %-10s\n", From_iv, To_iv, "(" To_iv - From_iv + 1 " Stk)");        }         END     {                FreiFrom_ii = FreiTo_ii = 0;                From_ii = To_ii = Min_ig;                LastFile_si = "";                for (I_ii = Min_ig; I_ii <= Max_ig; I_ii++)                {                   if ( LastFileDup_sg != "")                   {                            PrintDup(From_ii, To_ii, LastFileDup_sg, LastFile_si);                            From_ii = I_ii;                   }                    else                    {                        if (LastFileDup_sg != "")                            PrintDup(From_ii, To_ii, LastFileDup_sg, LastFile_si);                        From_ii = To_ii = I_ii;                    }                        if ( FreiFrom_ii != 0)                            PrintFrei(FreiFrom_ii, FreiTo_ii);                }                printf ("%s", Dup_sg);                printf ("%s", Frei_sg);        }