digraph teams { node [fontname = "JetBrains Mono"]; overlap = false; splines = polyline; // level 0 DEFCON_QUALS [style="bold" href="https://quals.2022.nautilus.institute/dashboard"]; // level 1 // team clusters (red) subgraph { node [color="#db4437" fontcolor="#db4437"]; "perfect r✪✪✪t" [href="https://ctftime.org/team/176403"] "Balsn.217@TSJ.tw" [href="https://ctftime.org/team/189868"] "The Duck" [href="https://ctftime.org/team/111501"] "Sauercloud" [href="https://ctftime.org/team/54748"] "Water Paddler" [href="https://ctftime.org/team/155019"] "PTB_WTL" [href="https://ctftime.org/team/119975"] "./V /home/r/.bin/tw" [href="https://ctftime.org/team/189869"] "Straw Hat" [href="https://ctftime.org/team/19208"] "PPP" [href="https://ctftime.org/team/284"] "Katzebin" [href="https://ctftime.org/team/141539"] "StarBugs" [href="https://ctftime.org/team/152239"] "Shellphish" [href="https://ctftime.org/team/285"] "r3kapig" [href="https://ctftime.org/team/58979"] "DiceGuesser" [href="https://ctftime.org/team/182504"] "OSUSEC" [href="https://ctftime.org/team/12858"] "organizers" [href="https://ctftime.org/team/42934"] } // level 2 // individual teams (blue) subgraph { node [color="#4285f4" fontcolor="#4285f4"]; // Sauercloud (Germany) "KITCTF" [href="https://ctftime.org/team/7221"]; "Eat Sleep Pwn Repeat" [href="https://ctftime.org/team/15712"]; "Flux Fingers" [href="https://ctftime.org/team/551"]; "Red Rocket" [href="https://ctftime.org/team/48677"]; "Alles!" [href="https://ctftime.org/team/18419"]; "ENOFLAG" [href="https://ctftime.org/team/1438"]; "FAUST" [href="https://ctftime.org/team/550"]; "WizardsOfDos" [href="https://ctftime.org/team/561"]; "Squareroots" [href="https://ctftime.org/team/554"]; "saarsec" [href="https://ctftime.org/team/15337"]; // perfect rooot "perfect blue" [href="https://ctftime.org/team/53802"]; "r00timentary" [href="https://ctftime.org/team/32783"]; "Samsung Research" [href=""]; // Balsn.217@TSJ.tw "Balsn" [href="https://ctftime.org/team/16978"]; "217" [href="https://ctftime.org/team/5160"]; "TSJ" [href="https://ctftime.org/team/150366"]; "HITCON" [href="https://ctftime.org/team/8299"]; // PTB_WTL "PwnThyBytes" [href="https://ctftime.org/team/59199"]; "WreckTheLine" [href="https://ctftime.org/team/57908"]; // ./V /home/r/.bin/tw "./Vespiary" [href="https://ctftime.org/team/80092"]; "RicercaSec" [href=""]; "binja" [href="https://ctftime.org/team/9083"]; "TokyoWesterns" [href="https://ctftime.org/team/12599"]; // Straw Hat "Nu1L" [href="https://ctftime.org/team/19208"]; "W&M" [href="https://ctftime.org/team/54666"]; "" [href=""]; // DiceGuesser "DiceGang" [href="https://ctftime.org/team/109452"]; "SuperGuesser" [href="https://ctftime.org/team/130817"]; // StarBugs "CodeRed" [href="https://ctftime.org/team/4004"]; "GYG" [href="https://ctftime.org/team/33362"]; "SED" [href="https://ctftime.org/team/70332"]; // Katzebin "AAA" [href=""]; "Oops" [href="https://ctftime.org/team/4419"]; "Tencent" [href="https://ctftime.org/team/32578"]; // r3kapig "Eur3kA" [href="https://ctftime.org/team/48512"]; "FlappyPig" [href="https://ctftime.org/team/12692"]; // organizers "secret.club" [href=""]; "polyflag" [href="https://ctftime.org/team/112451"]; "excusemewtf" [href="https://ctftime.org/team/104977/"]; "the cr0wn" [href="https://ctftime.org/team/48976/"]; } // level 3 // teams of the above (green) subgraph { node [color="#228B22" fontcolor="#228B22"]; // TSJ "10sec" [href="https://ctftime.org/team/61603"]; "BambooFox" [href="https://ctftime.org/team/9871"]; "Goburin'" [href="https://ctftime.org/team/111613"]; "NCtfU" [href="https://ctftime.org/team/139610"]; "Ret2NOP" [href="https://ctftime.org/team/139617"]; // polyflag "flagbot" [href="https://ctftime.org/team/34878"]; "polygl0ts" [href="https://ctftime.org/team/53791"]; // ESPR "StratumAuhuur" [href="https://ctftime.org/team/5317"]; } // level 4 // teams of the teams of the teams of the clusters (this is getting wild) subgraph { node [color="#12b2af" fontcolor="#000000"]; "CCCAC" [href="https://ctftime.org/team/555"]; "Stratum0" [href="https://ctftime.org/team/1684"]; } // level 1 -> level 0 // primary edges subgraph { edge [len=3]; "perfect r✪✪✪t" -> DEFCON_QUALS [style="bold"]; "Balsn.217@TSJ.tw" -> DEFCON_QUALS [style="bold"]; "The Duck" -> DEFCON_QUALS [style="bold"]; "Sauercloud" -> DEFCON_QUALS [style="bold"]; "Water Paddler" -> DEFCON_QUALS [style="bold"]; "PTB_WTL" -> DEFCON_QUALS [style="bold"]; "./V /home/r/.bin/tw" -> DEFCON_QUALS [style="bold"]; "Straw Hat" -> DEFCON_QUALS [style="bold"]; "PPP" -> DEFCON_QUALS [style="bold"]; "Katzebin" -> DEFCON_QUALS [style="bold"]; "StarBugs" -> DEFCON_QUALS [style="bold"]; "Shellphish" -> DEFCON_QUALS [style="bold"]; "r3kapig" -> DEFCON_QUALS [style="bold"]; "DiceGuesser" -> DEFCON_QUALS [style="bold"]; "OSUSEC" -> DEFCON_QUALS [style="bold"]; "organizers" -> DEFCON_QUALS [style="bold"]; } // level 2 -> level 1 // secondary edges (teams to clusters) subgraph { edge [weight=1 style="dashed" color="grey"]; // Sauercloud (Germany) "KITCTF" -> "Sauercloud"; "Eat Sleep Pwn Repeat" -> "Sauercloud"; "Flux Fingers" -> "Sauercloud"; "Red Rocket" -> "Sauercloud"; "Alles!" -> "Sauercloud"; "ENOFLAG" -> "Sauercloud"; "FAUST" -> "Sauercloud"; "WizardsOfDos" -> "Sauercloud"; "Squareroots" -> "Sauercloud"; "saarsec" -> "Sauercloud"; // perfect rooot "perfect blue" ->"perfect r✪✪✪t"; "r00timentary" -> "perfect r✪✪✪t"; "Samsung Research" -> "perfect r✪✪✪t"; // Balsn.217@TSJ.tw "Balsn" -> "Balsn.217@TSJ.tw"; "217" -> "Balsn.217@TSJ.tw"; "TSJ" -> "Balsn.217@TSJ.tw"; "HITCON" -> "Balsn.217@TSJ.tw"; // PTB_WTL "PwnThyBytes" -> "PTB_WTL"; "WreckTheLine" -> "PTB_WTL"; // ./V /home/r/.bin/tw "./Vespiary" -> "./V /home/r/.bin/tw"; "RicercaSec" -> "./V /home/r/.bin/tw"; "binja" -> "./V /home/r/.bin/tw"; "TokyoWesterns" -> "./V /home/r/.bin/tw"; // Straw Hat "Nu1L" -> "Straw Hat"; "W&M" -> "Straw Hat"; "" -> "Straw Hat"; // DiceGuesser "DiceGang" -> "DiceGuesser"; "SuperGuesser" -> "DiceGuesser"; // StarBugs "CodeRed" -> "StarBugs"; "GYG" -> "StarBugs"; "SED" -> "StarBugs"; // Katzebin "AAA" -> "Katzebin"; "Oops" -> "Katzebin"; "Tencent" -> "Katzebin"; // r3kapig "Eur3kA" -> "r3kapig"; "FlappyPig" -> "r3kapig"; // organizers "secret.club" -> "organizers"; "polyflag" -> "organizers"; "excusemewtf" -> "organizers"; "the cr0wn" -> "organizers"; } // level 3 -> level 2 // ternary edges (people to teams) subgraph { edge [weight=1 style="dashed" color="grey"]; // TSJ "10sec" -> "TSJ"; "BambooFox" -> "TSJ"; "Goburin'" -> "TSJ"; "NCtfU" -> "TSJ"; "Ret2NOP" -> "TSJ"; // polyflag "flagbot" -> "polyflag"; "polygl0ts" -> "polyflag"; // ESPR "KITCTF" -> "Eat Sleep Pwn Repeat"; "StratumAuhuur" -> "Eat Sleep Pwn Repeat"; } // level 4 -> level 3 // quadinary (how do you call this?) edges subgraph { edge [weight=1 style="dashed" color="grey"]; // StratumAuhuur "Stratum0" -> "StratumAuhuur"; "CCCAC" -> "StratumAuhuur"; } }