diff --git a/.docker-postgres-init/01_init.sql b/.docker-postgres-init/01_init.sql deleted file mode 100644 index c568e27..0000000 --- a/.docker-postgres-init/01_init.sql +++ /dev/null @@ -1,6 +0,0 @@ --- Note: It's highly recommended to use more secure passwords - --- create db/user for application data/drizzle orm -CREATE USER app_svc WITH PASSWORD 'password'; -CREATE DATABASE app_db; -GRANT ALL PRIVILEGES ON DATABASE app_db TO app_svc; diff --git a/brackets/10.json b/brackets/10.json new file mode 100644 index 0000000..9330896 --- /dev/null +++ b/brackets/10.json @@ -0,0 +1,317 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 3, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 5, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 7, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + } + ], + [ + { + "lid": 8, + "round": 1, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 9, + "round": 1, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 5, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 1, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 11, + "round": 1, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_seed": 6, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 18, + "round": 2, + "order": 11, + "bye": false, + "home_from_lid": 8, + "home_from_loser": false, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 19, + "round": 2, + "order": 12, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 23, + "round": 3, + "order": 16, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 25, + "round": 4, + "order": 18, + "bye": false, + "home_from_lid": 23, + "home_from_loser": false, + "away_from_lid": 24, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 26, + "round": 5, + "order": 19, + "bye": false, + "home_from_lid": 25, + "home_from_loser": false, + "away_from_lid": 25, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 10, + "home_from_loser": true + }, + { + "lid": 13, + "round": 0, + "order": 7, + "bye": false, + "home_from_lid": 11, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 8, + "home_from_loser": true + }, + { + "lid": 15, + "round": 0, + "order": 8, + "bye": false, + "home_from_lid": 9, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 9, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 10, + "bye": false, + "home_from_lid": 8, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 20, + "round": 2, + "order": 13, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 16, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 2, + "order": 14, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 22, + "round": 3, + "order": 15, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 24, + "round": 4, + "order": 17, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 22, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/12.json b/brackets/12.json new file mode 100644 index 0000000..9639a0c --- /dev/null +++ b/brackets/12.json @@ -0,0 +1,375 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 3, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 5, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 7, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 8, + "round": 1, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 9, + "round": 1, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 10, + "round": 1, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 11, + "round": 1, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 28, + "round": 2, + "order": 17, + "bye": false, + "home_from_lid": 8, + "home_from_loser": false, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 29, + "round": 2, + "order": 18, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 34, + "round": 3, + "order": 23, + "bye": false, + "home_from_lid": 28, + "home_from_loser": false, + "away_from_lid": 29, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 37, + "round": 4, + "order": 26, + "bye": false, + "home_from_lid": 34, + "home_from_loser": false, + "away_from_lid": 36, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 38, + "round": 5, + "order": 27, + "bye": false, + "home_from_lid": 37, + "home_from_loser": false, + "away_from_lid": 37, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 20, + "round": 0, + "order": 9, + "bye": false, + "home_from_lid": 11, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 21, + "round": 0, + "order": 10, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 22, + "round": 0, + "order": 11, + "bye": false, + "home_from_lid": 9, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 23, + "round": 0, + "order": 12, + "bye": false, + "home_from_lid": 8, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 24, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": 11, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 25, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 26, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": 9, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 27, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": 8, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 30, + "round": 2, + "order": 19, + "bye": false, + "home_from_lid": 24, + "home_from_loser": false, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + }, + { + "lid": 31, + "round": 2, + "order": 20, + "bye": false, + "home_from_lid": 26, + "home_from_loser": false, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 32, + "round": 3, + "order": 21, + "bye": false, + "home_from_lid": 28, + "home_from_loser": true, + "away_from_lid": 30, + "away_from_loser": false, + "reset": false + }, + { + "lid": 33, + "round": 3, + "order": 22, + "bye": false, + "home_from_lid": 29, + "home_from_loser": true, + "away_from_lid": 31, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 35, + "round": 4, + "order": 24, + "bye": false, + "home_from_lid": 32, + "home_from_loser": false, + "away_from_lid": 33, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 36, + "round": 5, + "order": 25, + "bye": false, + "home_from_lid": 34, + "home_from_loser": true, + "away_from_lid": 35, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/13.json b/brackets/13.json new file mode 100644 index 0000000..5aab3a1 --- /dev/null +++ b/brackets/13.json @@ -0,0 +1,401 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 13, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 3, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 5, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 7, + "round": 0, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 8, + "round": 1, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 9, + "round": 1, + "order": 8, + "bye": false, + "home_from_lid": 2, + "home_from_loser": false, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 10, + "round": 1, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 11, + "round": 1, + "order": 10, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 24, + "round": 2, + "order": 16, + "bye": false, + "home_from_lid": 8, + "home_from_loser": false, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 25, + "round": 2, + "order": 17, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 30, + "round": 3, + "order": 22, + "bye": false, + "home_from_lid": 24, + "home_from_loser": false, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 33, + "round": 4, + "order": 25, + "bye": false, + "home_from_lid": 30, + "home_from_loser": false, + "away_from_lid": 32, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 34, + "round": 5, + "order": 26, + "bye": false, + "home_from_lid": 33, + "home_from_loser": false, + "away_from_lid": 33, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 11, + "home_from_loser": true + }, + { + "lid": 13, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 1, + "home_from_loser": true + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 10, + "home_from_loser": true + }, + { + "lid": 15, + "round": 0, + "order": 11, + "bye": false, + "home_from_lid": 2, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 16, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 9, + "home_from_loser": true + }, + { + "lid": 17, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 5, + "home_from_loser": true + }, + { + "lid": 18, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 8, + "home_from_loser": true + }, + { + "lid": 19, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 7, + "home_from_loser": true + } + ], + [ + { + "lid": 20, + "round": 1, + "order": 12, + "bye": false, + "home_from_lid": 11, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": 9, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": 8, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 26, + "round": 2, + "order": 18, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 27, + "round": 2, + "order": 19, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 28, + "round": 3, + "order": 20, + "bye": false, + "home_from_lid": 24, + "home_from_loser": true, + "away_from_lid": 26, + "away_from_loser": false, + "reset": false + }, + { + "lid": 29, + "round": 3, + "order": 21, + "bye": false, + "home_from_lid": 25, + "home_from_loser": true, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 31, + "round": 4, + "order": 23, + "bye": false, + "home_from_lid": 28, + "home_from_loser": false, + "away_from_lid": 29, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 32, + "round": 5, + "order": 24, + "bye": false, + "home_from_lid": 30, + "home_from_loser": true, + "away_from_lid": 31, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/14.json b/brackets/14.json new file mode 100644 index 0000000..c783c8d --- /dev/null +++ b/brackets/14.json @@ -0,0 +1,407 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 13, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 3, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 5, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_seed": 14, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 7, + "round": 0, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 8, + "round": 1, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 9, + "round": 1, + "order": 10, + "bye": false, + "home_from_lid": 2, + "home_from_loser": false, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 10, + "round": 1, + "order": 11, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 11, + "round": 1, + "order": 12, + "bye": false, + "home_from_lid": 6, + "home_from_loser": false, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 24, + "round": 2, + "order": 19, + "bye": false, + "home_from_lid": 8, + "home_from_loser": false, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 25, + "round": 2, + "order": 20, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 30, + "round": 3, + "order": 25, + "bye": false, + "home_from_lid": 24, + "home_from_loser": false, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 33, + "round": 4, + "order": 28, + "bye": false, + "home_from_lid": 30, + "home_from_loser": false, + "away_from_lid": 32, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 34, + "round": 5, + "order": 29, + "bye": false, + "home_from_lid": 33, + "home_from_loser": false, + "away_from_lid": 33, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 11, + "home_from_loser": true + }, + { + "lid": 13, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 1, + "home_from_loser": true + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 10, + "home_from_loser": true + }, + { + "lid": 15, + "round": 0, + "order": 13, + "bye": false, + "home_from_lid": 2, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 16, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 9, + "home_from_loser": true + }, + { + "lid": 17, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 5, + "home_from_loser": true + }, + { + "lid": 18, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 8, + "home_from_loser": true + }, + { + "lid": 19, + "round": 0, + "order": 14, + "bye": false, + "home_from_lid": 6, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 20, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": 11, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 17, + "bye": false, + "home_from_lid": 9, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 18, + "bye": false, + "home_from_lid": 8, + "home_from_loser": true, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 26, + "round": 2, + "order": 21, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 27, + "round": 2, + "order": 22, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 28, + "round": 3, + "order": 23, + "bye": false, + "home_from_lid": 24, + "home_from_loser": true, + "away_from_lid": 26, + "away_from_loser": false, + "reset": false + }, + { + "lid": 29, + "round": 3, + "order": 24, + "bye": false, + "home_from_lid": 25, + "home_from_loser": true, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 31, + "round": 4, + "order": 26, + "bye": false, + "home_from_lid": 28, + "home_from_loser": false, + "away_from_lid": 29, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 32, + "round": 5, + "order": 27, + "bye": false, + "home_from_lid": 30, + "home_from_loser": true, + "away_from_lid": 31, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/15.json b/brackets/15.json new file mode 100644 index 0000000..a263538 --- /dev/null +++ b/brackets/15.json @@ -0,0 +1,413 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 13, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 3, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_seed": 15, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 5, + "round": 0, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_seed": 14, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 7, + "round": 0, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 8, + "round": 1, + "order": 11, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 9, + "round": 1, + "order": 12, + "bye": false, + "home_from_lid": 2, + "home_from_loser": false, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 10, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": 4, + "home_from_loser": false, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 11, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": 6, + "home_from_loser": false, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 24, + "round": 2, + "order": 22, + "bye": false, + "home_from_lid": 8, + "home_from_loser": false, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 25, + "round": 2, + "order": 23, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 30, + "round": 3, + "order": 28, + "bye": false, + "home_from_lid": 24, + "home_from_loser": false, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 33, + "round": 4, + "order": 31, + "bye": false, + "home_from_lid": 30, + "home_from_loser": false, + "away_from_lid": 32, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 34, + "round": 5, + "order": 32, + "bye": false, + "home_from_lid": 33, + "home_from_loser": false, + "away_from_lid": 33, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 11, + "home_from_loser": true + }, + { + "lid": 13, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 1, + "home_from_loser": true + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 10, + "home_from_loser": true + }, + { + "lid": 15, + "round": 0, + "order": 15, + "bye": false, + "home_from_lid": 2, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 16, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 9, + "home_from_loser": true + }, + { + "lid": 17, + "round": 0, + "order": 16, + "bye": false, + "home_from_lid": 4, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 18, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 8, + "home_from_loser": true + }, + { + "lid": 19, + "round": 0, + "order": 17, + "bye": false, + "home_from_lid": 6, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 20, + "round": 1, + "order": 18, + "bye": false, + "home_from_lid": 11, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 19, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 20, + "bye": false, + "home_from_lid": 9, + "home_from_loser": true, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 21, + "bye": false, + "home_from_lid": 8, + "home_from_loser": true, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 26, + "round": 2, + "order": 24, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 27, + "round": 2, + "order": 25, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 28, + "round": 3, + "order": 26, + "bye": false, + "home_from_lid": 24, + "home_from_loser": true, + "away_from_lid": 26, + "away_from_loser": false, + "reset": false + }, + { + "lid": 29, + "round": 3, + "order": 27, + "bye": false, + "home_from_lid": 25, + "home_from_loser": true, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 31, + "round": 4, + "order": 29, + "bye": false, + "home_from_lid": 28, + "home_from_loser": false, + "away_from_lid": 29, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 32, + "round": 5, + "order": 30, + "bye": false, + "home_from_lid": 30, + "home_from_loser": true, + "away_from_lid": 31, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/16.json b/brackets/16.json new file mode 100644 index 0000000..6530bc6 --- /dev/null +++ b/brackets/16.json @@ -0,0 +1,419 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_seed": 16, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 1, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 13, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 3, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_seed": 15, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 5, + "round": 0, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_seed": 14, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 7, + "round": 0, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 8, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": 0, + "home_from_loser": false, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 9, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": 2, + "home_from_loser": false, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 10, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": 4, + "home_from_loser": false, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 11, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": 6, + "home_from_loser": false, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 24, + "round": 2, + "order": 25, + "bye": false, + "home_from_lid": 8, + "home_from_loser": false, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 25, + "round": 2, + "order": 26, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 30, + "round": 3, + "order": 31, + "bye": false, + "home_from_lid": 24, + "home_from_loser": false, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 33, + "round": 4, + "order": 34, + "bye": false, + "home_from_lid": 30, + "home_from_loser": false, + "away_from_lid": 32, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 34, + "round": 5, + "order": 35, + "bye": false, + "home_from_lid": 33, + "home_from_loser": false, + "away_from_lid": 33, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 11, + "home_from_loser": true + }, + { + "lid": 13, + "round": 0, + "order": 17, + "bye": false, + "home_from_lid": 0, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 10, + "home_from_loser": true + }, + { + "lid": 15, + "round": 0, + "order": 18, + "bye": false, + "home_from_lid": 2, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 16, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 9, + "home_from_loser": true + }, + { + "lid": 17, + "round": 0, + "order": 19, + "bye": false, + "home_from_lid": 4, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 18, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 8, + "home_from_loser": true + }, + { + "lid": 19, + "round": 0, + "order": 20, + "bye": false, + "home_from_lid": 6, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 20, + "round": 1, + "order": 21, + "bye": false, + "home_from_lid": 11, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 22, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 23, + "bye": false, + "home_from_lid": 9, + "home_from_loser": true, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 24, + "bye": false, + "home_from_lid": 8, + "home_from_loser": true, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 26, + "round": 2, + "order": 27, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 27, + "round": 2, + "order": 28, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 28, + "round": 3, + "order": 29, + "bye": false, + "home_from_lid": 24, + "home_from_loser": true, + "away_from_lid": 26, + "away_from_loser": false, + "reset": false + }, + { + "lid": 29, + "round": 3, + "order": 30, + "bye": false, + "home_from_lid": 25, + "home_from_loser": true, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 31, + "round": 4, + "order": 32, + "bye": false, + "home_from_lid": 28, + "home_from_loser": false, + "away_from_lid": 29, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 32, + "round": 5, + "order": 33, + "bye": false, + "home_from_lid": 30, + "home_from_loser": true, + "away_from_lid": 31, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/17.json b/brackets/17.json new file mode 100644 index 0000000..474899e --- /dev/null +++ b/brackets/17.json @@ -0,0 +1,605 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 16, + "away_seed": 17, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8 + }, + { + "lid": 3, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 9 + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 5, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 13 + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 7, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 12 + }, + { + "lid": 8, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 9, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 15 + }, + { + "lid": 10, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7 + }, + { + "lid": 11, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 10 + }, + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 13, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 14 + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + }, + { + "lid": 15, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 11 + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 18, + "round": 1, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 13, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 19, + "round": 1, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 20, + "round": 1, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_seed": 15, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_seed": 14, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 36, + "round": 2, + "order": 15, + "bye": false, + "home_from_lid": 16, + "home_from_loser": false, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 37, + "round": 2, + "order": 16, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + }, + { + "lid": 38, + "round": 2, + "order": 17, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 39, + "round": 2, + "order": 18, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 46, + "round": 3, + "order": 25, + "bye": false, + "home_from_lid": 36, + "home_from_loser": false, + "away_from_lid": 37, + "away_from_loser": false, + "reset": false + }, + { + "lid": 47, + "round": 3, + "order": 26, + "bye": false, + "home_from_lid": 38, + "home_from_loser": false, + "away_from_lid": 39, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 51, + "round": 4, + "order": 30, + "bye": false, + "home_from_lid": 46, + "home_from_loser": false, + "away_from_lid": 47, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 53, + "round": 5, + "order": 32, + "bye": false, + "home_from_lid": 51, + "home_from_loser": false, + "away_from_lid": 52, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 54, + "round": 6, + "order": 33, + "bye": false, + "home_from_lid": 53, + "home_from_loser": false, + "away_from_lid": 53, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 24, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 22, + "home_from_loser": true + }, + { + "lid": 25, + "round": 0, + "order": 10, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 26, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 21, + "home_from_loser": true + }, + { + "lid": 27, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 20, + "home_from_loser": true + }, + { + "lid": 28, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 19, + "home_from_loser": true + }, + { + "lid": 29, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 18, + "home_from_loser": true + }, + { + "lid": 30, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 17, + "home_from_loser": true + }, + { + "lid": 31, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 16, + "home_from_loser": true + } + ], + [ + { + "lid": 32, + "round": 1, + "order": 11, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + }, + { + "lid": 33, + "round": 1, + "order": 12, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 20, + "away_from_loser": true, + "reset": false + }, + { + "lid": 34, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 18, + "away_from_loser": true, + "reset": false + }, + { + "lid": 35, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 16, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 40, + "round": 2, + "order": 19, + "bye": false, + "home_from_lid": 37, + "home_from_loser": true, + "away_from_lid": 32, + "away_from_loser": false, + "reset": false + }, + { + "lid": 41, + "round": 2, + "order": 20, + "bye": false, + "home_from_lid": 36, + "home_from_loser": true, + "away_from_lid": 33, + "away_from_loser": false, + "reset": false + }, + { + "lid": 42, + "round": 2, + "order": 21, + "bye": false, + "home_from_lid": 39, + "home_from_loser": true, + "away_from_lid": 34, + "away_from_loser": false, + "reset": false + }, + { + "lid": 43, + "round": 2, + "order": 22, + "bye": false, + "home_from_lid": 38, + "home_from_loser": true, + "away_from_lid": 35, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 44, + "round": 3, + "order": 23, + "bye": false, + "home_from_lid": 40, + "home_from_loser": false, + "away_from_lid": 41, + "away_from_loser": false, + "reset": false + }, + { + "lid": 45, + "round": 3, + "order": 24, + "bye": false, + "home_from_lid": 42, + "home_from_loser": false, + "away_from_lid": 43, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 48, + "round": 4, + "order": 27, + "bye": false, + "home_from_lid": 46, + "home_from_loser": true, + "away_from_lid": 44, + "away_from_loser": false, + "reset": false + }, + { + "lid": 49, + "round": 4, + "order": 28, + "bye": false, + "home_from_lid": 47, + "home_from_loser": true, + "away_from_lid": 45, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 50, + "round": 5, + "order": 29, + "bye": false, + "home_from_lid": 48, + "home_from_loser": false, + "away_from_lid": 49, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 52, + "round": 6, + "order": 31, + "bye": false, + "home_from_lid": 51, + "home_from_loser": true, + "away_from_lid": 50, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/18.json b/brackets/18.json new file mode 100644 index 0000000..7704a1d --- /dev/null +++ b/brackets/18.json @@ -0,0 +1,611 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 16, + "away_seed": 17, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8 + }, + { + "lid": 3, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 9 + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 5, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 13 + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 7, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 12 + }, + { + "lid": 8, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 9, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 15, + "away_seed": 18, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7 + }, + { + "lid": 11, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 10 + }, + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 13, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 14 + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + }, + { + "lid": 15, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 11 + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 18, + "round": 1, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 13, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 19, + "round": 1, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 20, + "round": 1, + "order": 10, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_seed": 14, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 36, + "round": 2, + "order": 17, + "bye": false, + "home_from_lid": 16, + "home_from_loser": false, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 37, + "round": 2, + "order": 18, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + }, + { + "lid": 38, + "round": 2, + "order": 19, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 39, + "round": 2, + "order": 20, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 46, + "round": 3, + "order": 27, + "bye": false, + "home_from_lid": 36, + "home_from_loser": false, + "away_from_lid": 37, + "away_from_loser": false, + "reset": false + }, + { + "lid": 47, + "round": 3, + "order": 28, + "bye": false, + "home_from_lid": 38, + "home_from_loser": false, + "away_from_lid": 39, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 51, + "round": 4, + "order": 32, + "bye": false, + "home_from_lid": 46, + "home_from_loser": false, + "away_from_lid": 47, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 53, + "round": 5, + "order": 34, + "bye": false, + "home_from_lid": 51, + "home_from_loser": false, + "away_from_lid": 52, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 54, + "round": 6, + "order": 35, + "bye": false, + "home_from_lid": 53, + "home_from_loser": false, + "away_from_lid": 53, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 24, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 22, + "home_from_loser": true + }, + { + "lid": 25, + "round": 0, + "order": 11, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 26, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 21, + "home_from_loser": true + }, + { + "lid": 27, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 20, + "home_from_loser": true + }, + { + "lid": 28, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 18, + "home_from_loser": true + }, + { + "lid": 29, + "round": 0, + "order": 12, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 9, + "away_from_loser": true, + "reset": false + }, + { + "lid": 30, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 17, + "home_from_loser": true + }, + { + "lid": 31, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 16, + "home_from_loser": true + } + ], + [ + { + "lid": 32, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + }, + { + "lid": 33, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 20, + "away_from_loser": true, + "reset": false + }, + { + "lid": 34, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 29, + "away_from_loser": false, + "reset": false + }, + { + "lid": 35, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 16, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 40, + "round": 2, + "order": 21, + "bye": false, + "home_from_lid": 37, + "home_from_loser": true, + "away_from_lid": 32, + "away_from_loser": false, + "reset": false + }, + { + "lid": 41, + "round": 2, + "order": 22, + "bye": false, + "home_from_lid": 36, + "home_from_loser": true, + "away_from_lid": 33, + "away_from_loser": false, + "reset": false + }, + { + "lid": 42, + "round": 2, + "order": 23, + "bye": false, + "home_from_lid": 39, + "home_from_loser": true, + "away_from_lid": 34, + "away_from_loser": false, + "reset": false + }, + { + "lid": 43, + "round": 2, + "order": 24, + "bye": false, + "home_from_lid": 38, + "home_from_loser": true, + "away_from_lid": 35, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 44, + "round": 3, + "order": 25, + "bye": false, + "home_from_lid": 40, + "home_from_loser": false, + "away_from_lid": 41, + "away_from_loser": false, + "reset": false + }, + { + "lid": 45, + "round": 3, + "order": 26, + "bye": false, + "home_from_lid": 42, + "home_from_loser": false, + "away_from_lid": 43, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 48, + "round": 4, + "order": 29, + "bye": false, + "home_from_lid": 46, + "home_from_loser": true, + "away_from_lid": 44, + "away_from_loser": false, + "reset": false + }, + { + "lid": 49, + "round": 4, + "order": 30, + "bye": false, + "home_from_lid": 47, + "home_from_loser": true, + "away_from_lid": 45, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 50, + "round": 5, + "order": 31, + "bye": false, + "home_from_lid": 48, + "home_from_loser": false, + "away_from_lid": 49, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 52, + "round": 6, + "order": 33, + "bye": false, + "home_from_lid": 51, + "home_from_loser": true, + "away_from_lid": 50, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/19.json b/brackets/19.json new file mode 100644 index 0000000..1737005 --- /dev/null +++ b/brackets/19.json @@ -0,0 +1,617 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 16, + "away_seed": 17, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8 + }, + { + "lid": 3, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 9 + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 5, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 13 + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 7, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 12 + }, + { + "lid": 8, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 9, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 15, + "away_seed": 18, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7 + }, + { + "lid": 11, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 10 + }, + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 13, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 14, + "away_seed": 19, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + }, + { + "lid": 15, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 11 + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 18, + "round": 1, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 13, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 19, + "round": 1, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 20, + "round": 1, + "order": 10, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 11, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 36, + "round": 2, + "order": 19, + "bye": false, + "home_from_lid": 16, + "home_from_loser": false, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 37, + "round": 2, + "order": 20, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + }, + { + "lid": 38, + "round": 2, + "order": 21, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 39, + "round": 2, + "order": 22, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 46, + "round": 3, + "order": 29, + "bye": false, + "home_from_lid": 36, + "home_from_loser": false, + "away_from_lid": 37, + "away_from_loser": false, + "reset": false + }, + { + "lid": 47, + "round": 3, + "order": 30, + "bye": false, + "home_from_lid": 38, + "home_from_loser": false, + "away_from_lid": 39, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 51, + "round": 4, + "order": 34, + "bye": false, + "home_from_lid": 46, + "home_from_loser": false, + "away_from_lid": 47, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 53, + "round": 5, + "order": 36, + "bye": false, + "home_from_lid": 51, + "home_from_loser": false, + "away_from_lid": 52, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 54, + "round": 6, + "order": 37, + "bye": false, + "home_from_lid": 53, + "home_from_loser": false, + "away_from_lid": 53, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 24, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 22, + "home_from_loser": true + }, + { + "lid": 25, + "round": 0, + "order": 12, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 26, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 21, + "home_from_loser": true + }, + { + "lid": 27, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 20, + "home_from_loser": true + }, + { + "lid": 28, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 18, + "home_from_loser": true + }, + { + "lid": 29, + "round": 0, + "order": 13, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 9, + "away_from_loser": true, + "reset": false + }, + { + "lid": 30, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 16, + "home_from_loser": true + }, + { + "lid": 31, + "round": 0, + "order": 14, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 32, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + }, + { + "lid": 33, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 20, + "away_from_loser": true, + "reset": false + }, + { + "lid": 34, + "round": 1, + "order": 17, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 29, + "away_from_loser": false, + "reset": false + }, + { + "lid": 35, + "round": 1, + "order": 18, + "bye": false, + "home_from_lid": 16, + "home_from_loser": true, + "away_from_lid": 31, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 40, + "round": 2, + "order": 23, + "bye": false, + "home_from_lid": 37, + "home_from_loser": true, + "away_from_lid": 32, + "away_from_loser": false, + "reset": false + }, + { + "lid": 41, + "round": 2, + "order": 24, + "bye": false, + "home_from_lid": 36, + "home_from_loser": true, + "away_from_lid": 33, + "away_from_loser": false, + "reset": false + }, + { + "lid": 42, + "round": 2, + "order": 25, + "bye": false, + "home_from_lid": 39, + "home_from_loser": true, + "away_from_lid": 34, + "away_from_loser": false, + "reset": false + }, + { + "lid": 43, + "round": 2, + "order": 26, + "bye": false, + "home_from_lid": 38, + "home_from_loser": true, + "away_from_lid": 35, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 44, + "round": 3, + "order": 27, + "bye": false, + "home_from_lid": 40, + "home_from_loser": false, + "away_from_lid": 41, + "away_from_loser": false, + "reset": false + }, + { + "lid": 45, + "round": 3, + "order": 28, + "bye": false, + "home_from_lid": 42, + "home_from_loser": false, + "away_from_lid": 43, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 48, + "round": 4, + "order": 31, + "bye": false, + "home_from_lid": 46, + "home_from_loser": true, + "away_from_lid": 44, + "away_from_loser": false, + "reset": false + }, + { + "lid": 49, + "round": 4, + "order": 32, + "bye": false, + "home_from_lid": 47, + "home_from_loser": true, + "away_from_lid": 45, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 50, + "round": 5, + "order": 33, + "bye": false, + "home_from_lid": 48, + "home_from_loser": false, + "away_from_lid": 49, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 52, + "round": 6, + "order": 35, + "bye": false, + "home_from_lid": 51, + "home_from_loser": true, + "away_from_lid": 50, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/20.json b/brackets/20.json new file mode 100644 index 0000000..8e83e31 --- /dev/null +++ b/brackets/20.json @@ -0,0 +1,623 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 16, + "away_seed": 17, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8 + }, + { + "lid": 3, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 9 + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 5, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 13, + "away_seed": 20, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 7, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 12 + }, + { + "lid": 8, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 9, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 15, + "away_seed": 18, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7 + }, + { + "lid": 11, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 10 + }, + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 13, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 14, + "away_seed": 19, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + }, + { + "lid": 15, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 11 + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 18, + "round": 1, + "order": 10, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 19, + "round": 1, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_seed": 12, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 20, + "round": 1, + "order": 11, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 10, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 12, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 11, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 36, + "round": 2, + "order": 21, + "bye": false, + "home_from_lid": 16, + "home_from_loser": false, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 37, + "round": 2, + "order": 22, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + }, + { + "lid": 38, + "round": 2, + "order": 23, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 39, + "round": 2, + "order": 24, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 46, + "round": 3, + "order": 31, + "bye": false, + "home_from_lid": 36, + "home_from_loser": false, + "away_from_lid": 37, + "away_from_loser": false, + "reset": false + }, + { + "lid": 47, + "round": 3, + "order": 32, + "bye": false, + "home_from_lid": 38, + "home_from_loser": false, + "away_from_lid": 39, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 51, + "round": 4, + "order": 36, + "bye": false, + "home_from_lid": 46, + "home_from_loser": false, + "away_from_lid": 47, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 53, + "round": 5, + "order": 38, + "bye": false, + "home_from_lid": 51, + "home_from_loser": false, + "away_from_lid": 52, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 54, + "round": 6, + "order": 39, + "bye": false, + "home_from_lid": 53, + "home_from_loser": false, + "away_from_lid": 53, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 24, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 22, + "home_from_loser": true + }, + { + "lid": 25, + "round": 0, + "order": 13, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 26, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 20, + "home_from_loser": true + }, + { + "lid": 27, + "round": 0, + "order": 14, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 28, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 18, + "home_from_loser": true + }, + { + "lid": 29, + "round": 0, + "order": 15, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 9, + "away_from_loser": true, + "reset": false + }, + { + "lid": 30, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 16, + "home_from_loser": true + }, + { + "lid": 31, + "round": 0, + "order": 16, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 32, + "round": 1, + "order": 17, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 25, + "away_from_loser": false, + "reset": false + }, + { + "lid": 33, + "round": 1, + "order": 18, + "bye": false, + "home_from_lid": 20, + "home_from_loser": true, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + }, + { + "lid": 34, + "round": 1, + "order": 19, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 29, + "away_from_loser": false, + "reset": false + }, + { + "lid": 35, + "round": 1, + "order": 20, + "bye": false, + "home_from_lid": 16, + "home_from_loser": true, + "away_from_lid": 31, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 40, + "round": 2, + "order": 25, + "bye": false, + "home_from_lid": 37, + "home_from_loser": true, + "away_from_lid": 32, + "away_from_loser": false, + "reset": false + }, + { + "lid": 41, + "round": 2, + "order": 26, + "bye": false, + "home_from_lid": 36, + "home_from_loser": true, + "away_from_lid": 33, + "away_from_loser": false, + "reset": false + }, + { + "lid": 42, + "round": 2, + "order": 27, + "bye": false, + "home_from_lid": 39, + "home_from_loser": true, + "away_from_lid": 34, + "away_from_loser": false, + "reset": false + }, + { + "lid": 43, + "round": 2, + "order": 28, + "bye": false, + "home_from_lid": 38, + "home_from_loser": true, + "away_from_lid": 35, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 44, + "round": 3, + "order": 29, + "bye": false, + "home_from_lid": 40, + "home_from_loser": false, + "away_from_lid": 41, + "away_from_loser": false, + "reset": false + }, + { + "lid": 45, + "round": 3, + "order": 30, + "bye": false, + "home_from_lid": 42, + "home_from_loser": false, + "away_from_lid": 43, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 48, + "round": 4, + "order": 33, + "bye": false, + "home_from_lid": 46, + "home_from_loser": true, + "away_from_lid": 44, + "away_from_loser": false, + "reset": false + }, + { + "lid": 49, + "round": 4, + "order": 34, + "bye": false, + "home_from_lid": 47, + "home_from_loser": true, + "away_from_lid": 45, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 50, + "round": 5, + "order": 35, + "bye": false, + "home_from_lid": 48, + "home_from_loser": false, + "away_from_lid": 49, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 52, + "round": 6, + "order": 37, + "bye": false, + "home_from_lid": 51, + "home_from_loser": true, + "away_from_lid": 50, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/24.json b/brackets/24.json new file mode 100644 index 0000000..aef63be --- /dev/null +++ b/brackets/24.json @@ -0,0 +1,737 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 16, + "away_seed": 17, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8 + }, + { + "lid": 3, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 9, + "away_seed": 24, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 5, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 13, + "away_seed": 20, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 7, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 12, + "away_seed": 21, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 8, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 9, + "round": 0, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 15, + "away_seed": 18, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7 + }, + { + "lid": 11, + "round": 0, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 10, + "away_seed": 23, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 13, + "round": 0, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 14, + "away_seed": 19, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + }, + { + "lid": 15, + "round": 0, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 11, + "away_seed": 22, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 10, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 18, + "round": 1, + "order": 11, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 19, + "round": 1, + "order": 12, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + }, + { + "lid": 20, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 56, + "round": 2, + "order": 33, + "bye": false, + "home_from_lid": 16, + "home_from_loser": false, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 57, + "round": 2, + "order": 34, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + }, + { + "lid": 58, + "round": 2, + "order": 35, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 59, + "round": 2, + "order": 36, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 68, + "round": 3, + "order": 45, + "bye": false, + "home_from_lid": 56, + "home_from_loser": false, + "away_from_lid": 57, + "away_from_loser": false, + "reset": false + }, + { + "lid": 69, + "round": 3, + "order": 46, + "bye": false, + "home_from_lid": 58, + "home_from_loser": false, + "away_from_lid": 59, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 74, + "round": 4, + "order": 51, + "bye": false, + "home_from_lid": 68, + "home_from_loser": false, + "away_from_lid": 69, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 77, + "round": 5, + "order": 54, + "bye": false, + "home_from_lid": 74, + "home_from_loser": false, + "away_from_lid": 76, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 78, + "round": 6, + "order": 55, + "bye": false, + "home_from_lid": 77, + "home_from_loser": false, + "away_from_lid": 77, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 40, + "round": 0, + "order": 17, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 41, + "round": 0, + "order": 18, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 42, + "round": 0, + "order": 19, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 43, + "round": 0, + "order": 20, + "bye": false, + "home_from_lid": 20, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + }, + { + "lid": 44, + "round": 0, + "order": 21, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 9, + "away_from_loser": true, + "reset": false + }, + { + "lid": 45, + "round": 0, + "order": 22, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 11, + "away_from_loser": true, + "reset": false + }, + { + "lid": 46, + "round": 0, + "order": 23, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": true, + "reset": false + }, + { + "lid": 47, + "round": 0, + "order": 24, + "bye": false, + "home_from_lid": 16, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 48, + "round": 1, + "order": 25, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 49, + "round": 1, + "order": 26, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 50, + "round": 1, + "order": 27, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 51, + "round": 1, + "order": 28, + "bye": false, + "home_from_lid": 20, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + }, + { + "lid": 52, + "round": 1, + "order": 29, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 9, + "away_from_loser": true, + "reset": false + }, + { + "lid": 53, + "round": 1, + "order": 30, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 11, + "away_from_loser": true, + "reset": false + }, + { + "lid": 54, + "round": 1, + "order": 31, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": true, + "reset": false + }, + { + "lid": 55, + "round": 1, + "order": 32, + "bye": false, + "home_from_lid": 16, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 60, + "round": 2, + "order": 37, + "bye": false, + "home_from_lid": 48, + "home_from_loser": false, + "away_from_lid": 49, + "away_from_loser": false, + "reset": false + }, + { + "lid": 61, + "round": 2, + "order": 38, + "bye": false, + "home_from_lid": 50, + "home_from_loser": false, + "away_from_lid": 51, + "away_from_loser": false, + "reset": false + }, + { + "lid": 62, + "round": 2, + "order": 39, + "bye": false, + "home_from_lid": 52, + "home_from_loser": false, + "away_from_lid": 53, + "away_from_loser": false, + "reset": false + }, + { + "lid": 63, + "round": 2, + "order": 40, + "bye": false, + "home_from_lid": 54, + "home_from_loser": false, + "away_from_lid": 55, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 64, + "round": 3, + "order": 41, + "bye": false, + "home_from_lid": 57, + "home_from_loser": true, + "away_from_lid": 60, + "away_from_loser": false, + "reset": false + }, + { + "lid": 65, + "round": 3, + "order": 42, + "bye": false, + "home_from_lid": 56, + "home_from_loser": true, + "away_from_lid": 61, + "away_from_loser": false, + "reset": false + }, + { + "lid": 66, + "round": 3, + "order": 43, + "bye": false, + "home_from_lid": 59, + "home_from_loser": true, + "away_from_lid": 62, + "away_from_loser": false, + "reset": false + }, + { + "lid": 67, + "round": 3, + "order": 44, + "bye": false, + "home_from_lid": 58, + "home_from_loser": true, + "away_from_lid": 63, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 70, + "round": 4, + "order": 47, + "bye": false, + "home_from_lid": 64, + "home_from_loser": false, + "away_from_lid": 65, + "away_from_loser": false, + "reset": false + }, + { + "lid": 71, + "round": 4, + "order": 48, + "bye": false, + "home_from_lid": 66, + "home_from_loser": false, + "away_from_lid": 67, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 72, + "round": 5, + "order": 49, + "bye": false, + "home_from_lid": 68, + "home_from_loser": true, + "away_from_lid": 70, + "away_from_loser": false, + "reset": false + }, + { + "lid": 73, + "round": 5, + "order": 50, + "bye": false, + "home_from_lid": 69, + "home_from_loser": true, + "away_from_lid": 71, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 75, + "round": 6, + "order": 52, + "bye": false, + "home_from_lid": 72, + "home_from_loser": false, + "away_from_lid": 73, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 76, + "round": 7, + "order": 53, + "bye": false, + "home_from_lid": 74, + "home_from_loser": true, + "away_from_lid": 75, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/25.json b/brackets/25.json new file mode 100644 index 0000000..6ad9372 --- /dev/null +++ b/brackets/25.json @@ -0,0 +1,783 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 16, + "away_seed": 17, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 25, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 3, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 9, + "away_seed": 24, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 5, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 13, + "away_seed": 20, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 7, + "round": 0, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 12, + "away_seed": 21, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 8, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 9, + "round": 0, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 15, + "away_seed": 18, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7 + }, + { + "lid": 11, + "round": 0, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 10, + "away_seed": 23, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 13, + "round": 0, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 14, + "away_seed": 19, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + }, + { + "lid": 15, + "round": 0, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 11, + "away_seed": 22, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 11, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 12, + "bye": false, + "home_from_lid": 2, + "home_from_loser": false, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 18, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 19, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + }, + { + "lid": 20, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 17, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 18, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 48, + "round": 2, + "order": 28, + "bye": false, + "home_from_lid": 16, + "home_from_loser": false, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 49, + "round": 2, + "order": 29, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + }, + { + "lid": 50, + "round": 2, + "order": 30, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 51, + "round": 2, + "order": 31, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 60, + "round": 3, + "order": 40, + "bye": false, + "home_from_lid": 48, + "home_from_loser": false, + "away_from_lid": 49, + "away_from_loser": false, + "reset": false + }, + { + "lid": 61, + "round": 3, + "order": 41, + "bye": false, + "home_from_lid": 50, + "home_from_loser": false, + "away_from_lid": 51, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 66, + "round": 4, + "order": 46, + "bye": false, + "home_from_lid": 60, + "home_from_loser": false, + "away_from_lid": 61, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 69, + "round": 5, + "order": 49, + "bye": false, + "home_from_lid": 66, + "home_from_loser": false, + "away_from_lid": 68, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 70, + "round": 6, + "order": 50, + "bye": false, + "home_from_lid": 69, + "home_from_loser": false, + "away_from_lid": 69, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 24, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 23, + "home_from_loser": true + }, + { + "lid": 25, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 1, + "home_from_loser": true + }, + { + "lid": 26, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 22, + "home_from_loser": true + }, + { + "lid": 27, + "round": 0, + "order": 19, + "bye": false, + "home_from_lid": 2, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 28, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 21, + "home_from_loser": true + }, + { + "lid": 29, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 5, + "home_from_loser": true + }, + { + "lid": 30, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 20, + "home_from_loser": true + }, + { + "lid": 31, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 7, + "home_from_loser": true + }, + { + "lid": 32, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 19, + "home_from_loser": true + }, + { + "lid": 33, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 9, + "home_from_loser": true + }, + { + "lid": 34, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 18, + "home_from_loser": true + }, + { + "lid": 35, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 11, + "home_from_loser": true + }, + { + "lid": 36, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 17, + "home_from_loser": true + }, + { + "lid": 37, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 13, + "home_from_loser": true + }, + { + "lid": 38, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 16, + "home_from_loser": true + }, + { + "lid": 39, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 15, + "home_from_loser": true + } + ], + [ + { + "lid": 40, + "round": 1, + "order": 20, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 41, + "round": 1, + "order": 21, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + }, + { + "lid": 42, + "round": 1, + "order": 22, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 43, + "round": 1, + "order": 23, + "bye": false, + "home_from_lid": 20, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + }, + { + "lid": 44, + "round": 1, + "order": 24, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 9, + "away_from_loser": true, + "reset": false + }, + { + "lid": 45, + "round": 1, + "order": 25, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 11, + "away_from_loser": true, + "reset": false + }, + { + "lid": 46, + "round": 1, + "order": 26, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": true, + "reset": false + }, + { + "lid": 47, + "round": 1, + "order": 27, + "bye": false, + "home_from_lid": 16, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 52, + "round": 2, + "order": 32, + "bye": false, + "home_from_lid": 40, + "home_from_loser": false, + "away_from_lid": 41, + "away_from_loser": false, + "reset": false + }, + { + "lid": 53, + "round": 2, + "order": 33, + "bye": false, + "home_from_lid": 42, + "home_from_loser": false, + "away_from_lid": 43, + "away_from_loser": false, + "reset": false + }, + { + "lid": 54, + "round": 2, + "order": 34, + "bye": false, + "home_from_lid": 44, + "home_from_loser": false, + "away_from_lid": 45, + "away_from_loser": false, + "reset": false + }, + { + "lid": 55, + "round": 2, + "order": 35, + "bye": false, + "home_from_lid": 46, + "home_from_loser": false, + "away_from_lid": 47, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 56, + "round": 3, + "order": 36, + "bye": false, + "home_from_lid": 49, + "home_from_loser": true, + "away_from_lid": 52, + "away_from_loser": false, + "reset": false + }, + { + "lid": 57, + "round": 3, + "order": 37, + "bye": false, + "home_from_lid": 48, + "home_from_loser": true, + "away_from_lid": 53, + "away_from_loser": false, + "reset": false + }, + { + "lid": 58, + "round": 3, + "order": 38, + "bye": false, + "home_from_lid": 51, + "home_from_loser": true, + "away_from_lid": 54, + "away_from_loser": false, + "reset": false + }, + { + "lid": 59, + "round": 3, + "order": 39, + "bye": false, + "home_from_lid": 50, + "home_from_loser": true, + "away_from_lid": 55, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 62, + "round": 4, + "order": 42, + "bye": false, + "home_from_lid": 56, + "home_from_loser": false, + "away_from_lid": 57, + "away_from_loser": false, + "reset": false + }, + { + "lid": 63, + "round": 4, + "order": 43, + "bye": false, + "home_from_lid": 58, + "home_from_loser": false, + "away_from_lid": 59, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 64, + "round": 5, + "order": 44, + "bye": false, + "home_from_lid": 60, + "home_from_loser": true, + "away_from_lid": 62, + "away_from_loser": false, + "reset": false + }, + { + "lid": 65, + "round": 5, + "order": 45, + "bye": false, + "home_from_lid": 61, + "home_from_loser": true, + "away_from_lid": 63, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 67, + "round": 6, + "order": 47, + "bye": false, + "home_from_lid": 64, + "home_from_loser": false, + "away_from_lid": 65, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 68, + "round": 7, + "order": 48, + "bye": false, + "home_from_lid": 66, + "home_from_loser": true, + "away_from_lid": 67, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/26.json b/brackets/26.json new file mode 100644 index 0000000..9060e02 --- /dev/null +++ b/brackets/26.json @@ -0,0 +1,789 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 16, + "away_seed": 17, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 25, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 3, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 9, + "away_seed": 24, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 5, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 13, + "away_seed": 20, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 7, + "round": 0, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 12, + "away_seed": 21, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 8, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 9, + "round": 0, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 15, + "away_seed": 18, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 0, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 26, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 11, + "round": 0, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 10, + "away_seed": 23, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 13, + "round": 0, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 14, + "away_seed": 19, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + }, + { + "lid": 15, + "round": 0, + "order": 10, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 11, + "away_seed": 22, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 13, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 14, + "bye": false, + "home_from_lid": 2, + "home_from_loser": false, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 18, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 19, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + }, + { + "lid": 20, + "round": 1, + "order": 17, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 18, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 19, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 20, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 48, + "round": 2, + "order": 31, + "bye": false, + "home_from_lid": 16, + "home_from_loser": false, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 49, + "round": 2, + "order": 32, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + }, + { + "lid": 50, + "round": 2, + "order": 33, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 51, + "round": 2, + "order": 34, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 60, + "round": 3, + "order": 43, + "bye": false, + "home_from_lid": 48, + "home_from_loser": false, + "away_from_lid": 49, + "away_from_loser": false, + "reset": false + }, + { + "lid": 61, + "round": 3, + "order": 44, + "bye": false, + "home_from_lid": 50, + "home_from_loser": false, + "away_from_lid": 51, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 66, + "round": 4, + "order": 49, + "bye": false, + "home_from_lid": 60, + "home_from_loser": false, + "away_from_lid": 61, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 69, + "round": 5, + "order": 52, + "bye": false, + "home_from_lid": 66, + "home_from_loser": false, + "away_from_lid": 68, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 70, + "round": 6, + "order": 53, + "bye": false, + "home_from_lid": 69, + "home_from_loser": false, + "away_from_lid": 69, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 24, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 23, + "home_from_loser": true + }, + { + "lid": 25, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 1, + "home_from_loser": true + }, + { + "lid": 26, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 22, + "home_from_loser": true + }, + { + "lid": 27, + "round": 0, + "order": 21, + "bye": false, + "home_from_lid": 2, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 28, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 21, + "home_from_loser": true + }, + { + "lid": 29, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 5, + "home_from_loser": true + }, + { + "lid": 30, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 20, + "home_from_loser": true + }, + { + "lid": 31, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 7, + "home_from_loser": true + }, + { + "lid": 32, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 19, + "home_from_loser": true + }, + { + "lid": 33, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 9, + "home_from_loser": true + }, + { + "lid": 34, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 18, + "home_from_loser": true + }, + { + "lid": 35, + "round": 0, + "order": 22, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 11, + "away_from_loser": true, + "reset": false + }, + { + "lid": 36, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 17, + "home_from_loser": true + }, + { + "lid": 37, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 13, + "home_from_loser": true + }, + { + "lid": 38, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 16, + "home_from_loser": true + }, + { + "lid": 39, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 15, + "home_from_loser": true + } + ], + [ + { + "lid": 40, + "round": 1, + "order": 23, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 41, + "round": 1, + "order": 24, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + }, + { + "lid": 42, + "round": 1, + "order": 25, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 43, + "round": 1, + "order": 26, + "bye": false, + "home_from_lid": 20, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + }, + { + "lid": 44, + "round": 1, + "order": 27, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 9, + "away_from_loser": true, + "reset": false + }, + { + "lid": 45, + "round": 1, + "order": 28, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 35, + "away_from_loser": false, + "reset": false + }, + { + "lid": 46, + "round": 1, + "order": 29, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": true, + "reset": false + }, + { + "lid": 47, + "round": 1, + "order": 30, + "bye": false, + "home_from_lid": 16, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 52, + "round": 2, + "order": 35, + "bye": false, + "home_from_lid": 40, + "home_from_loser": false, + "away_from_lid": 41, + "away_from_loser": false, + "reset": false + }, + { + "lid": 53, + "round": 2, + "order": 36, + "bye": false, + "home_from_lid": 42, + "home_from_loser": false, + "away_from_lid": 43, + "away_from_loser": false, + "reset": false + }, + { + "lid": 54, + "round": 2, + "order": 37, + "bye": false, + "home_from_lid": 44, + "home_from_loser": false, + "away_from_lid": 45, + "away_from_loser": false, + "reset": false + }, + { + "lid": 55, + "round": 2, + "order": 38, + "bye": false, + "home_from_lid": 46, + "home_from_loser": false, + "away_from_lid": 47, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 56, + "round": 3, + "order": 39, + "bye": false, + "home_from_lid": 49, + "home_from_loser": true, + "away_from_lid": 52, + "away_from_loser": false, + "reset": false + }, + { + "lid": 57, + "round": 3, + "order": 40, + "bye": false, + "home_from_lid": 48, + "home_from_loser": true, + "away_from_lid": 53, + "away_from_loser": false, + "reset": false + }, + { + "lid": 58, + "round": 3, + "order": 41, + "bye": false, + "home_from_lid": 51, + "home_from_loser": true, + "away_from_lid": 54, + "away_from_loser": false, + "reset": false + }, + { + "lid": 59, + "round": 3, + "order": 42, + "bye": false, + "home_from_lid": 50, + "home_from_loser": true, + "away_from_lid": 55, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 62, + "round": 4, + "order": 45, + "bye": false, + "home_from_lid": 56, + "home_from_loser": false, + "away_from_lid": 57, + "away_from_loser": false, + "reset": false + }, + { + "lid": 63, + "round": 4, + "order": 46, + "bye": false, + "home_from_lid": 58, + "home_from_loser": false, + "away_from_lid": 59, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 64, + "round": 5, + "order": 47, + "bye": false, + "home_from_lid": 60, + "home_from_loser": true, + "away_from_lid": 62, + "away_from_loser": false, + "reset": false + }, + { + "lid": 65, + "round": 5, + "order": 48, + "bye": false, + "home_from_lid": 61, + "home_from_loser": true, + "away_from_lid": 63, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 67, + "round": 6, + "order": 50, + "bye": false, + "home_from_lid": 64, + "home_from_loser": false, + "away_from_lid": 65, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 68, + "round": 7, + "order": 51, + "bye": false, + "home_from_lid": 66, + "home_from_loser": true, + "away_from_lid": 67, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/27.json b/brackets/27.json new file mode 100644 index 0000000..05653a0 --- /dev/null +++ b/brackets/27.json @@ -0,0 +1,795 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 16, + "away_seed": 17, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 25, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 3, + "round": 0, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 9, + "away_seed": 24, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 5, + "round": 0, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 13, + "away_seed": 20, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 7, + "round": 0, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 12, + "away_seed": 21, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 8, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 9, + "round": 0, + "order": 6, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 15, + "away_seed": 18, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 0, + "order": 7, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7, + "away_seed": 26, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 11, + "round": 0, + "order": 8, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 10, + "away_seed": 23, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 13, + "round": 0, + "order": 9, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 14, + "away_seed": 19, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": 10, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6, + "away_seed": 27, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 15, + "round": 0, + "order": 11, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 11, + "away_seed": 22, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 15, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 16, + "bye": false, + "home_from_lid": 2, + "home_from_loser": false, + "away_from_lid": 3, + "away_from_loser": false, + "reset": false + }, + { + "lid": 18, + "round": 1, + "order": 17, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_from_lid": 5, + "away_from_loser": false, + "reset": false + }, + { + "lid": 19, + "round": 1, + "order": 18, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5, + "away_from_lid": 7, + "away_from_loser": false, + "reset": false + }, + { + "lid": 20, + "round": 1, + "order": 19, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 1, + "order": 20, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + }, + { + "lid": 22, + "round": 1, + "order": 21, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 23, + "round": 1, + "order": 22, + "bye": false, + "home_from_lid": 14, + "home_from_loser": false, + "away_from_lid": 15, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 48, + "round": 2, + "order": 34, + "bye": false, + "home_from_lid": 16, + "home_from_loser": false, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + }, + { + "lid": 49, + "round": 2, + "order": 35, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + }, + { + "lid": 50, + "round": 2, + "order": 36, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + }, + { + "lid": 51, + "round": 2, + "order": 37, + "bye": false, + "home_from_lid": 22, + "home_from_loser": false, + "away_from_lid": 23, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 60, + "round": 3, + "order": 46, + "bye": false, + "home_from_lid": 48, + "home_from_loser": false, + "away_from_lid": 49, + "away_from_loser": false, + "reset": false + }, + { + "lid": 61, + "round": 3, + "order": 47, + "bye": false, + "home_from_lid": 50, + "home_from_loser": false, + "away_from_lid": 51, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 66, + "round": 4, + "order": 52, + "bye": false, + "home_from_lid": 60, + "home_from_loser": false, + "away_from_lid": 61, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 69, + "round": 5, + "order": 55, + "bye": false, + "home_from_lid": 66, + "home_from_loser": false, + "away_from_lid": 68, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 70, + "round": 6, + "order": 56, + "bye": false, + "home_from_lid": 69, + "home_from_loser": false, + "away_from_lid": 69, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 24, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 23, + "home_from_loser": true + }, + { + "lid": 25, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 1, + "home_from_loser": true + }, + { + "lid": 26, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 22, + "home_from_loser": true + }, + { + "lid": 27, + "round": 0, + "order": 23, + "bye": false, + "home_from_lid": 2, + "home_from_loser": true, + "away_from_lid": 3, + "away_from_loser": true, + "reset": false + }, + { + "lid": 28, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 21, + "home_from_loser": true + }, + { + "lid": 29, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 5, + "home_from_loser": true + }, + { + "lid": 30, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 20, + "home_from_loser": true + }, + { + "lid": 31, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 7, + "home_from_loser": true + }, + { + "lid": 32, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 19, + "home_from_loser": true + }, + { + "lid": 33, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 9, + "home_from_loser": true + }, + { + "lid": 34, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 18, + "home_from_loser": true + }, + { + "lid": 35, + "round": 0, + "order": 24, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 11, + "away_from_loser": true, + "reset": false + }, + { + "lid": 36, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 17, + "home_from_loser": true + }, + { + "lid": 37, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 13, + "home_from_loser": true + }, + { + "lid": 38, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 16, + "home_from_loser": true + }, + { + "lid": 39, + "round": 0, + "order": 25, + "bye": false, + "home_from_lid": 14, + "home_from_loser": true, + "away_from_lid": 15, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 40, + "round": 1, + "order": 26, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 41, + "round": 1, + "order": 27, + "bye": false, + "home_from_lid": 22, + "home_from_loser": true, + "away_from_lid": 27, + "away_from_loser": false, + "reset": false + }, + { + "lid": 42, + "round": 1, + "order": 28, + "bye": false, + "home_from_lid": 21, + "home_from_loser": true, + "away_from_lid": 5, + "away_from_loser": true, + "reset": false + }, + { + "lid": 43, + "round": 1, + "order": 29, + "bye": false, + "home_from_lid": 20, + "home_from_loser": true, + "away_from_lid": 7, + "away_from_loser": true, + "reset": false + }, + { + "lid": 44, + "round": 1, + "order": 30, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 9, + "away_from_loser": true, + "reset": false + }, + { + "lid": 45, + "round": 1, + "order": 31, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 35, + "away_from_loser": false, + "reset": false + }, + { + "lid": 46, + "round": 1, + "order": 32, + "bye": false, + "home_from_lid": 17, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": true, + "reset": false + }, + { + "lid": 47, + "round": 1, + "order": 33, + "bye": false, + "home_from_lid": 16, + "home_from_loser": true, + "away_from_lid": 39, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 52, + "round": 2, + "order": 38, + "bye": false, + "home_from_lid": 40, + "home_from_loser": false, + "away_from_lid": 41, + "away_from_loser": false, + "reset": false + }, + { + "lid": 53, + "round": 2, + "order": 39, + "bye": false, + "home_from_lid": 42, + "home_from_loser": false, + "away_from_lid": 43, + "away_from_loser": false, + "reset": false + }, + { + "lid": 54, + "round": 2, + "order": 40, + "bye": false, + "home_from_lid": 44, + "home_from_loser": false, + "away_from_lid": 45, + "away_from_loser": false, + "reset": false + }, + { + "lid": 55, + "round": 2, + "order": 41, + "bye": false, + "home_from_lid": 46, + "home_from_loser": false, + "away_from_lid": 47, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 56, + "round": 3, + "order": 42, + "bye": false, + "home_from_lid": 49, + "home_from_loser": true, + "away_from_lid": 52, + "away_from_loser": false, + "reset": false + }, + { + "lid": 57, + "round": 3, + "order": 43, + "bye": false, + "home_from_lid": 48, + "home_from_loser": true, + "away_from_lid": 53, + "away_from_loser": false, + "reset": false + }, + { + "lid": 58, + "round": 3, + "order": 44, + "bye": false, + "home_from_lid": 51, + "home_from_loser": true, + "away_from_lid": 54, + "away_from_loser": false, + "reset": false + }, + { + "lid": 59, + "round": 3, + "order": 45, + "bye": false, + "home_from_lid": 50, + "home_from_loser": true, + "away_from_lid": 55, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 62, + "round": 4, + "order": 48, + "bye": false, + "home_from_lid": 56, + "home_from_loser": false, + "away_from_lid": 57, + "away_from_loser": false, + "reset": false + }, + { + "lid": 63, + "round": 4, + "order": 49, + "bye": false, + "home_from_lid": 58, + "home_from_loser": false, + "away_from_lid": 59, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 64, + "round": 5, + "order": 50, + "bye": false, + "home_from_lid": 60, + "home_from_loser": true, + "away_from_lid": 62, + "away_from_loser": false, + "reset": false + }, + { + "lid": 65, + "round": 5, + "order": 51, + "bye": false, + "home_from_lid": 61, + "home_from_loser": true, + "away_from_lid": 63, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 67, + "round": 6, + "order": 53, + "bye": false, + "home_from_lid": 64, + "home_from_loser": false, + "away_from_lid": 65, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 68, + "round": 7, + "order": 54, + "bye": false, + "home_from_lid": 66, + "home_from_loser": true, + "away_from_lid": 67, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/brackets/9.json b/brackets/9.json new file mode 100644 index 0000000..595090c --- /dev/null +++ b/brackets/9.json @@ -0,0 +1,311 @@ +{ + "winners": [ + [ + { + "lid": 0, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1 + }, + { + "lid": 1, + "round": 0, + "order": 1, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 8, + "away_seed": 9, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 2, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4 + }, + { + "lid": 3, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 5 + }, + { + "lid": 4, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2 + }, + { + "lid": 5, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 7 + }, + { + "lid": 6, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3 + }, + { + "lid": 7, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 6 + } + ], + [ + { + "lid": 8, + "round": 1, + "order": 5, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 1, + "away_from_lid": 1, + "away_from_loser": false, + "reset": false + }, + { + "lid": 9, + "round": 1, + "order": 2, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 4, + "away_seed": 5, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 10, + "round": 1, + "order": 3, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 2, + "away_seed": 7, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + }, + { + "lid": 11, + "round": 1, + "order": 4, + "bye": false, + "home_from_lid": null, + "home_from_loser": null, + "home_seed": 3, + "away_seed": 6, + "away_from_lid": null, + "away_from_loser": null, + "reset": false + } + ], + [ + { + "lid": 18, + "round": 2, + "order": 9, + "bye": false, + "home_from_lid": 8, + "home_from_loser": false, + "away_from_lid": 9, + "away_from_loser": false, + "reset": false + }, + { + "lid": 19, + "round": 2, + "order": 10, + "bye": false, + "home_from_lid": 10, + "home_from_loser": false, + "away_from_lid": 11, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 23, + "round": 3, + "order": 14, + "bye": false, + "home_from_lid": 18, + "home_from_loser": false, + "away_from_lid": 19, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 25, + "round": 4, + "order": 16, + "bye": false, + "home_from_lid": 23, + "home_from_loser": false, + "away_from_lid": 24, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 26, + "round": 5, + "order": 17, + "bye": false, + "home_from_lid": 25, + "home_from_loser": false, + "away_from_lid": 25, + "away_from_loser": true, + "reset": true + } + ] + ], + "losers": [ + [ + { + "lid": 12, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 10, + "home_from_loser": true + }, + { + "lid": 13, + "round": 0, + "order": 6, + "bye": false, + "home_from_lid": 11, + "home_from_loser": true, + "away_from_lid": 1, + "away_from_loser": true, + "reset": false + }, + { + "lid": 14, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 9, + "home_from_loser": true + }, + { + "lid": 15, + "round": 0, + "order": null, + "bye": true, + "home_from_lid": 8, + "home_from_loser": true + } + ], + [ + { + "lid": 16, + "round": 1, + "order": 7, + "bye": false, + "home_from_lid": 10, + "home_from_loser": true, + "away_from_lid": 13, + "away_from_loser": false, + "reset": false + }, + { + "lid": 17, + "round": 1, + "order": 8, + "bye": false, + "home_from_lid": 9, + "home_from_loser": true, + "away_from_lid": 8, + "away_from_loser": true, + "reset": false + } + ], + [ + { + "lid": 20, + "round": 2, + "order": 11, + "bye": false, + "home_from_lid": 18, + "home_from_loser": true, + "away_from_lid": 16, + "away_from_loser": false, + "reset": false + }, + { + "lid": 21, + "round": 2, + "order": 12, + "bye": false, + "home_from_lid": 19, + "home_from_loser": true, + "away_from_lid": 17, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 22, + "round": 3, + "order": 13, + "bye": false, + "home_from_lid": 20, + "home_from_loser": false, + "away_from_lid": 21, + "away_from_loser": false, + "reset": false + } + ], + [ + { + "lid": 24, + "round": 4, + "order": 15, + "bye": false, + "home_from_lid": 23, + "home_from_loser": true, + "away_from_lid": 22, + "away_from_loser": false, + "reset": false + } + ] + ] +} \ No newline at end of file diff --git a/src/app/routes/_authed/admin/preview.tsx b/src/app/routes/_authed/admin/preview.tsx index 77cb00f..2172f83 100644 --- a/src/app/routes/_authed/admin/preview.tsx +++ b/src/app/routes/_authed/admin/preview.tsx @@ -1,3 +1,5 @@ +import BracketView from "@/features/bracket/components/bracket-view"; +import { useBracketPreview } from "@/features/bracket/queries"; import { createFileRoute } from "@tanstack/react-router"; export const Route = createFileRoute("/_authed/admin/preview")({ @@ -12,5 +14,6 @@ export const Route = createFileRoute("/_authed/admin/preview")({ }); function RouteComponent() { - return

Preview

; + const bracket = useBracketPreview(16); + return ; } diff --git a/src/features/bracket/components/bracket-view.tsx b/src/features/bracket/components/bracket-view.tsx new file mode 100644 index 0000000..fbaeffb --- /dev/null +++ b/src/features/bracket/components/bracket-view.tsx @@ -0,0 +1,48 @@ +import React, { useCallback, useMemo } from "react"; +import { Text, ScrollArea } from "@mantine/core"; +import { MatchCard } from "./match-card"; +import { BracketData } from "../types"; +import { Bracket } from "./bracket"; +import useAppShellHeight from "@/hooks/use-appshell-height"; + +interface BracketViewProps { + bracket: BracketData; + onAnnounce?: (teamOne: any, teamTwo: any) => void; +} + +const BracketView: React.FC = ({ bracket, onAnnounce }) => { + const height = useAppShellHeight(); + const orders = useMemo(() => { + const map: Record = {}; + bracket.winners.flat().forEach(match => map[match.lid] = match.order); + bracket.losers.flat().forEach(match => map[match.lid] = match.order); + return map; + }, [bracket.winners, bracket.losers]); + + return +
+ + Winners Bracket + + +
+ {bracket.losers && ( +
+ + Losers Bracket + + +
+ )} +
+}; + +export default BracketView; diff --git a/src/features/bracket/components/bracket.tsx b/src/features/bracket/components/bracket.tsx new file mode 100644 index 0000000..373ff17 --- /dev/null +++ b/src/features/bracket/components/bracket.tsx @@ -0,0 +1,44 @@ +import { Flex } from "@mantine/core"; +import { Match } from "@/features/matches/types"; +import { MatchCard } from "./match-card"; + +interface BracketProps { + rounds: Match[][]; + orders: Record; + onAnnounce?: (teamOne: any, teamTwo: any) => void; +} + +export const Bracket: React.FC = ({ + rounds, + orders, + onAnnounce, +}) => { + return ( + + {rounds.map((round, roundIndex) => ( + + {round + .filter((match) => !match.bye) + .map((match) => { + return ( +
+ +
+ ); + })} +
+ ))} +
+ ); +}; diff --git a/src/features/bracket/components/match-card.tsx b/src/features/bracket/components/match-card.tsx index 1bde010..b117dbd 100644 --- a/src/features/bracket/components/match-card.tsx +++ b/src/features/bracket/components/match-card.tsx @@ -1,72 +1,98 @@ -import { ActionIcon, Card, Text } from '@mantine/core'; -import { PlayIcon } from '@phosphor-icons/react'; -import React, { useCallback, useMemo } from 'react'; -import { MatchSlot } from './match-slot'; -import { Match } from '../types'; +import { ActionIcon, Card, Flex, Text } from "@mantine/core"; +import { PlayIcon } from "@phosphor-icons/react"; +import React, { useCallback, useMemo } from "react"; +import { MatchSlot } from "./match-slot"; +import { Match } from "@/features/matches/types"; interface MatchCardProps { match: Match; - getParentMatchOrder: (parentLid: number) => number | string; + orders: Record; onAnnounce?: (teamOne: any, teamTwo: any) => void; } -export const MatchCard: React.FC = ({ - match, - getParentMatchOrder, - onAnnounce +export const MatchCard: React.FC = ({ + match, + orders, + onAnnounce, }) => { + const homeSlot = useMemo( + () => ({ + from: orders[match.home_from_lid], + from_loser: match.home_from_loser, + team: match.home, + seed: match.home_seed, + }), + [match] + ); + const awaySlot = useMemo( + () => ({ + from: orders[match.away_from_lid], + from_loser: match.away_from_loser, + team: match.away, + seed: match.away_seed, + }), + [match] + ); - const showAnnounce = useMemo(() => - onAnnounce && match.home.team && match.away.team, - [onAnnounce, match.home.team, match.away.team]); + const showAnnounce = useMemo( + () => onAnnounce && match.home && match.away, + [onAnnounce, match.home, match.away] + ); - const handleAnnounce = useCallback(() => - onAnnounce?.(match.home.team, match.away.team), [match.home.team, match.away.team]); + const handleAnnounce = useCallback( + () => onAnnounce?.(match.home, match.away), + [match.home, match.away] + ); return ( - - - - - - - - - - {match.reset && ( - - * If necessary - - )} - - {showAnnounce && ( - - - - )} - + + + {match.order} + + + + + + + + + + + {match.reset && ( + + * If necessary + + )} + + {showAnnounce && ( + + + + )} + + ); -}; \ No newline at end of file +}; diff --git a/src/features/bracket/components/match-slot.tsx b/src/features/bracket/components/match-slot.tsx index 7babadc..efa3e37 100644 --- a/src/features/bracket/components/match-slot.tsx +++ b/src/features/bracket/components/match-slot.tsx @@ -1,51 +1,35 @@ import { Flex, Text } from "@mantine/core"; import React from "react"; import { SeedBadge } from "./seed-badge"; +import { TeamInfo } from "@/features/teams/types"; interface MatchSlotProps { - slot: any; - getParentMatchOrder: (parentLid: number) => number | string; + from?: number; + from_loser?: boolean; + team?: TeamInfo; + seed?: number; } export const MatchSlot: React.FC = ({ - slot, - getParentMatchOrder, -}) => { - const renderSlotContent = () => { - if (slot?.seed) { - return slot.team ? ( - {slot.team.name} - ) : ( - - Team {slot.seed} - - ); - } - - if (slot?.parent_lid !== null && slot?.parent_lid !== undefined) { - return ( + from, + from_loser, + team, + seed, +}) => ( + + {seed && } + + {team ? ( + {team.name} + ) : from ? ( - {slot.loser ? "Loser" : "Winner"} of Match{" "} - {getParentMatchOrder(slot.parent_lid)} + {from_loser ? "Loser" : "Winner"} of Match {from} - ); - } - - if (slot) { - return ( - + ) : ( + TBD - ); - } - - return null; - }; - - return ( - - {slot?.seed && } -
{renderSlotContent()}
+ )}
- ); -}; +
+); diff --git a/src/features/bracket/queries.ts b/src/features/bracket/queries.ts index 037690b..2b4a197 100644 --- a/src/features/bracket/queries.ts +++ b/src/features/bracket/queries.ts @@ -1,4 +1,3 @@ -import { queryOptions } from "@tanstack/react-query"; import { previewBracket } from "./server"; import { useServerSuspenseQuery } from "@/lib/tanstack-query/hooks"; import { BracketData } from "./types"; diff --git a/src/features/bracket/utils/index.ts b/src/features/bracket/utils/index.ts index 2543ed2..2f19343 100644 --- a/src/features/bracket/utils/index.ts +++ b/src/features/bracket/utils/index.ts @@ -1,15 +1,15 @@ /** * Imports saved json dumps of bracket generation from a python script that I didn't prioritize converting to TS */ -import b12 from "../../../../scripts/brackets/12.json"; -import b13 from "../../../../scripts/brackets/13.json"; -import b14 from "../../../../scripts/brackets/14.json"; -import b15 from "../../../../scripts/brackets/15.json"; -import b16 from "../../../../scripts/brackets/16.json"; -import b17 from "../../../../scripts/brackets/17.json"; -import b18 from "../../../../scripts/brackets/18.json"; -import b19 from "../../../../scripts/brackets/19.json"; -import b20 from "../../../../scripts/brackets/20.json"; +import b12 from "../../../../brackets/12.json"; +import b13 from "../../../../brackets/13.json"; +import b14 from "../../../../brackets/14.json"; +import b15 from "../../../../brackets/15.json"; +import b16 from "../../../../brackets/16.json"; +import b17 from "../../../../brackets/17.json"; +import b18 from "../../../../brackets/18.json"; +import b19 from "../../../../brackets/19.json"; +import b20 from "../../../../brackets/20.json"; export default { 12: b12, diff --git a/src/features/matches/types.ts b/src/features/matches/types.ts index 4b4f0fe..39aa074 100644 --- a/src/features/matches/types.ts +++ b/src/features/matches/types.ts @@ -1,5 +1,38 @@ import { z } from "zod"; +/** + * class TMatchSlot(BaseModel): + pass + + +class Seed(TMatchSlot): + seed: int + + +class TBD(TMatchSlot): + parent: "TMatchBase" + loser: bool + + +class TMatchBase(BaseModel): + lid: int # local id + round: int + order: Optional[int] = None + + +class TMatch(TMatchBase): + home: Seed | TBD + away: Seed | TBD + reset: bool = False + + def __repr__(self): + return f'{self.order}' + + +class TBye(TMatchBase): + home: Seed | TBD + */ + export interface Match { id: string; order: number; @@ -22,6 +55,8 @@ export interface Match { away: string; created: string; updated: string; + home_seed?: number; + away_seed?: number; } export const matchInputSchema = z.object({ @@ -43,6 +78,7 @@ export const matchInputSchema = z.object({ tournament: z.string().min(1), home: z.string().min(1).optional(), away: z.string().min(1).optional(), + seed: z.number().int().min(1).optional(), }); export type MatchInput = z.infer; diff --git a/src/features/teams/types.ts b/src/features/teams/types.ts index 958c053..98fd725 100644 --- a/src/features/teams/types.ts +++ b/src/features/teams/types.ts @@ -22,6 +22,13 @@ export interface Team { tournaments: Tournament[]; } +export interface TeamInfo { + id: string; + name: string; + primary_color: string; + accent_color: string; +} + export const teamInputSchema = z .object({ name: z.string().min(1, "Team name is required").max(100, "Name too long"),