From 31a7ae3dea2fedeb59a5da8b594652b5af96fb85 Mon Sep 17 00:00:00 2001
From: Michal Cikatricis <xcikatr@mail.muni.cz>
Date: Wed, 2 Jun 2021 21:16:53 +0200
Subject: [PATCH] WIP: fixed Groups added playoff tree

---
 .../DesignTimeBuild/.dtbcache.v2              | Bin 73135 -> 73135 bytes
 .vs/TournamentManager/v16/.suo                | Bin 44032 -> 42496 bytes
 TournamentManager.csproj.user                 |   2 +-
 ...mentManager.csproj.CoreCompileInputs.cache |   2 +-
 ...rnamentManager.csproj.FileListAbsolute.txt |   2 +-
 ...amentManager.csproj.GenerateResource.cache | Bin 2201 -> 2272 bytes
 ...amentManager.csprojAssemblyReference.cache | Bin 102912 -> 102912 bytes
 .../net5.0-windows/TournamentManager.dll      | Bin 45568 -> 51712 bytes
 .../net5.0-windows/TournamentManager.pdb      | Bin 24624 -> 26920 bytes
 ...amentManager.src.ComputeControl.resources} | Bin
 .../net5.0-windows/ref/TournamentManager.dll  | Bin 12288 -> 13824 bytes
 obj/rider.project.restore.info                |   2 +-
 src/CalculateGroupsEventArgs.cs               |  12 --
 ...Designer.cs => ComputeControl.Designer.cs} |   4 +-
 ...{CalculateControl.cs => ComputeControl.cs} |  22 ++--
 ...culateControl.resx => ComputeControl.resx} |   0
 src/ComputeEventArgs.cs                       |  12 ++
 src/Group.cs                                  |  39 ++++++-
 src/GroupControl.cs                           |   1 +
 src/ManageTournamentForm.Designer.cs          |  14 +--
 src/ManageTournamentForm.cs                   | 103 ++++++++++++++----
 src/Match.cs                                  |   4 +-
 src/PlayOff.cs                                |   7 --
 src/PlayOffTree.cs                            |  64 +++++++++++
 src/PlayOffTreeNode.cs                        |  17 +++
 25 files changed, 244 insertions(+), 63 deletions(-)
 rename obj/Debug/net5.0-windows/{TournamentManager.src.CalculateControl.resources => TournamentManager.src.ComputeControl.resources} (100%)
 delete mode 100644 src/CalculateGroupsEventArgs.cs
 rename src/{CalculateControl.Designer.cs => ComputeControl.Designer.cs} (98%)
 rename src/{CalculateControl.cs => ComputeControl.cs} (55%)
 rename src/{CalculateControl.resx => ComputeControl.resx} (100%)
 create mode 100644 src/ComputeEventArgs.cs
 delete mode 100644 src/PlayOff.cs
 create mode 100644 src/PlayOffTree.cs
 create mode 100644 src/PlayOffTreeNode.cs

diff --git a/.vs/TournamentManager/DesignTimeBuild/.dtbcache.v2 b/.vs/TournamentManager/DesignTimeBuild/.dtbcache.v2
index e5076c70ac9cda529afde7927fc1dff71499ceb4..28511334a479f5b5701ef7bf215af0394f20c23a 100644
GIT binary patch
delta 591
zcma*iO)mpM7zgm#Z7YI$SM~mSaA57WtLjE@5FtVjnh=?GXKHC@o89eMk+?GlAH&gM
zKZS4dBuK=`!>WXcnB<qu&i<d-|J()9yCAAgl52JQ$mC{*r+BKsEKUmsql?_IG7E*Y
z&P`osmY!X*3e;dlE1O!f(%dk(t{X;%o9UvSW?3@7#yq<un7dmOzFlD(m1>z)nDD7@
zJL38_C-ul|>NBHRtm<heo+HR~&Z)VAz9+Y+pe5$w$MB?&l-y886W?}7ES$_sQ1kLA
znpckHLp&+#FeOjb#6Y9SUaeYnTwn94TVlRPRvRhvbLW7JY}rNE@f_}J+v_>)$0TX~
zn!Qr+XXUd-F*m$p(GlD(g>B~kxW_N?ng7N~OYWop4)u@a;d7wuW0Pfh_L8(z60SHt
zdQl%rpnjA@185Kpp<y(FM$s4=M+%xi?`snQxc~)Jh(PolVmHbSG_6SSIyAfj-OvTi
c&;u>d3T==05{Gu^fX;gTGKk#=G3BZM4U0X(mjD0&

delta 523
zcmb`CKTE?v7{-${1rZ#I_^*RjTofTRN!v6oYU3XqTE*5vAw#cs*LaxR$>jn%Ik>u%
zTl@%a9UZ#*F<krty7&Q1i`K=_>EV6f=i&E0!;wB5>DsF{&>F{16&A~|RO%tef+hk*
z<T@DGpk&&x-z!(3WkK5ncF#eUYhzHYSWXq-l508;p<-ECswE^8gJDa)J#NdF%)H!J
z=O-Gd%X2)Tf<zcH+9!d0P)}0VihNghCptLI%dX~Tn&?VCX^qufoj}fF))z+Ouw|rc
zWyTPI2Ux@kmFt;sHVhSA@B~lBy$Q4Xp{onB@v)fCwOGO_h%gm(KtX`Hq8liUbkb}m
z#dhv)y&eCIvw(xBa702J7dCIIl`VftF0@IUfUwXM2_nq5il*y(EQ%6J#I0X%j_V@d
zOE^y{evQ!Is4@02YJ4Btn8zd?e+rzZ=(~SrD{Iro|E4P&9t%SZ#l>}t9e}LB-X*>t
LWuHe`^>gV9l!~}#

diff --git a/.vs/TournamentManager/v16/.suo b/.vs/TournamentManager/v16/.suo
index 99bee51a68bf15ba9fd68d62c8344795d85ad1c2..feedc3ab649c204e2904e9047d10fef384fe17f3 100644
GIT binary patch
delta 4481
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
I-WXc{3x}nwB>(^b

delta 3444
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

diff --git a/TournamentManager.csproj.user b/TournamentManager.csproj.user
index d81df0b..3151280 100644
--- a/TournamentManager.csproj.user
+++ b/TournamentManager.csproj.user
@@ -4,7 +4,7 @@
     <ShowAllFiles>false</ShowAllFiles>
   </PropertyGroup>
   <ItemGroup>
-    <Compile Update="src\CalculateControl.cs">
+    <Compile Update="src\ComputeControl.cs">
       <SubType>UserControl</SubType>
     </Compile>
     <Compile Update="src\ExportControl.cs">
diff --git a/obj/Debug/net5.0-windows/TournamentManager.csproj.CoreCompileInputs.cache b/obj/Debug/net5.0-windows/TournamentManager.csproj.CoreCompileInputs.cache
index 14a5c34..a763995 100644
--- a/obj/Debug/net5.0-windows/TournamentManager.csproj.CoreCompileInputs.cache
+++ b/obj/Debug/net5.0-windows/TournamentManager.csproj.CoreCompileInputs.cache
@@ -1 +1 @@
-9c56342d8d0782585dfb5a8f145b7388446bfec3
+32b0d61a8a00098f0ff2a6864f4e5e9054b43933
diff --git a/obj/Debug/net5.0-windows/TournamentManager.csproj.FileListAbsolute.txt b/obj/Debug/net5.0-windows/TournamentManager.csproj.FileListAbsolute.txt
index 66ce1be..76fe7e1 100644
--- a/obj/Debug/net5.0-windows/TournamentManager.csproj.FileListAbsolute.txt
+++ b/obj/Debug/net5.0-windows/TournamentManager.csproj.FileListAbsolute.txt
@@ -52,4 +52,4 @@ C:\Users\micha\School\RiderProjects\c-sharp-semestral-project-1\obj\Debug\net5.0
 C:\Users\micha\School\RiderProjects\c-sharp-semestral-project-1\obj\Debug\net5.0-windows\TournamentManager.genruntimeconfig.cache
 C:\Users\micha\School\RiderProjects\c-sharp-semestral-project-1\obj\Debug\net5.0-windows\TournamentManager.src.GroupControl.resources
 C:\Users\micha\School\RiderProjects\c-sharp-semestral-project-1\obj\Debug\net5.0-windows\TournamentManager.src.ExportControl.resources
-C:\Users\micha\School\RiderProjects\c-sharp-semestral-project-1\obj\Debug\net5.0-windows\TournamentManager.src.CalculateControl.resources
+C:\Users\micha\School\RiderProjects\c-sharp-semestral-project-1\obj\Debug\net5.0-windows\TournamentManager.src.ComputeControl.resources
diff --git a/obj/Debug/net5.0-windows/TournamentManager.csproj.GenerateResource.cache b/obj/Debug/net5.0-windows/TournamentManager.csproj.GenerateResource.cache
index 31ceece9a93e9f4390f2c97b676c835609f78207..a6324fb688133d11bccf7fc3c90aa5696ff67aed 100644
GIT binary patch
delta 929
zcmY+C&ubGw6vs2WN!V$ccGvu<*(O<=CQVbdZ8V~_)E;6JqC^NKv|v4y7@^qhrkhlH
z5QBo+gBO`7G<fpr#XrES2gM%rQVRaM2%=ZPABgzg#IfYTe)kQZd2imEdE44Y?dffa
ztg}1Pl-uucINTogOpb+n!41?a_EK(TwR&OMtmZ7+9Jj0WO}Cfbly%a_9y+5eCmZaR
z(?>M+NH)R;c#vIL%G=gPEo-ecY-_a><YS+uB=NIf5E@`f*&sot%E8kE5He7QkgR3a
zHX7Bgpo0K|2<J9ymfh%LA@)JmT{`Rtu^maz41%X)!37idV%c5$!@#}8<(0LZZT)K`
z!k$YpB?=${hp<<Y?p768`Ppyhr6^5<OOJu56a-D}>HHlogPE>&^EfQ22V{8W`(kfm
zZ;OyaurlDICs6PfcceGow^3w6f}KR>1(|p}y6}m!m|#3-AFQ_hyQdVMb6BuxaA-fs
zgR3tpEu)D^;{whgR6+7jWN*trmJn<fnFiuYl*={FMg-#r;>&%Ryz%Y~KQJj+798pW
z$&|zWi$j=mRIoWm6CjSvR69LFdD4`Cd2na|<ZQ8(ndgCHf)$VjLH2Lvuwdtr;Y{pz
ze?+h%G8~C?yL9hLd~d5s$Wa0L)r4U6vst>|>3&?W5;znm<y#_kUFO$4A=o@JoSn<l
z=Ux)t#H3(lWH>kLuY0cjiD36Q6a0A>z!{?v(7UOxKi>1CI4d0TVsNhhKLyj3Fq>5d
dNtRtybW&iZqQ|i=G!2VD)9^$z4b!7}{sQJbuaW=&

delta 889
zcmZXS&ubG=5XbYfn~-giHm^-hnxwlXY0}0YO@kE;wU(kyL5-zIu!r^#(g?*iTQ@3#
zVov@z2t{5*nxjX(_)mDS;6X1UsCe<B^d_hmalS7;i#U+U%zoZ{XWoxbe49VN<7S)U
zuDj?RaJgJwzu3`JEFhk0qtPIJ;H9<o`uXZcy<|HZ<4(PK!`mx%HA|eJ-%UN9;IwG4
zS#y>v&AM~SZd`Tj^+I=Hzpyon4Tu-+6bp+LJ(eF-i_h8BRVeSN?jsZ|SJxUP$NtkO
zBDS;`i;Bm(#fHSJ9*@Q_QPZg{m+Osdd$n<4Y9>pFT|Jrg4yzvjO&;<Q!Y&O{ggq<a
zkU=pl)YJWUc}%h8>9h)z8h&#3a$kRZG~eB4%%aT1=Ob_da+8%r-%=86KV^~~rNF?c
zy>h<^zL#}L#g2jXk~>{)PhOC9DaDFledHcpepzc<Er_NSoB|Ay`<BVw(xm8!V$)!_
zf&7!Pi=QRSC^iGuPtKF6R5mSWW)+(S!%3v4zb^$cV55o^T`huPN`JN%AGT%Tn1XW@
z7`Vk^r;s%y%PBSwhHJd?y65_@VTc}3Og4;A_GRMshm*45LB-BeU_{BSPMz6dq}gKZ
zkb-5vA##Pz;)6>g5IwBe0vMje{4*`s9dukV*)UGocKGdapKO>{OdfaQpSlUfDilNv
syrI8$$nhLtV!@YSMN#vmXCM#bI1m`e?qM9;fpLru<Cqi1ArABZ2Cny=%K!iX

diff --git a/obj/Debug/net5.0-windows/TournamentManager.csprojAssemblyReference.cache b/obj/Debug/net5.0-windows/TournamentManager.csprojAssemblyReference.cache
index 8ec9cabf84c61390d17139e208b06a1c2e561174..fad52e5112686b1fe17ecd9e1f07ec50c3268c70 100644
GIT binary patch
delta 12516
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

delta 12515
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
KvKb56CiXv&{RgQ4

diff --git a/obj/Debug/net5.0-windows/TournamentManager.dll b/obj/Debug/net5.0-windows/TournamentManager.dll
index 513211d477b05fd7d7935f6e68d867d5c9833c9d..f913267a235359355f923b45a0a82f2e98e4e8ff 100644
GIT binary patch
literal 51712
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

literal 45568
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
P-MBpTx7YvwEbxB-<Gb_M

diff --git a/obj/Debug/net5.0-windows/TournamentManager.pdb b/obj/Debug/net5.0-windows/TournamentManager.pdb
index 3718a08aacd85fc4ec5c661428cd3a0b94b7fabc..e2a7d3eca6a21eb8e550166d0c0691d88aa0df9f 100644
GIT binary patch
delta 7829
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

delta 5533
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
E0q6>BOaK4?

diff --git a/obj/Debug/net5.0-windows/TournamentManager.src.CalculateControl.resources b/obj/Debug/net5.0-windows/TournamentManager.src.ComputeControl.resources
similarity index 100%
rename from obj/Debug/net5.0-windows/TournamentManager.src.CalculateControl.resources
rename to obj/Debug/net5.0-windows/TournamentManager.src.ComputeControl.resources
diff --git a/obj/Debug/net5.0-windows/ref/TournamentManager.dll b/obj/Debug/net5.0-windows/ref/TournamentManager.dll
index 9d23fe7715471eaeaa998cc797350f152a8eb0f7..0d05c167696644b2e9e1280cc0d81f971ea45da8 100644
GIT binary patch
literal 13824
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
Apa1{>

literal 12288
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

diff --git a/obj/rider.project.restore.info b/obj/rider.project.restore.info
index d820c47..1e68278 100644
--- a/obj/rider.project.restore.info
+++ b/obj/rider.project.restore.info
@@ -1 +1 @@
-16225768046431808
\ No newline at end of file
+16226427414345850
\ No newline at end of file
diff --git a/src/CalculateGroupsEventArgs.cs b/src/CalculateGroupsEventArgs.cs
deleted file mode 100644
index 2a16a29..0000000
--- a/src/CalculateGroupsEventArgs.cs
+++ /dev/null
@@ -1,12 +0,0 @@
-namespace TournamentManager
-{
-    public class CalculateGroupsEventArgs
-    {
-        public int GroupSize { get; }
-
-        public CalculateGroupsEventArgs(int groupSize)
-        {
-            GroupSize = groupSize;
-        }
-    }
-}
\ No newline at end of file
diff --git a/src/CalculateControl.Designer.cs b/src/ComputeControl.Designer.cs
similarity index 98%
rename from src/CalculateControl.Designer.cs
rename to src/ComputeControl.Designer.cs
index e7c195f..dac0386 100644
--- a/src/CalculateControl.Designer.cs
+++ b/src/ComputeControl.Designer.cs
@@ -1,7 +1,7 @@
 
 namespace TournamentManager.src
 {
-    partial class CalculateControl
+    partial class ComputeControl
     {
         /// <summary> 
         /// Required designer variable.
@@ -107,7 +107,7 @@ namespace TournamentManager.src
             this.Controls.Add(this.cbGroupSize);
             this.Controls.Add(this.label1);
             this.Controls.Add(this.btnGroups);
-            this.Name = "CalculateControl";
+            this.Name = "ComputeControl";
             this.Size = new System.Drawing.Size(490, 92);
             this.ResumeLayout(false);
             this.PerformLayout();
diff --git a/src/CalculateControl.cs b/src/ComputeControl.cs
similarity index 55%
rename from src/CalculateControl.cs
rename to src/ComputeControl.cs
index f8f1bd7..e0d3849 100644
--- a/src/CalculateControl.cs
+++ b/src/ComputeControl.cs
@@ -11,14 +11,17 @@ using System.Windows.Forms;
 
 namespace TournamentManager.src
 {
-    public partial class CalculateControl : UserControl
+    public partial class ComputeControl : UserControl
     {
-        public event CalculateGroupsEventArgsDelegate CalculateGroups;
+        public event ComputeEventArgsDelegate ComputeGroups;
+        public event ComputeEventArgsDelegate ComputePlayOff;
+
+        public delegate void ComputeEventArgsDelegate(object sender, ComputeEventArgs e);
+        protected void OnComputeGroups(ComputeEventArgs args) => ComputeGroups?.Invoke(this, args);
+        protected void OnComputePlayOff(ComputeEventArgs args) => ComputePlayOff?.Invoke(this, args);
 
-        public delegate void CalculateGroupsEventArgsDelegate(object sender, CalculateGroupsEventArgs e);
-        protected void OnCalculateGroups(CalculateGroupsEventArgs args) => CalculateGroups?.Invoke(this, args);
         
-        public CalculateControl()
+        public ComputeControl()
         {
             InitializeComponent();
             Func<int, int, int, IEnumerable<string> > createRange = (x, y, z) =>
@@ -36,12 +39,17 @@ namespace TournamentManager.src
                 //TODO: throw some message
                 return;
             }
-            OnCalculateGroups(new CalculateGroupsEventArgs(int.Parse(cbGroupSize.SelectedItem.ToString()!)));
+            OnComputeGroups(new ComputeEventArgs(int.Parse(cbGroupSize.SelectedItem.ToString()!)));
         }
 
         private void btnPlayOff_Click(object sender, EventArgs e)
         {
-            //TODO: Calculate playoff
+            if (cbEliminate.SelectedItem == null)
+            {
+                //TODO: throw some message
+                return;
+            }
+            OnComputePlayOff(new ComputeEventArgs(int.Parse(cbEliminate.SelectedItem.ToString()!)));
         }
     }
 }
diff --git a/src/CalculateControl.resx b/src/ComputeControl.resx
similarity index 100%
rename from src/CalculateControl.resx
rename to src/ComputeControl.resx
diff --git a/src/ComputeEventArgs.cs b/src/ComputeEventArgs.cs
new file mode 100644
index 0000000..0f2bab3
--- /dev/null
+++ b/src/ComputeEventArgs.cs
@@ -0,0 +1,12 @@
+namespace TournamentManager
+{
+    public class ComputeEventArgs
+    {
+        public int Amount { get; }
+
+        public ComputeEventArgs(int amount)
+        {
+            Amount = amount;
+        }
+    }
+}
\ No newline at end of file
diff --git a/src/Group.cs b/src/Group.cs
index 6bb10c6..55aa62d 100644
--- a/src/Group.cs
+++ b/src/Group.cs
@@ -1,4 +1,6 @@
-using System.Collections.Generic;
+using System;
+using System.Collections.Generic;
+using System.Linq;
 using System.Runtime.Serialization;
 
 namespace TournamentManager
@@ -6,12 +8,43 @@ namespace TournamentManager
     public class Group : ISerializable
     {
         public List<Participant> Members { get; set; }
-        public List<Match> Matches { get; set; }
+        public int[,] Matches { get; set; }
 
         public Group()
         {
             Members = new List<Participant>();
-            Matches = new List<Match>();
+        }
+
+        public Participant ExtractGroupMember(string name)
+        {
+            Participant? result;
+            if ((result = Members.FirstOrDefault(m =>
+                name.Equals($"{m.FirstName} {m.Surname}"))) == null)
+            {
+                throw new Exception("I should define my own exception fr");
+            }
+
+            return result;
+
+
+        }
+        public int GetIndex(Participant opponent)
+        {
+            if (!Members.Contains(opponent))
+                throw new Exception("this should not happen");
+            return Members.FindIndex(x => x.Equals(opponent));
+        }
+
+        public (int firstIndex, int secondIndex) GetIndices(Participant firstOpponent, Participant secondOpponent)
+        {
+            return (firstIndex: GetIndex(firstOpponent), secondIndex: GetIndex(secondOpponent));
+        }
+
+        public (int first, int second) GetScore(Participant firstOpponent, Participant secondOpponent)
+        {
+            var indices = GetIndices(firstOpponent, secondOpponent);
+            return (Matches[indices.firstIndex, indices.secondIndex],
+                Matches[indices.secondIndex, indices.firstIndex]);
         }
         
         public void GetObjectData(SerializationInfo info, StreamingContext context)
diff --git a/src/GroupControl.cs b/src/GroupControl.cs
index 7d7a44c..38a2ba9 100644
--- a/src/GroupControl.cs
+++ b/src/GroupControl.cs
@@ -35,6 +35,7 @@ namespace TournamentManager.src
 
         public void AddGroups(int groupCount)
         {
+            cbGroup.Items.Clear();
             for (int i = 0; i < groupCount; i++)
             {
                 cbGroup.Items.Add($"Group {i + 1}");
diff --git a/src/ManageTournamentForm.Designer.cs b/src/ManageTournamentForm.Designer.cs
index 5fad2fd..9871f4a 100644
--- a/src/ManageTournamentForm.Designer.cs
+++ b/src/ManageTournamentForm.Designer.cs
@@ -38,7 +38,7 @@ namespace TournamentManager
             this.groupBox3 = new System.Windows.Forms.GroupBox();
             this.groupControl = new TournamentManager.src.GroupControl();
             this.groupBox4 = new System.Windows.Forms.GroupBox();
-            this.calculateControl = new TournamentManager.src.CalculateControl();
+            this.computeControl = new TournamentManager.src.ComputeControl();
             this.groupBox5 = new System.Windows.Forms.GroupBox();
             this.groupBox1.SuspendLayout();
             this.groupBox2.SuspendLayout();
@@ -100,7 +100,7 @@ namespace TournamentManager
             // 
             // groupBox4
             // 
-            this.groupBox4.Controls.Add(this.calculateControl);
+            this.groupBox4.Controls.Add(this.computeControl);
             this.groupBox4.Location = new System.Drawing.Point(395, 172);
             this.groupBox4.Name = "groupBox4";
             this.groupBox4.Size = new System.Drawing.Size(501, 138);
@@ -110,10 +110,10 @@ namespace TournamentManager
             // 
             // calculateControl
             // 
-            this.calculateControl.Location = new System.Drawing.Point(5, 22);
-            this.calculateControl.Name = "calculateControl";
-            this.calculateControl.Size = new System.Drawing.Size(491, 111);
-            this.calculateControl.TabIndex = 0;
+            this.computeControl.Location = new System.Drawing.Point(5, 22);
+            this.computeControl.Name = "computeControl";
+            this.computeControl.Size = new System.Drawing.Size(491, 111);
+            this.computeControl.TabIndex = 0;
             // 
             // groupBox5
             // 
@@ -154,6 +154,6 @@ namespace TournamentManager
         private src.GroupControl groupControl;
         private System.Windows.Forms.GroupBox groupBox4;
         private System.Windows.Forms.GroupBox groupBox5;
-        private src.CalculateControl calculateControl;
+        private src.ComputeControl computeControl;
     }
 }
\ No newline at end of file
diff --git a/src/ManageTournamentForm.cs b/src/ManageTournamentForm.cs
index a2797a4..abdbca6 100644
--- a/src/ManageTournamentForm.cs
+++ b/src/ManageTournamentForm.cs
@@ -3,6 +3,8 @@ using System.Collections.Generic;
 using System.Collections.ObjectModel;
 using System.Collections.Specialized;
 using System.Linq;
+using System.Runtime.CompilerServices;
+using System.Threading.Tasks;
 using System.Windows.Forms;
 
 namespace TournamentManager
@@ -13,23 +15,29 @@ namespace TournamentManager
         private const string EditParticipantError = "Participant with this name is already signed in competition";
         private const string ErrorCaption = "Error";
         private readonly ObservableCollection<Participant> _participants = new();
-        private readonly ObservableCollection<Group> _groups = new();
+        private List<Group> _groups;
+        private PlayOffTree _playOff;
         
         public ManageTournamentForm(string path)
         {
             InitializeComponent();
+            
             enterantCntrl.SubmitParticipantClick += OnSubmitParticipantClicked;
             _participants.CollectionChanged += HandleParticipantsChanged;
             manageParticipantsControl.ParticipantsModified += HandleOnParticipantRemovedClicked;
-            calculateControl.CalculateGroups += HandleOnCalculateGroupsClicked;
+            computeControl.ComputeGroups += HandleOnComputeGroupsClicked;
+            computeControl.ComputePlayOff += HandleOnComputePlayOffClicked;
             groupControl.CbGroupItemSelected += HandleOnGroupSelected;
             groupControl.OpponentsSelected += HandleOnGroupOpponentsSelected;
             groupControl.SubmitClicked += HandleOnGroupControlSubmitClicked;
+            
             foreach (var p in _participants)
             {
                 manageParticipantsControl.CbAddParticipant($"{p.FirstName} {p.Surname}");
             }
         }
+
+        #region eventHandlers
         
         protected void OnSubmitParticipantClicked(object sender, EventArgs e)
         {
@@ -76,14 +84,14 @@ namespace TournamentManager
             
         }
 
-        private void HandleOnCalculateGroupsClicked(object sender, CalculateGroupsEventArgs e)
+        private void HandleOnComputeGroupsClicked(object sender, ComputeEventArgs e)
         {
-            var numberOfGroups = (_participants.Count - 1) / e.GroupSize + 1;
+            var numberOfGroups = (_participants.Count - 1) / e.Amount + 1;
             var groupIndex = 0;
             var orderedParticipants = _participants.OrderBy(x => x.Rating);
 
             groupControl.AddGroups(numberOfGroups);
-            
+            _groups = new List<Group>();
             for (int i = 0; i < numberOfGroups; i++)
             {
                 _groups.Add(new Group());
@@ -97,7 +105,30 @@ namespace TournamentManager
                     groupIndex = 0;
                 }
                 _groups[groupIndex].Members.Add(participant);
+            }
 
+            foreach (var group in _groups)
+            {
+                var memberCount = group.Members.Count;
+                group.Matches = new int[memberCount, memberCount];
+            }
+        }
+        
+        private async void HandleOnComputePlayOffClicked(object sender, ComputeEventArgs e)
+        {
+            try
+            {
+                var toKeep = (int)Math.Round(((double)_participants.Count / (double)100) * (double)(100 - e.Amount), 0);
+                var sortedParticipants = (await ComputeAllGroupOrders()).Take(toKeep).ToList();
+                _playOff = new PlayOffTree(sortedParticipants);
+            }
+            catch (Exception ex)
+            {
+                // This throws the exception in a UI thread as not to get "swallowed"
+
+                // Invoke -> runs the code on the UI thread as soon as possible, finishes executing only after
+                // the code invoked on the UI thread is finished
+                Invoke(new Action(() => throw ex));
             }
         }
 
@@ -122,14 +153,11 @@ namespace TournamentManager
                 return;
             }
 
-            var match = _groups[e.GroupIndex].Matches.FirstOrDefault(m =>
-                e.FirstOpponent.Equals($"{m.Opponents.Item1.FirstName} {m.Opponents.Item1.Surname}") &&
-                e.SecondOpponent.Equals($"{m.Opponents.Item2.FirstName} {m.Opponents.Item2.Surname}"));
-            if (match == null )
-            {
-                return;
-            }
-            groupControl.SetTextBoxes(match.Scores);
+            var group = _groups[e.GroupIndex];
+            var firstOpponent = group.ExtractGroupMember(e.FirstOpponent);
+            var secondOpponent = group.ExtractGroupMember(e.SecondOpponent);
+            
+            groupControl.SetTextBoxes(group.GetScore(firstOpponent, secondOpponent));
         }
         
         private void HandleOnGroupControlSubmitClicked(object sender, MatchSelectedEventArgs e)
@@ -142,13 +170,50 @@ namespace TournamentManager
             var group = _groups[e.GroupIndex];
             Func<string[], Participant> matchOpponent = x => group.Members
                 .FirstOrDefault(p => p.FirstName.Equals(x[0]) && p.Surname.Equals(x[1]));
-
-            var firstOpponentName = e.FirstOpponent.Split(" ");
-            var secondOpponentName = e.SecondOpponent.Split(" ");
-            group.Matches.Add(new Match(new Tuple<Participant, Participant>
-                (matchOpponent(firstOpponentName), matchOpponent(secondOpponentName)),
-                e.Score ));
             
+            var firstOpponent = matchOpponent(e.FirstOpponent.Split(" "));
+            var secondOpponent = matchOpponent(e.SecondOpponent.Split(" "));
+            group.Matches[group.GetIndex(firstOpponent), group.GetIndex(secondOpponent)] = e.Score.first;
+            group.Matches[group.GetIndex(secondOpponent), group.GetIndex(firstOpponent)] = e.Score.second;
+        }
+        #endregion
+        
+        #region HelperFunctions
+        
+        private Task<List<Participant>> ComputeAllGroupOrders()
+        {
+            return Task.Factory.StartNew(() =>
+            {
+                return _groups.AsParallel().SelectMany(x => ComputeGroupOrder(x))
+                    .OrderByDescending(x => x.Item2)
+                    .ThenByDescending(x => x.Item3)
+                    .Select(x => x.Item1)
+                    .ToList();
+            }, TaskCreationOptions.None);
+
         }
+        
+        private List<Tuple<Participant, int, int>> ComputeGroupOrder(Group group)
+        {
+            return group.Members.Select(m =>
+            {
+                var memberCount = group.Members.Count;
+                var index = group.GetIndex(m);
+                var victories = 0;
+                var points = 0;
+                for (int i = 0; i < memberCount; i++)
+                {
+                    points += group.Matches[index, i];
+                    if (group.Matches[index, i] > group.Matches[i, index])
+                    {
+                        victories++;
+                    }
+                }
+
+                return new Tuple<Participant, int, int>(m, victories, points);
+            }).ToList();
+        }
+
+        #endregion
     }
 }
\ No newline at end of file
diff --git a/src/Match.cs b/src/Match.cs
index a385839..30fe410 100644
--- a/src/Match.cs
+++ b/src/Match.cs
@@ -1,4 +1,5 @@
 using System;
+using System.Security.Cryptography;
 
 namespace TournamentManager
 {
@@ -7,6 +8,7 @@ namespace TournamentManager
         public Tuple<Participant, Participant> Opponents { get; set; }
         public (int first, int second) Scores { get; set; }
 
+        public Match() { }
         public Match(Tuple<Participant, Participant> opponents, (int first, int second) scores)
         {
             if (opponents.Item1.Equals(opponents.Item2))
@@ -16,8 +18,6 @@ namespace TournamentManager
 
             Opponents = opponents;
             Scores = scores;
-
-
         }
     }
     
diff --git a/src/PlayOff.cs b/src/PlayOff.cs
deleted file mode 100644
index f1cd8f0..0000000
--- a/src/PlayOff.cs
+++ /dev/null
@@ -1,7 +0,0 @@
-namespace TournamentManager
-{
-    public class PlayOff
-    {
-        
-    }
-}
\ No newline at end of file
diff --git a/src/PlayOffTree.cs b/src/PlayOffTree.cs
new file mode 100644
index 0000000..030f351
--- /dev/null
+++ b/src/PlayOffTree.cs
@@ -0,0 +1,64 @@
+using System;
+using System.Collections.Generic;
+using System.Linq;
+
+namespace TournamentManager
+{
+    public class PlayOffTree
+    {
+        public PlayOffTreeNode Root { get; }
+
+        public PlayOffTree( List<Participant> participants)
+        {
+            Root = ComputeTree(participants);
+        }
+
+        private PlayOffTreeNode ComputeTree(List<Participant> participants)
+        {
+            var depth = CalculateTreeDepth(participants.Count);
+            var unevenHalf = (int)Math.Pow(2, depth - 1);
+            var participantsUpper = participants.Take(unevenHalf).ToList();
+            var participantsLower = participants.Skip(unevenHalf).ToList();
+            return ComputeTreeStep(ref participantsUpper, ref participantsLower, depth);
+        }
+
+        private PlayOffTreeNode ComputeTreeStep(ref List<Participant> participantsUpper,
+            ref List<Participant> participantsLower, int depth)
+        {
+            var match = new Match();
+            var node = new PlayOffTreeNode(match);
+            switch (depth)
+            {
+                case 1:
+                {
+                    var upper = participantsUpper.Last();
+                    var lower = participantsLower.FirstOrDefault();
+                    match.Opponents = new Tuple<Participant, Participant>(upper, lower);
+                    participantsUpper.Remove(upper);
+                    participantsLower.Remove(lower);
+                    break;
+                }
+                default:
+                {
+                    node.PredecessorLeft = ComputeTreeStep(ref participantsUpper, ref participantsLower, depth - 1);
+                    node.PredecessorRight = ComputeTreeStep(ref participantsUpper, ref participantsLower, depth - 1);
+                    break;
+                }
+            }
+
+            return node;
+        }
+
+        private int CalculateTreeDepth(int minSize)
+        {
+            var size = 1;
+            while (size < minSize)
+            {
+                size *= 2;
+            }
+
+            return (int)Math.Log2(size);
+        }
+
+    }
+}
\ No newline at end of file
diff --git a/src/PlayOffTreeNode.cs b/src/PlayOffTreeNode.cs
new file mode 100644
index 0000000..ef6388f
--- /dev/null
+++ b/src/PlayOffTreeNode.cs
@@ -0,0 +1,17 @@
+using System;
+using TournamentManager.src;
+
+namespace TournamentManager
+{
+    public class PlayOffTreeNode
+    {
+        public Match TreeMatch { get; set; }
+        public PlayOffTreeNode PredecessorLeft { get; set; }
+        public PlayOffTreeNode PredecessorRight { get; set; }
+
+        public PlayOffTreeNode( Match match)
+        {
+            TreeMatch = match;
+        }
+    }
+}
\ No newline at end of file
-- 
GitLab