]> mj.ucw.cz Git - moe.git/commitdiff
New scripts for MO score sheet.
authorMartin Mares <mj@ucw.cz>
Sun, 25 Mar 2007 17:53:44 +0000 (17:53 +0000)
committerMartin Mares <mj@ucw.cz>
Sun, 25 Mar 2007 17:53:44 +0000 (17:53 +0000)
bin/mo-score2004 [deleted file]
bin/mo-score2005 [deleted file]
mop/listina.ftr [new file with mode: 0644]
mop/listina.hdr [new file with mode: 0644]
mop/mo-score-mop [new file with mode: 0755]
mop/mo-score-mop-formatted [new file with mode: 0755]
mop/teorie.txt [new file with mode: 0644]
mop/vysledky.tex [new file with mode: 0644]
mop/vysledky.txt [new file with mode: 0644]
teorie.txt [deleted file]

diff --git a/bin/mo-score2004 b/bin/mo-score2004
deleted file mode 100755 (executable)
index 510cb4a..0000000
+++ /dev/null
@@ -1,172 +0,0 @@
-#!/usr/bin/perl
-
-$tex = 0;
-$usage = "Usage: mo-score2004 [--tex] theoretical_tasks_nr praxis_tasks_nr task1 task2 ...";
-while (($arg = $ARGV[0]) =~ /^--([a-z]+)$/) {
-       shift @ARGV;
-       $var = "\$$1";
-       if (!eval "defined $var") { die $usage; }
-       eval "$var = 1;";
-}
-@ARGV >=2 || die $usage;
-$theory=shift @ARGV;
-$praxis=shift @ARGV;
-@ARGV >= $praxis || die $usage;
-
-print STDERR "Scanning contestants... ";
-open (CT, "bin/mo-get-users --full |") || die "Cannot get list of contestants";
-while (<CT>) {
-       chomp;
-       ($u,$f) = split /\t/;
-       ($u eq "somebody") && next;
-        $users{$u}=$f;
-}
-close CT;
-print STDERR 0+keys %users, "\n";
-
-print STDERR "Scanning teoretical results... ";
-if (open (EX, "teorie.txt")) {
-       while (<EX>) {
-               chomp;
-               (/^$/ || /^#/) && next;
-               @a = split /\ *\t\ */;
-               $u = shift @a;
-               defined $users{$u} || die "Unknown user $u";
-               $names{$u} = shift @a;
-               $forms{$u} = shift @a;
-               $addresses{$u} = "{". (shift @a) ."}";
-               $i=0;
-               while (@a) { $tasks{$u}{$i} = shift @a;$i++; }
-       }
-       close EX;
-       print STDERR "OK\n";
-} else {die "none\n";}
-
-print STDERR "Scanning task results... ";
-$need_tasks = join("|", @ARGV);
-foreach $u (keys %users) {
-       opendir (D, "testing/$u") or next;
-       foreach $t (readdir(D)) {
-               $t =~ /^\./ && next;
-               $t =~ /$need_tasks/ || next;
-
-               $t_num=$praxis;
-               for (my $t_num2=0;$t_num2<@ARGV;$t_num2++) {if ($t eq $ARGV[$t_num2]) {$t_num=$t_num2;}}
-               $t_num+=$theory;
-
-               $tt = "testing/$u/$t/points";
-               -f $tt || next;
-               print STDERR "$u/$t ";
-               open (X, $tt) || die "Unable to open $tt";
-               while (<X>) {
-                       chomp;
-                       /^\S+ (-?\d+)/ || die "Parse error: $_";
-                       $tasks{$u}{$t_num} += $1;
-               }
-               close X;
-       }
-       closedir D;
-}
-print STDERR "OK\n";
-
-print STDERR "Creating table template... ";
-@body = ('','$names{$u}','$forms{$u}','$addresses{$u}');
-for ($a=0;$a<$theory+$praxis;$a++) {push @body,"\$tasks{\$u}{$a}";}
-print STDERR "OK\n";
-
-print STDERR "Filling in results... ";
-@table = ();
-foreach $u (keys %users) {
-       $row = [];
-       $row_index=0;
-       $row_sum=0;
-       foreach my $c (@body) {
-               $c =~ s/\$(\d+)/\$\$row[$1]/g;
-               $x = eval $c;
-               push @$row, (defined $x ? $x : '-');
-               if ($row_index>3) {
-                   if ((defined $x) && ($x>0)) {$row_sum+=$x;}
-               }
-               $row_index++;
-       }
-       push @$row, $row_sum;
-       push @table, $row;
-}
-print STDERR "OK\n";
-
-print STDERR "Sorting... ";
-$sortcol = @{$table[0]} - 1;
-$namecol = 1;
-@table = sort {
-       my $p, $an, $bn;
-       $p = $$b[$sortcol] <=> $$a[$sortcol];
-       ($an = $$a[$namecol]) =~ s/(\S+)\s+(\S+)/$2 $1/;
-       ($bn = $$b[$namecol]) =~ s/(\S+)\s+(\S+)/$2 $1/;
-       $p ? $p : ($an cmp $bn);
-} @table;
-$i=0;
-while ($i < @table) {
-       $j = $i;
-       while ($i < @table && ${$table[$i]}[$sortcol] == ${$table[$j]}[$sortcol]) {
-               $i++;
-       }
-       if ($i == $j+1) {
-               ${table[$j]}[0] = "$i.";
-       } else {
-               ${table[$j]}[0] = $j+1 . ".-" . $i . ".";
-               $j_old=$j;
-               $j++;
-               while ($j < $i) { ${table[$j++]}[0] = $j_old+1 . ".-" . $i . "."; };
-       }
-}
-print STDERR "OK\n";
-
-if ($tex) {
-       print
-'\language=\czech
-\frenchspacing
-\font\head=csr12 scaled \magstephalf
-\font\hexx=csti12
-\font\xxit=csti10
-\def\xit{\xxit\kern-0.1em\relax}
-\let\hb=\relax
-\parindent=0pt
-\nopagenumbers
-
-\centerline{\head Výsledková listina celostátního kola 53. roèníku MO kategorie P}
-\bigskip
-\centerline{\hexx 31. bøezna -- 3. dubna 2004 v Pøerovì}
-\bigskip
-\bigskip
-
-\hrule
-\bigskip
-
-\centerline{\vbox{\halign{%
-#\hfil &~~#\hfil &\quad #\hfil &~~#\hfil&\quad
-\hfil # &
-\hfil # &
-\hfil # & \kern0.4em
-\hfil # &
-\hfil # & \kern1em
-\hb\quad\hfil # \cr
-\noalign{\bigskip\bigskip\hbox{\xit Vítìzové}\bigskip}
-%\noalign{\bigskip\bigskip\hbox{\xit Úspì¹ní øe¹itelé}\bigskip}
-%\noalign{\bigskip\bigskip\hbox{\xit Ostatní úèastníci}\bigskip}
-';
-       foreach $r (@table) { print join('&',@$r), "\\cr\n";}
-
-print '&&&
-\hphantom{10} &
-\hphantom{10} &
-\hphantom{10} &
-\hphantom{10} &
-\hphantom{10} &&
-\hphantom{10} \cr
-}}}
-
-\bye
-';
-} else {
-       foreach $r (@table) { print join("\t",@$r), "\n"; }
-}
diff --git a/bin/mo-score2005 b/bin/mo-score2005
deleted file mode 100755 (executable)
index 381bc50..0000000
+++ /dev/null
@@ -1,138 +0,0 @@
-#!/usr/bin/perl
-
-$tex = 0;
-$usage = "Usage: mo-score2004 [--tex] theoretical_tasks_nr praxis_tasks_nr task1 task2 ...";
-while (($arg = $ARGV[0]) =~ /^--([a-z]+)$/) {
-       shift @ARGV;
-       $var = "\$$1";
-       if (!eval "defined $var") { die $usage; }
-       eval "$var = 1;";
-}
-@ARGV >=2 || die $usage;
-$theory=shift @ARGV;
-$praxis=shift @ARGV;
-@ARGV >= $praxis || die $usage;
-$pos_delim=$tex ? '--' : '-';
-
-print STDERR "Scanning contestants... ";
-open (CT, "bin/mo-get-users --full |") || die "Cannot get list of contestants";
-while (<CT>) {
-       chomp;
-       ($u,$f) = split /\t/;
-       ($u eq "somebody") && next;
-        $users{$u}=$f;
-}
-close CT;
-print STDERR 0+keys %users, "\n";
-
-print STDERR "Scanning teoretical results... ";
-if (open (EX, "teorie.txt")) {
-       while (<EX>) {
-               chomp;
-               (/^$/ || /^#/) && next;
-               @a = split /\ *\t\ */;
-               $u = shift @a;
-               defined $users{$u} || die "Unknown user $u";
-               $names{$u} = shift @a;
-               $forms{$u} = shift @a;
-               $addresses{$u} = "{". (shift @a) ."}";
-               $i=0;
-               while (@a) { $tasks{$u}{$i} = shift @a;$i++; }
-       }
-       close EX;
-       print STDERR "OK\n";
-} else {die "none\n";}
-
-print STDERR "Scanning task results... ";
-$need_tasks = join("|", @ARGV);
-foreach $u (keys %users) {
-       opendir (D, "testing/$u") or next;
-       foreach $t (readdir(D)) {
-               $t =~ /^\./ && next;
-               $t =~ /$need_tasks/ || next;
-
-               $t_num=$praxis;
-               for (my $t_num2=0;$t_num2<@ARGV;$t_num2++) {if ($t eq $ARGV[$t_num2]) {$t_num=$t_num2;}}
-               $t_num+=$theory;
-
-               $tt = "testing/$u/$t/points";
-               -f $tt || next;
-               print STDERR "$u/$t ";
-               open (X, $tt) || die "Unable to open $tt";
-               while (<X>) {
-                       chomp;
-                       /^\S+ (-?\d+)/ || die "Parse error: $_";
-                       $tasks{$u}{$t_num} += $1;
-               }
-               close X;
-       }
-       closedir D;
-}
-print STDERR "OK\n";
-
-print STDERR "Creating table template... ";
-@body = ('','$names{$u}','$forms{$u}','$addresses{$u}');
-for ($a=0;$a<$theory+$praxis;$a++) {push @body,"\$tasks{\$u}{$a}";}
-print STDERR "OK\n";
-
-print STDERR "Filling in results... ";
-@table = ();
-foreach $u (keys %users) {
-       $row = [];
-       $row_index=0;
-       $row_sum=0;
-       foreach my $c (@body) {
-               $c =~ s/\$(\d+)/\$\$row[$1]/g;
-               $x = eval $c;
-               push @$row, (defined $x ? $x : '-');
-               if ($row_index>3) {
-                   if ((defined $x) && ($x>0)) {$row_sum+=$x;}
-               }
-               $row_index++;
-       }
-       push @$row, $row_sum;
-       push @table, $row;
-}
-print STDERR "OK\n";
-
-print STDERR "Sorting... ";
-$sortcol = @{$table[0]} - 1;
-$namecol = 1;
-@table = sort {
-       my $p, $an, $bn;
-       $p = $$b[$sortcol] <=> $$a[$sortcol];
-       ($an = $$a[$namecol]) =~ s/(\S+)\s+(\S+)/$2 $1/;
-       ($bn = $$b[$namecol]) =~ s/(\S+)\s+(\S+)/$2 $1/;
-       $p ? $p : ($an cmp $bn);
-} @table;
-$i=0;
-while ($i < @table) {
-       $j = $i;
-       while ($i < @table && ${$table[$i]}[$sortcol] == ${$table[$j]}[$sortcol]) {
-               $i++;
-       }
-       if ($i == $j+1) {
-               ${table[$j]}[0] = "$i.";
-       } else {
-               ${table[$j]}[0] = $j+1 . '.' . $pos_delim . $i . ".";
-               $j_old=$j;
-               $j++;
-               while ($j < $i) { ${table[$j++]}[0] = $j_old+1 . '.' . $pos_delim . $i . "."; };
-       }
-}
-print STDERR "OK\n";
-
-if ($tex) {
-        open HDR,"teorie.hdr" or die "Cannot open file teorie.hdr with TeX template!";
-       while (<HDR>) {print; }
-       close HDR;
-       
-       foreach $r (@table) { print join('&',@$r), "\\cr\n";}
-
-print '}}}
-
-\bye
-';
-} else {
-       foreach $r (@table) { print join("\t",@$r), "\n"; }
-}
diff --git a/mop/listina.ftr b/mop/listina.ftr
new file mode 100644 (file)
index 0000000..3e38439
--- /dev/null
@@ -0,0 +1,3 @@
+}}}
+
+\bye
diff --git a/mop/listina.hdr b/mop/listina.hdr
new file mode 100644 (file)
index 0000000..c18ada4
--- /dev/null
@@ -0,0 +1,30 @@
+\language=\czech
+\frenchspacing
+\font\head=csr12 scaled \magstephalf
+\font\hexx=csti12
+\font\xxit=csti10
+\def\xit{\xxit\kern-0.1em\relax}
+\let\hb=\relax
+\parindent=0pt
+\nopagenumbers
+
+\centerline{\head Výsledková listina ústøedního kola 56. roèníku MO kategorie P}
+\bigskip
+\centerline{\hexx 21. -- 24. bøezna 2007 ve Zlínì}
+\bigskip
+\bigskip
+
+\hrule
+\bigskip
+
+\centerline{\vbox{\halign{%
+#\hfil &~~#\hfil &\quad #\hfil &~~#\hfil&\quad
+\hfil # &
+\hfil # &
+\hfil # & \kern0.4em
+\hfil # &
+\hfil # & \kern1em
+\hb\quad\hfil # \cr
+\noalign{\bigskip\bigskip\hbox{\xit Vítìzové}\bigskip}
+%\noalign{\bigskip\bigskip\hbox{\xit Úspì¹ní øe¹itelé}\bigskip}
+%\noalign{\bigskip\bigskip\hbox{\xit Ostatní úèastníci}\bigskip}
diff --git a/mop/mo-score-mop b/mop/mo-score-mop
new file mode 100755 (executable)
index 0000000..c207706
--- /dev/null
@@ -0,0 +1,138 @@
+#!/usr/bin/perl
+
+$tex = 0;
+$usage = "Usage: mo-score-mop [--tex] theoretical_tasks_nr praxis_tasks_nr task1 task2 ...";
+while (($arg = $ARGV[0]) =~ /^--([a-z]+)$/) {
+       shift @ARGV;
+       $var = "\$$1";
+       if (!eval "defined $var") { die $usage; }
+       eval "$var = 1;";
+}
+@ARGV >=2 || die $usage;
+$theory=shift @ARGV;
+$praxis=shift @ARGV;
+@ARGV >= $praxis || die $usage;
+$pos_delim=$tex ? '--' : '-';
+
+print STDERR "Scanning contestants... ";
+open (CT, "bin/mo-get-users --full |") || die "Cannot get list of contestants";
+while (<CT>) {
+       chomp;
+       ($u,$f) = split /\t/;
+       ($u eq "somebody") && next;
+        $users{$u}=$f;
+}
+close CT;
+print STDERR 0+keys %users, "\n";
+
+print STDERR "Scanning teoretical results... ";
+if (open (EX, "mop/teorie.txt")) {
+       while (<EX>) {
+               chomp;
+               (/^$/ || /^#/) && next;
+               @a = split /\ *\t\ */;
+               $u = shift @a;
+               defined $users{$u} || die "Unknown user $u";
+               $names{$u} = shift @a;
+               $forms{$u} = shift @a;
+               $addresses{$u} = "{". (shift @a) ."}";
+               $i=0;
+               while (@a) { $tasks{$u}{$i} = shift @a;$i++; }
+       }
+       close EX;
+       print STDERR "OK\n";
+} else {die "none, cannot find file mop/teorie.txt!\n";}
+
+print STDERR "Scanning task results... ";
+$need_tasks = join("|", @ARGV);
+foreach $u (keys %users) {
+       opendir (D, "testing/$u") or next;
+       foreach $t (readdir(D)) {
+               $t =~ /^\./ && next;
+               $t =~ /$need_tasks/ || next;
+
+               $t_num=$praxis;
+               for (my $t_num2=0;$t_num2<@ARGV;$t_num2++) {if ($t eq $ARGV[$t_num2]) {$t_num=$t_num2;}}
+               $t_num+=$theory;
+
+               $tt = "testing/$u/$t/points";
+               -f $tt || next;
+               print STDERR "$u/$t ";
+               open (X, $tt) || die "Unable to open $tt";
+               while (<X>) {
+                       chomp;
+                       /^\S+ (-?\d+)/ || die "Parse error: $_";
+                       $tasks{$u}{$t_num} += $1;
+               }
+               close X;
+       }
+       closedir D;
+}
+print STDERR "OK\n";
+
+print STDERR "Creating table template... ";
+@body = ('','$names{$u}','$forms{$u}','$addresses{$u}');
+for ($a=0;$a<$theory+$praxis;$a++) {push @body,"\$tasks{\$u}{$a}";}
+print STDERR "OK\n";
+
+print STDERR "Filling in results... ";
+@table = ();
+foreach $u (keys %users) {
+       next unless defined $names{$u}; # don't show any user not defined in teorie.txt
+       $row = [];
+       $row_index=0;
+       $row_sum=0;
+       foreach my $c (@body) {
+               $c =~ s/\$(\d+)/\$\$row[$1]/g;
+               $x = eval $c;
+               push @$row, (defined $x ? $x : '-');
+               if ($row_index>3) {
+                   if ((defined $x) && ($x>0)) {$row_sum+=$x;}
+               }
+               $row_index++;
+       }
+       push @$row, $row_sum;
+       push @table, $row;
+}
+print STDERR "OK\n";
+
+print STDERR "Sorting... ";
+$sortcol = @{$table[0]} - 1;
+$namecol = 1;
+@table = sort {
+       my $p, $an, $bn;
+       $p = $$b[$sortcol] <=> $$a[$sortcol];
+       ($an = $$a[$namecol]) =~ s/(\S+)\s+(\S+)/$2 $1/;
+       ($bn = $$b[$namecol]) =~ s/(\S+)\s+(\S+)/$2 $1/;
+       $p ? $p : ($an cmp $bn);
+} @table;
+$i=0;
+while ($i < @table) {
+       $j = $i;
+       while ($i < @table && ${$table[$i]}[$sortcol] == ${$table[$j]}[$sortcol]) {
+               $i++;
+       }
+       if ($i == $j+1) {
+               ${table[$j]}[0] = "$i.";
+       } else {
+               ${table[$j]}[0] = $j+1 . '.' . $pos_delim . $i . ".";
+               $j_old=$j;
+               $j++;
+               while ($j < $i) { ${table[$j++]}[0] = $j_old+1 . '.' . $pos_delim . $i . "."; };
+       }
+}
+print STDERR "OK\n";
+
+if ($tex) {
+        open HDR,"mop/listina.hdr" or die "Cannot open file mop/listina.hdr with TeX template!";
+       while (<HDR>) {print; }
+       close HDR;
+       
+       foreach $r (@table) { print join('&',@$r), "\\cr\n";}
+
+        open FTR,"mop/listina.ftr" or die "Cannot open file mop/listina.ftr with TeX template!";
+       while (<FTR>) {print; }
+       close FTR;
+} else {
+       foreach $r (@table) { print join("\t",@$r), "\n"; }
+}
diff --git a/mop/mo-score-mop-formatted b/mop/mo-score-mop-formatted
new file mode 100755 (executable)
index 0000000..44e956b
--- /dev/null
@@ -0,0 +1,3 @@
+#!/bin/sh
+
+mop/mo-score-mop 3 2 policie rybka | column -c120 -ts" " | cstocs il2 ascii
diff --git a/mop/teorie.txt b/mop/teorie.txt
new file mode 100644 (file)
index 0000000..94105b9
--- /dev/null
@@ -0,0 +1,30 @@
+mo04   Jakub Balhar    6/6     G J. Nerudy, Praha      1       1       1
+mo24   Roman Smr¾      7/8     G E. Krásnohorské, Praha        6       3       10
+mo01   Tomá¹ Køen      4/4     G Ch. Dopplera, Praha   0       3       0
+mo12   Pavel John      4/4     G Arabská, Praha        0       1       7
+mo23   Martin Pokorný  4/4     G Arabská, Praha        3       2       9
+mo11   Matìj Korvas    8/8     G J. Seiferta, Praha    0       2       1
+mo28   Tomá¹ Pøaslièák 7/8     GOA Nádra¾ní, Sedlèany  0       3       1
+mo13   Zuzana Bure¹ová 8/8     Masarykovo G, Plzeò     0       1       1
+mo03   Roman Diba      3/4     VO© a SP©E Plzeò        0       0       1
+mo22   Libor Peltan    7/8     G Èeská, Èeské Budìjovice       0       0       10
+mo32   Roman Øíha      7/8     G Zlatá stezka, Prachatice      0       1       0
+mo31   Josef Pihera    8/8     G Máchova, Strakonice   7       4       10
+mo21   Michal Minaøík  4/4     G F. X. ©aldy, Liberec  0       0       0
+mo15   Jakub Kaplan    3/4     G J. K. Tyla, Hradec Králové    5       3       1
+mo06   Luká¹ Lánský    3/4     G J. K. Tyla, Hradec Králové    3       5       10
+mo36   Marek Scholle   8/8     G Da¹ická, Pardubice    6       1       0
+mo02   Pavel Klavík    8/8     G J. Ressla, Chrudim    0       4       10
+mo14   Petr Kratochvíl 4/4     G Sázavská, Svìtlá nad Sázavou  1       1       6
+mo16   Filip Dìchtìrenko       8/8         G J. Masaryka, Jihlava      0       1       1
+mo33   Martin Ve¹krna  4/4     G Vídeòská, Brno        0       3       1
+mo09   Ondøej Bouda    8/8     G Tø. Kpt. Jaro¹e, Brno 1       3       0
+mo30   Michal Novák    8/8     G Tø. Kpt. Jaro¹e, Brno 0       0       2
+mo27   Ondøej Piálek   4/4     G Masarykovo nám., Tøebíè       7       1       1
+mo34   Michal Pavelèík 8/8     G J. A. Komenského, Uherský Brod        0       0       0
+mo10   Martin Milata   8/8     G Hladnovská, Ostrava   0       2       8
+mo35   Libor Plucnar   4/6     G P. Bezruèe, Frýdek-Místek     0       1       1
+mo26   Pavel Motloch   6/6     G P. Bezruèe, Frýdek-Místek     0       7       10
+mo07   Miroslav Klimo¹ 2/4     G M. Koperníka, Bílovec 9       9       10
+mo25   Tomá¹ Toufar    3/4     G M. Koperníka, Bílovec 0       3       0
+mo08   Petr Dluho¹     8/8     Mendelovo G, Opava      0       0       10
\ No newline at end of file
diff --git a/mop/vysledky.tex b/mop/vysledky.tex
new file mode 100644 (file)
index 0000000..8b412e1
--- /dev/null
@@ -0,0 +1,63 @@
+\language=\czech
+\frenchspacing
+\font\head=csr12 scaled \magstephalf
+\font\hexx=csti12
+\font\xxit=csti10
+\def\xit{\xxit\kern-0.1em\relax}
+\let\hb=\relax
+\parindent=0pt
+\nopagenumbers
+
+\centerline{\head Výsledková listina ústøedního kola 56. roèníku MO kategorie P}
+\bigskip
+\centerline{\hexx 21. -- 24. bøezna 2007 ve Zlínì}
+\bigskip
+\bigskip
+
+\hrule
+\bigskip
+
+\centerline{\vbox{\halign{%
+#\hfil &~~#\hfil &\quad #\hfil &~~#\hfil&\quad
+\hfil # &
+\hfil # &
+\hfil # & \kern0.4em
+\hfil # &
+\hfil # & \kern1em
+\hb\quad\hfil # \cr
+\noalign{\bigskip\bigskip\hbox{\xit Vítìzové}\bigskip}
+%\noalign{\bigskip\bigskip\hbox{\xit Úspì¹ní øe¹itelé}\bigskip}
+%\noalign{\bigskip\bigskip\hbox{\xit Ostatní úèastníci}\bigskip}
+1.&Josef Pihera&8/8&{G Máchova, Strakonice}&7&4&10&15&15&51\cr
+2.&Pavel Klavík&8/8&{G J. Ressla, Chrudim}&0&4&10&15&12&41\cr
+3.&Roman Smr¾&7/8&{G E. Krásnohorské, Praha}&6&3&10&0&13&32\cr
+4.&Miroslav Klimo¹&2/4&{G M. Koperníka, Bílovec}&9&9&10&2&0&30\cr
+5.&Luká¹ Lánský&3/4&{G J. K. Tyla, Hradec Králové}&3&5&10&0&0&18\cr
+6.&Pavel Motloch&6/6&{G P. Bezruèe, Frýdek-Místek}&0&7&10&0&0&17\cr
+7.&Jakub Kaplan&3/4&{G J. K. Tyla, Hradec Králové}&5&3&1&7&0&16\cr
+8.&Martin Pokorný&4/4&{G Arabská, Praha}&3&2&9&1&-&15\cr
+9.&Martin Milata&8/8&{G Hladnovská, Ostrava}&0&2&8&0&4&14\cr
+10.&Libor Peltan&7/8&{G Èeská, Èeské Budìjovice}&0&0&10&3&-&13\cr
+11.&Ondøej Piálek&4/4&{G Masarykovo nám., Tøebíè}&7&1&1&0&3&12\cr
+12.&Petr Dluho¹&8/8&{Mendelovo G, Opava}&0&0&10&0&1&11\cr
+13.&Petr Kratochvíl&4/4&{G Sázavská, Svìtlá nad Sázavou}&1&1&6&1&-&9\cr
+14.&Pavel John&4/4&{G Arabská, Praha}&0&1&7&-&0&8\cr
+15.&Marek Scholle&8/8&{G Da¹ická, Pardubice}&6&1&0&0&-&7\cr
+16.&Ondøej Bouda&8/8&{G Tø. Kpt. Jaro¹e, Brno}&1&3&0&2&0&6\cr
+17.&Tomá¹ Toufar&3/4&{G M. Koperníka, Bílovec}&0&3&0&2&0&5\cr
+18.--19.&Tomá¹ Pøaslièák&7/8&{GOA Nádra¾ní, Sedlèany}&0&3&1&-&0&4\cr
+18.--19.&Martin Ve¹krna&4/4&{G Vídeòská, Brno}&0&3&1&-&-&4\cr
+20.--25.&Jakub Balhar&6/6&{G J. Nerudy, Praha}&1&1&1&-&0&3\cr
+20.--25.&Roman Diba&3/4&{VO© a SP©E Plzeò}&0&0&1&2&-&3\cr
+20.--25.&Filip Dìchtìrenko&8/8&{G J. Masaryka, Jihlava}&0&1&1&0&1&3\cr
+20.--25.&Matìj Korvas&8/8&{G J. Seiferta, Praha}&0&2&1&-&0&3\cr
+20.--25.&Tomá¹ Køen&4/4&{G Ch. Dopplera, Praha}&0&3&0&-&-&3\cr
+20.--25.&Michal Pavelèík&8/8&{G J. A. Komenského, Uherský Brod}&0&0&0&0&3&3\cr
+26.--28.&Zuzana Bure¹ová&8/8&{Masarykovo G, Plzeò}&0&1&1&0&-&2\cr
+26.--28.&Michal Novák&8/8&{G Tø. Kpt. Jaro¹e, Brno}&0&0&2&-&-&2\cr
+26.--28.&Libor Plucnar&4/6&{G P. Bezruèe, Frýdek-Místek}&0&1&1&0&-&2\cr
+29.&Roman Øíha&7/8&{G Zlatá stezka, Prachatice}&0&1&0&-&0&1\cr
+30.&Michal Minaøík&4/4&{G F. X. ©aldy, Liberec}&0&0&0&-&-&0\cr
+}}}
+
+\bye
diff --git a/mop/vysledky.txt b/mop/vysledky.txt
new file mode 100644 (file)
index 0000000..fdbe89c
--- /dev/null
@@ -0,0 +1,30 @@
+1.       Josef Pihera       8/8  {G Machova, Strakonice}             7  4  10  15  15  51
+2.       Pavel Klavik       8/8  {G J. Ressla, Chrudim}              0  4  10  15  12  41
+3.       Roman Smrz         7/8  {G E. Krasnohorske, Praha}          6  3  10  0   13  32
+4.       Miroslav Klimos    2/4  {G M. Kopernika, Bilovec}           9  9  10  2   0   30
+5.       Lukas Lansky       3/4  {G J. K. Tyla, Hradec Kralove}      3  5  10  0   0   18
+6.       Pavel Motloch      6/6  {G P. Bezruce, Frydek-Mistek}       0  7  10  0   0   17
+7.       Jakub Kaplan       3/4  {G J. K. Tyla, Hradec Kralove}      5  3  1   7   0   16
+8.       Martin Pokorny     4/4  {G Arabska, Praha}                  3  2  9   1   -   15
+9.       Martin Milata      8/8  {G Hladnovska, Ostrava}             0  2  8   0   4   14
+10.      Libor Peltan       7/8  {G Ceska, Ceske Budejovice}         0  0  10  3   -   13
+11.      Ondrej Pialek      4/4  {G Masarykovo nam., Trebic}         7  1  1   0   3   12
+12.      Petr Dluhos        8/8  {Mendelovo G, Opava}                0  0  10  0   1   11
+13.      Petr Kratochvil    4/4  {G Sazavska, Svetla nad Sazavou}    1  1  6   1   -   9
+14.      Pavel John         4/4  {G Arabska, Praha}                  0  1  7   -   0   8
+15.      Marek Scholle      8/8  {G Dasicka, Pardubice}              6  1  0   0   -   7
+16.      Ondrej Bouda       8/8  {G Tr. Kpt. Jarose, Brno}           1  3  0   2   0   6
+17.      Tomas Toufar       3/4  {G M. Kopernika, Bilovec}           0  3  0   2   0   5
+18.-19.  Tomas Praslicak    7/8  {GOA Nadrazni, Sedlcany}            0  3  1   -   0   4
+18.-19.  Martin Veskrna     4/4  {G Videnska, Brno}                  0  3  1   -   -   4
+20.-25.  Jakub Balhar       6/6  {G J. Nerudy, Praha}                1  1  1   -   0   3
+20.-25.  Roman Diba         3/4  {VOS a SPSE Plzen}                  0  0  1   2   -   3
+20.-25.  Filip Dechterenko  8/8  {G J. Masaryka, Jihlava}            0  1  1   0   1   3
+20.-25.  Matej Korvas       8/8  {G J. Seiferta, Praha}              0  2  1   -   0   3
+20.-25.  Tomas Kren         4/4  {G Ch. Dopplera, Praha}             0  3  0   -   -   3
+20.-25.  Michal Pavelcik    8/8  {G J. A. Komenskeho, Uhersky Brod}  0  0  0   0   3   3
+26.-28.  Zuzana Buresova    8/8  {Masarykovo G, Plzen}               0  1  1   0   -   2
+26.-28.  Michal Novak       8/8  {G Tr. Kpt. Jarose, Brno}           0  0  2   -   -   2
+26.-28.  Libor Plucnar      4/6  {G P. Bezruce, Frydek-Mistek}       0  1  1   0   -   2
+29.      Roman Riha         7/8  {G Zlata stezka, Prachatice}        0  1  0   -   0   1
+30.      Michal Minarik     4/4  {G F. X. Saldy, Liberec}            0  0  0   -   -   0
diff --git a/teorie.txt b/teorie.txt
deleted file mode 100644 (file)
index 247d47b..0000000
+++ /dev/null
@@ -1,30 +0,0 @@
-mo01   Zdenìk Sojka    4/4     SP©ST Panská, Praha     7       10      3
-mo02   Roman Smr¾      4/8     G Ohradní, Praha        0       3       4
-mo03   Daniel Marek    2/4     G Ch. Dopplera Zborovská, Praha 3       9       10
-mo04   Ján Zahornadský 3/4     G Ch. Dopplera Zborovská, Praha 4       10      4
-mo05   David Matou¹ek  8/8     G Ch. Dopplera Zborovská, Praha 9       7       8
-mo06   Daniel Bala¹    4/4     G Arabská, Praha        5       6       5
-mo07   Petr ©koda      8/8     G Ústavní, Praha        8       8       9
-mo08   Jaroslav Havlín 8/8     GOA Nádra¾ní, Sedlèany  0       8       5
-mo09   Petr ©vec       8/8     G Talichova, Beroun     10      4       2
-mo10   Jan Bulánek     7/8     G J. Vrchlického, Klatovy       4       8       10
-mo11   Vladimír Èunát  3/4     G Jírovcova, Èeské Budìjovice   4       2       4
-mo12   Petr ©»ovík     4/4     G J. K. Tyla, Hradec Králové    0       1       2
-mo13   Michal Vaner    6/8     G Jana Palacha, Turnov  4       3       9
-mo14   Jiøí Schejbal   8/8     G Jana Palacha, Turnov  0       5       4
-mo15   Oto Petøík      6/8     G Komenského, Vrchlabí  4       5       10
-mo16   Jindøich Flídr  8/8     G nám. J. M. Markù, Lan¹kroun   10      9       9
-mo17   Martin Dobroucký        7/8     G Svitavská, Moravská Tøebová   5       5       8
-mo18   Martin Køivánek 2/4     G tø. Kpt. Jaro¹e, Brno 4       7       7
-mo19   Jiøí Zelinka    2/4     G tø. Kpt. Jaro¹e, Brno 1       1       0
-mo20   Martin Vejnár   3/4     G tø. Kpt. Jaro¹e, Brno 6       10      10
-mo21   Jiøí ©tìpánek   4/4     G tø. Kpt. Jaro¹e, Brno 4       1       8
-mo22   Pavel Troubil   4/4     G tø. Kpt. Jaro¹e, Brno 4       9       5
-mo23   Kry¹tof Hoder   4/4     G tø. Kpt. Jaro¹e, Brno 10      10      9
-mo24   Jana Fabriková  4/4     G tø. Kpt. Jaro¹e, Brno -       5       10
-mo25   Pavel Motloch   3/6     G P. Bezruèe, Frýdek--Místek    3       7       10
-mo26   Tomá¹ Gavenèiak 4/4     G M. Koperníka, Bílovec 3       7       10
-mo27   Ondøej Májek    4/4     G M. Koperníka, Bílovec 4       10      5
-mo28   Ondøej Bílka    2/4     G Lesní ètvr», Zlín     10      7       9
-mo29   Stanislav Basovník      7/8     G Masarykovo nám., Kromìøí¾     1       8       8
-mo30   Jan Matou¹ek    8/8     G J. Wolkera, Prostìjov 4       3       4