| date | competition | distance | round | pos | time | video |
|---|---|---|---|---|---|---|
| 2026-03-15 | WCh Montréal 26 | 500 m | Rep. Quarterfinals Heat 4 | DNS | watch | |
| 2026-03-13 | WCh Montréal 26 | 500 m | Heats Heat 2 | 4 | 1:12.267 | watch |
| 2026-02-20 | OG Milano Cortina 26 | 1500 m | Semifinals Semifinal 2 | 5 | 2:54.173 | |
| 2026-02-20 | OG Milano Cortina 26 | 1500 m | Quarterfinal 6 Quarterfinal 4 | 3 | 2:30.023 | |
| 2026-02-18 | OG Milano Cortina 26 | Relay 3000 m | Finals Final B | 3 | 4:12.272 | |
| 2026-02-14 | OG Milano Cortina 26 | Relay 3000 m | Semifinals Semifinal 1 | 4 | 4:08.826 | |
| 2026-02-14 | OG Milano Cortina 26 | 1000 m | Heats Heat 2 | 4 | 1:32.394 | |
| 2026-02-10 | OG Milano Cortina 26 | Relay 2000 m | Finals Final B | 3 | 2:47.708 | |
| 2026-02-10 | OG Milano Cortina 26 | 500 m | Heats Heat 5 | 3 | 44.488 | |
| 2026-01-18 | EC Tilburg 26 | 1500 m | Finals Final B | 2 | 2:35.262 | watch |
| 2026-01-18 | EC Tilburg 26 | 1500 m | Semifinals Heat 3 | 3 | 2:29.910 | watch |
| 2026-01-18 | EC Tilburg 26 | Relay 2000 m | Finals Final B | 1 | 2:43.326 | watch |
| 2026-01-17 | EC Tilburg 26 | Relay 3000 m | Finals Final A | YC | watch | |
| 2026-01-17 | EC Tilburg 26 | Relay 3000 m | Semifinals Heat 2 | 2 | 4:12.148 | watch |
| 2026-01-17 | EC Tilburg 26 | 1000 m | Quarterfinals Heat 4 | 5 | 2:06.125 | watch |
| 2026-01-17 | EC Tilburg 26 | Relay 2000 m | Semifinals Heat 1 | 3 | 2:41.924 | watch |
| 2026-01-16 | EC Tilburg 26 | 1000 m | Heats Heat 5 | 1 | 1:34.167 | watch |
| 2026-01-16 | EC Tilburg 26 | 500 m | Heats Heat 2 | PEN | watch | |
| 2026-01-16 | EC Tilburg 26 | 1500 m | Heats Heat 2 | 2 | 2:40.174 | watch |
| 2025-11-29 | WT4 Dordrecht 25 | Relay 3000 m | Finals Final B | 2 | 4:17.149 | watch |
| 2025-11-29 | WT4 Dordrecht 25 | Relay 3000 m | Semifinals Heat 2 | 3 | 4:11.651 | watch |
| 2025-11-29 | WT4 Dordrecht 25 | 1000 m | Quarterfinals Heat 1 | 3 | 1:31.418 | watch |
| 2025-11-28 | WT4 Dordrecht 25 | Relay 2000 m | Ranking Finals Heat 1 | 2 | 2:44.744 | watch |
| 2025-11-28 | WT4 Dordrecht 25 | 1500 m | Heats Heat 8 | PEN | watch | |
| 2025-11-27 | WT4 Dordrecht 25 | Relay 2000 m | Quarterfinals Heat 3 | 3 | 2:44.594 | watch |
| 2025-11-27 | WT4 Dordrecht 25 | Relay 3000 m | Quarterfinals Heat 2 | 3 | 4:12.716 | watch |
| 2025-11-27 | WT4 Dordrecht 25 | 1000 m | Heats Heat 5 | 2 | 1:33.706 | watch |
| 2025-11-27 | WT4 Dordrecht 25 | 1000 m | Heats Heat 7 | 1 | 1:36.906 | watch |
| 2025-11-23 | WT3 Gdansk 25 | 500 m | Quarterfinals Heat 3 | 4 | 44.616 | watch |
| 2025-11-23 | WT3 Gdansk 25 | 1500 m | Rep. Semifinals Heat 2 | 3 | 2:32.578 | watch |
| 2025-11-23 | WT3 Gdansk 25 | 1500 m | Rep. Quarterfinals Heat 5 | 2 | 2:37.154 | watch |
| 2025-11-22 | WT3 Gdansk 25 | Relay 3000 m | Finals Final B | 2 | 4:18.946 | watch |
| 2025-11-22 | WT3 Gdansk 25 | Relay 3000 m | Semifinals Heat 1 | 3 | 4:27.890 | watch |
| 2025-11-21 | WT3 Gdansk 25 | Relay 2000 m | Ranking Finals Heat 1 | 1 | 2:47.200 | watch |
| 2025-11-21 | WT3 Gdansk 25 | 500 m | Heats Heat 6 | 2 | 44.296 | watch |
| 2025-11-21 | WT3 Gdansk 25 | 1500 m | Heats Heat 8 | 4 | 2:38.397 | watch |
| 2025-11-21 | WT3 Gdansk 25 | 500 m | Heats Heat 7 | 1 | 45.406 | watch |
| 2025-11-20 | WT3 Gdansk 25 | Relay 2000 m | Quarterfinals Heat 3 | 3 | 2:45.691 | watch |
| 2025-11-20 | WT3 Gdansk 25 | Relay 3000 m | Quarterfinals Heat 1 | 3 | 4:41.379 | watch |
| 2025-10-19 | WT2 Montréal 25 | 1500 m | Rep. Semifinals Heat 1 | 7 | 2:32.736 | |
| 2025-10-19 | WT2 Montréal 25 | 1500 m | Rep. Quarterfinals Heat 4 | 2 | 2:43.678 | |
| 2025-10-19 | WT2 Montréal 25 | 500 m | Rep. Semifinals Heat 1 | 2 | 45.187 | |
| 2025-10-18 | WT2 Montréal 25 | 1000 m | Rep. Semifinals Heat 1 | 4 | 2:00.986 | |
| 2025-10-17 | WT2 Montréal 25 | 500 m | Rep. Quarterfinals Heat 5 | 1 | 44.994 | |
| 2025-10-17 | WT2 Montréal 25 | 1500 m | Heats Heat 7 | 4 | 2:43.331 | |
| 2025-10-17 | WT2 Montréal 25 | 500 m | Heats Heat 8 | 4 | 44.252 | |
| 2025-10-17 | WT2 Montréal 25 | 500 m | Heats Heat 8 | 1 | 45.025 | |
| 2025-10-16 | WT2 Montréal 25 | Relay 3000 m | Ranking Finals Heat 1 | 2 | 4:20.756 | |
| 2025-10-16 | WT2 Montréal 25 | Relay 2000 m | Quarterfinals Heat 3 | 4 | 2:41.485 | |
| 2025-10-16 | WT2 Montréal 25 | 1000 m | Rep. Quarterfinals Heat 4 | 1 | 1:34.608 | |
| 2025-10-16 | WT2 Montréal 25 | Relay 3000 m | Quarterfinals Heat 2 | 4 | 4:17.718 | |
| 2025-10-16 | WT2 Montréal 25 | 1000 m | Heats Heat 2 | 5 | 1:34.460 | |
| 2025-10-16 | WT2 Montréal 25 | 1000 m | Heats Heat 7 | 2 | 1:37.342 | |
| 2025-10-12 | WT1 Montréal 25 | 1500 m | Semifinals Heat 2 | PEN | watch | |
| 2025-10-11 | WT1 Montréal 25 | Relay 3000 m | Finals Final B | 3 | 4:16.856 | |
| 2025-10-11 | WT1 Montréal 25 | Relay 3000 m | Semifinals Heat 1 | 4 | 4:34.372 | watch |
| 2025-10-11 | WT1 Montréal 25 | 1000 m | Quarterfinals Heat 3 | 5 | 1:31.659 | watch |
| 2025-10-11 | WT1 Montréal 25 | 1000 m | Rep. Semifinals Heat 2 | 1 | 1:32.329 | |
| 2025-10-10 | WT1 Montréal 25 | 500 m | Rep. Quarterfinals Heat 7 | 3 | 44.915 | |
| 2025-10-10 | WT1 Montréal 25 | 1500 m | Heats Heat 9 | 2 | 2:28.929 | |
| 2025-10-10 | WT1 Montréal 25 | 500 m | Heats Heat 4 | 3 | 45.184 | |
| 2025-10-09 | WT1 Montréal 25 | Relay 2000 m | Quarterfinals Heat 3 | 4 | 2:42.651 | |
| 2025-10-09 | WT1 Montréal 25 | 1000 m | Rep. Quarterfinals Heat 2 | 1 | 1:34.309 | |
| 2025-10-09 | WT1 Montréal 25 | Relay 3000 m | Quarterfinals Heat 1 | 3 | 4:13.584 | |
| 2025-10-09 | WT1 Montréal 25 | 1000 m | Heats Heat 3 | 3 | 1:32.432 | |
| 2025-10-09 | WT1 Montréal 25 | 1000 m | Heats Heat 3 | 2 | 1:34.355 | |
| 2025-03-16 | WCh Beijing 25 | 500 m | Rep. Semifinals Heat 1 | 2 | 43.865 | watch |
| 2025-03-16 | WCh Beijing 25 | 500 m | Rep. Quarterfinals Heat 3 | no time | watch | |
| 2025-03-16 | WCh Beijing 25 | 1500 m | Rep. Quarterfinals Heat 2 | no time | watch | |
| 2025-03-15 | WCh Beijing 25 | 1000 m | Rep. Semifinals Heat 2 | 5 | 2:06.637 | watch |
| 2025-03-15 | WCh Beijing 25 | 1000 m | Rep. Quarterfinals Heat 2 | 2 | 1:34.576 | watch |
| 2025-03-14 | WCh Beijing 25 | 1000 m | Heats Heat 4 | 5 | 1:30.957 | watch |
| 2025-03-14 | WCh Beijing 25 | 1000 m | Heats Heat 7 | 3 | 1:30.892 | watch |
| 2025-03-14 | WCh Beijing 25 | 500 m | Heats Heat 6 | 4 | 43.587 | watch |
| 2025-03-14 | WCh Beijing 25 | 1500 m | Heats Heat 4 | 4 | 2:27.350 | watch |
| 2025-02-16 | WT Milan 25 | 1500 m | Semifinals Heat 3 | 5 | 2:27.779 | |
| 2025-02-16 | WT Milan 25 | 500 m | Rep. Semifinals Heat 2 | 3 | 44.457 | |
| 2025-02-16 | WT Milan 25 | 500 m | Rep. Quarterfinals Heat 3 | 1 | 44.223 | |
| 2025-02-16 | WT Milan 25 | 1500 m | Rep. Semifinals Heat 2 | 1 | 2:37.421 | |
| 2025-02-16 | WT Milan 25 | 1500 m | Rep. Quarterfinals Heat 1 | 3 | 2:35.633 | |
| 2025-02-15 | WT Milan 25 | 1000 m | Rep. Quarterfinals Heat 4 | 3 | 1:35.798 | |
| 2025-02-14 | WT Milan 25 | 1000 m | Heats Heat 7 | 5 | 1:44.539 | |
| 2025-02-14 | WT Milan 25 | 500 m | Heats Heat 7 | 3 | 43.340 | |
| 2025-02-14 | WT Milan 25 | 1500 m | Heats Heat 6 | 3 | 2:24.270 | |
| 2025-02-14 | WT Milan 25 | 1000 m | Heats Heat 5 | 1 | 1:33.649 | |
| 2025-02-14 | WT Milan 25 | 500 m | Heats Heat 3 | 1 | 44.137 | |
| 2025-02-09 | WT Tilburg 25 | 500 m | Quarterfinals Heat 3 | 4 | 43.953 | watch |
| 2025-02-09 | WT Tilburg 25 | 500 m | Rep. Semifinals Heat 2 | 1 | 44.434 | watch |
| 2025-02-09 | WT Tilburg 25 | 500 m | Rep. Quarterfinals Heat 4 | 1 | 44.690 | watch |
| 2025-02-09 | WT Tilburg 25 | 1500 m | Rep. Semifinals Heat 1 | 3 | 2:51.412 | watch |
| 2025-02-09 | WT Tilburg 25 | 1500 m | Rep. Quarterfinals Heat 4 | 2 | 2:26.956 | watch |
| 2025-02-08 | WT Tilburg 25 | 1000 m | Rep. Semifinals Heat 2 | 3 | 1:34.909 | watch |
| 2025-02-08 | WT Tilburg 25 | 1000 m | Rep. Quarterfinals Heat 4 | 2 | 1:38.916 | watch |
| 2025-02-07 | WT Tilburg 25 | 1000 m | Heats Heat 2 | 3 | 1:35.105 | watch |
| 2025-02-07 | WT Tilburg 25 | 500 m | Heats Heat 5 | 3 | 44.426 | watch |
| 2025-02-07 | WT Tilburg 25 | 1500 m | Heats Heat 3 | 4 | 2:37.073 | watch |
| 2025-02-07 | WT Tilburg 25 | 1000 m | Heats Heat 1 | 3 | 1:35.556 | |
| 2025-02-07 | WT Tilburg 25 | 500 m | Heats Heat 2 | 2 | 45.172 | |
| 2025-01-19 | EC Dresden 25 | 500 m | Finals Final B | 1 | 44.851 | watch |
| 2025-01-19 | EC Dresden 25 | 500 m | Semifinals Heat 2 | 4 | 44.586 | watch |
| 2025-01-19 | EC Dresden 25 | 500 m | Quarterfinals Heat 4 | 2 | 44.354 | watch |
| 2025-01-18 | EC Dresden 25 | 1000 m | Quarterfinals Heat 1 | 3 | 1:33.697 | watch |
| 2025-01-17 | EC Dresden 25 | 1000 m | Heats Heat 5 | 2 | 1:33.875 | watch |
| 2025-01-17 | EC Dresden 25 | 500 m | Heats Heat 2 | 2 | 44.193 | watch |
| 2024-03-17 | WCh Rotterdam 24 | 1000 m | Rep. Semifinals Heat 2 | 4 | 1:35.116 | |
| 2024-03-17 | WCh Rotterdam 24 | 1000 m | Rep. Quarterfinals Heat 3 | 2 | 1:36.067 | |
| 2024-03-16 | WCh Rotterdam 24 | 500 m | Rep. Quarterfinals Heat 3 | 4 | 45.694 | |
| 2024-03-15 | WCh Rotterdam 24 | 1000 m | Heats Heat 2 | 3 | 1:37.110 | |
| 2024-03-15 | WCh Rotterdam 24 | 500 m | Heats Heat 9 | 3 | 45.072 | |
| 2024-02-18 | WT Gdansk 24 | 500 m | Quarterfinals Heat 2 | 3 | 44.832 | |
| 2024-02-18 | WT Gdansk 24 | 500 m | Rep. Semifinals Heat 1 | 3 | 45.881 | |
| 2024-02-18 | WT Gdansk 24 | 500 m | Rep. Quarterfinals Heat 1 | 1 | 45.285 | |
| 2024-02-17 | WT Gdansk 24 | 500 m | Quarterfinals Heat 2 | 5 | 1:00.059 | |
| 2024-02-16 | WT Gdansk 24 | 500 m | Heats Heat 3 | 4 | 45.264 | |
| 2024-02-16 | WT Gdansk 24 | 500 m | Heats Heat 2 | 1 | 45.156 | |
| 2024-02-11 | WT Dresden 24 | 500 m | Quarterfinals Heat 1 | 4 | 58.554 | |
| 2024-02-10 | WT Dresden 24 | 1000 m | Quarterfinals Heat 4 | 3 | 1:32.319 | |
| 2024-02-09 | WT Dresden 24 | 500 m | Heats Heat 2 | 2 | 43.733 | |
| 2024-02-09 | WT Dresden 24 | 1000 m | Heats Heat 2 | 3 | 1:31.121 | |
| 2024-01-14 | EC Gdansk 24 | 1000 m | Quarterfinals Heat 2 | 3 | 1:35.518 | |
| 2024-01-13 | EC Gdansk 24 | 500 m | Quarterfinals Heat 1 | 3 | 45.252 | |
| 2024-01-12 | EC Gdansk 24 | 1000 m | Heats Heat 4 | 1 | 1:35.968 | |
| 2024-01-12 | EC Gdansk 24 | 500 m | Heats Heat 7 | 2 | 45.206 | |
| 2023-12-10 | WT Beijing 23 | 500 m | Quarterfinals Heat 4 | 5 | 43.954 | |
| 2023-12-09 | WT Beijing 23 | 500 m | Rep. Quarterfinals Heat 1 | 3 | 1:01.014 | |
| 2023-12-08 | WT Beijing 23 | 500 m | Heats Heat 4 | 3 | 44.066 | |
| 2023-12-08 | WT Beijing 23 | 500 m | Heats Heat 1 | 5 | 45.150 | |
| 2023-10-29 | WT Montréal 23 | 1000 m | Rep. Quarterfinals Heat 4 | 5 | 1:34.627 | |
| 2023-10-28 | WT Montréal 23 | 500 m | Rep. Quarterfinals Heat 1 | 4 | 1:04.500 | |
| 2023-10-27 | WT Montréal 23 | 1000 m | Heats Heat 8 | 5 | 1:35.086 | |
| 2023-10-27 | WT Montréal 23 | 500 m | Heats Heat 6 | 4 | 44.206 | |
| 2023-10-22 | WT Montréal 23 | 500 m | Quarterfinals Heat 2 | 4 | 44.079 | |
| 2023-10-21 | WT Montréal 23 | 1000 m | Rep. Semifinals Heat 1 | PEN | ||
| 2023-10-21 | WT Montréal 23 | 1000 m | Rep. Quarterfinals Heat 3 | 2 | 1:35.511 | |
| 2023-10-20 | WT Montréal 23 | 500 m | Heats Heat 6 | 2 | 44.638 | |
| 2023-10-20 | WT Montréal 23 | 1000 m | Heats Heat 7 | 5 | 1:45.950 | |
| 2023-03-12 | WCh Seoul 23 | 1000 m | Rep. Semifinals Heat 1 | 2 | 1:32.757 | watch |
| 2023-03-12 | WCh Seoul 23 | 1000 m | Rep. Quarterfinals Heat 2 | 1 | 1:36.845 | watch |
| 2023-03-11 | WCh Seoul 23 | 500 m | Quarterfinals Heat 1 | 4 | 44.922 | watch |
| 2023-03-11 | WCh Seoul 23 | 500 m | Rep. Semifinals Heat 2 | 1 | 45.449 | watch |
| 2023-03-11 | WCh Seoul 23 | 500 m | Rep. Quarterfinals Heat 1 | 1 | 45.551 | watch |
| 2023-03-10 | WCh Seoul 23 | 1000 m | Heats Heat 7 | 4 | 1:34.886 | watch |
| 2023-03-10 | WCh Seoul 23 | 500 m | Heats Heat 8 | 5 | 44.820 | watch |
| 2023-02-12 | WT Dordrecht 23 | 500 m | Rep. Semifinals Heat 1 | 4 | 52.781 | |
| 2023-02-12 | WT Dordrecht 23 | 500 m | Rep. Quarterfinals Heat 4 | 2 | 45.376 | |
| 2023-02-11 | WT Dordrecht 23 | 1000 m | Rep. Quarterfinals Heat 3 | 4 | 1:36.520 | |
| 2023-02-10 | WT Dordrecht 23 | 500 m | Heats Heat 3 | 3 | 45.000 | |
| 2023-02-10 | WT Dordrecht 23 | 1000 m | Heats Heat 2 | 4 | 1:32.455 | |
| 2023-02-05 | WT Dresden 23 | 500 m | Rep. Quarterfinals Heat 6 | 3 | 44.704 | |
| 2023-02-04 | WT Dresden 23 | 1000 m | Rep. Semifinals Heat 2 | 4 | 1:36.579 | |
| 2023-02-04 | WT Dresden 23 | 1000 m | Rep. Quarterfinals Heat 1 | 2 | 1:35.809 | |
| 2023-02-03 | WT Dresden 23 | 500 m | Heats Heat 5 | 4 | 44.605 | |
| 2023-02-03 | WT Dresden 23 | 500 m | Heats Heat 9 | 4 | 44.291 | |
| 2023-02-03 | WT Dresden 23 | 1000 m | Heats Heat 2 | 4 | 1:33.763 | |
| 2023-01-15 | EC Gdansk 23 | 1000 m | Finals Final B | 5 | 1:40.355 | |
| 2023-01-15 | EC Gdansk 23 | 1000 m | Semifinals Heat 1 | 4 | 1:39.047 | |
| 2023-01-15 | EC Gdansk 23 | 1000 m | Quarterfinals Heat 3 | 4 | 1:45.732 | |
| 2023-01-14 | EC Gdansk 23 | 500 m | Rep. Semifinals Heat 1 | PEN | ||
| 2023-01-14 | EC Gdansk 23 | 500 m | Rep. Quarterfinals Heat 2 | 1 | 46.318 | |
| 2023-01-13 | EC Gdansk 23 | 1000 m | Heats Heat 6 | 3 | 1:35.489 | |
| 2023-01-13 | EC Gdansk 23 | 500 m | Heats Heat 6 | 4 | 45.501 | |
| 2021-11-26 | WT Dordrecht 21 | 1000 m | Heats Heat 11 | 4 | 1:36.097 | |
| 2021-11-25 | WT Dordrecht 21 | 500 m | Heats Heat 3 | 4 | 1:05.278 | |
| 2021-11-18 | WT Debrecen 21 | 500 m | Heats Heat 10 | 3 | 45.761 | |
| 2021-10-28 | WT Nagoya 21 | 500 m | Heats Heat 8 | 4 | 45.368 | |
| 2021-10-21 | WT Beijing 21 | 500 m | Heats Heat 12 | PEN | ||
| JWCh Bormio 20 | 1500 m | Heats Heat 2 | 1 | 2:29.292 | ||
| 2020-02-02 | JWCh Bormio 20 | 1000 m | Heats Heat 7 | 3 | 1:35.987 | |
| JWCh Bormio 20 | 1000 m | Quarterfinals Heat 1 | 4 | 1:33.918 | ||
| 2020-02-01 | JWCh Bormio 20 | 500 m | Ranking Finals Preliminaries Heat 4 | 1 | 45.385 | |
| 2020-01-31 | JWCh Bormio 20 | 1000 m | Heats Heat 7 | 1 | 1:38.588 | |
| 2020-01-31 | JWCh Bormio 20 | 500 m | Heats Heat 9 | 4 | 45.086 | |
| 2020-01-31 | JWCh Bormio 20 | 1500 m | Ranking Finals Heat 2 | 1 | 2:29.292 | |
| 2020-01-31 | JWCh Bormio 20 | 1500 m | Quarterfinals Heat 2 | 6 | 2:26.969 | |
| 2020-01-31 | JWCh Bormio 20 | 1000 m | Preliminaries Heat 7 | 1 | 1:38.588 | |
| 2020-01-31 | JWCh Bormio 20 | 500 m | Preliminaries Heat 9 | 4 | 45.086 | |
| 2019-01-27 | JWCh Montreal 19 | 1000 m | Ranking Finals Preliminaries | 4 | 1:44.309 | |
| 2019-01-25 | JWCh Montreal 19 | 1500 m | Ranking Finals Heat 5 | 6 | no time | |
| 2019-01-25 | JWCh Montreal 19 | 1500 m | Quarterfinals Heat 8 | 3 | 2:37.831 | |
| 2019-01-25 | JWCh Montreal 19 | 500 m | Ranking Finals Preliminaries Heat 5 | 3 | 47.382 | |
| 2019-01-25 | JWCh Montreal 19 | 500 m | Preliminaries Heat 8 | 4 | 47.111 | |
| 2019-01-25 | JWCh Montreal 19 | 1000 m | Preliminaries Heat 4 | 3 | 1:40.812 | |
| 2018-03-02 | JWCh Tomaszow Mazowiecki 18 | 500 m | Preliminaries | 4 | 48.861 | |
| 2018-03-02 | JWCh Tomaszow Mazowiecki 18 | 1500 m | Ranking Finals Heat 2 | 6 | 3:07.039 | |
| 2018-03-02 | JWCh Tomaszow Mazowiecki 18 | 1500 m | Heats Heat 4 | 5 | 2:49.319 | |
| 2018-03-02 | JWCh Tomaszow Mazowiecki 18 | 500 m | Ranking Finals Heat 5 | 3 | 48.618 | |
| 2018-03-02 | JWCh Tomaszow Mazowiecki 18 | 1000 m | Ranking Finals Heat 5 | 4 | 1:44.173 | |
| 2018-03-02 | JWCh Tomaszow Mazowiecki 18 | 1000 m | Preliminaries Heat 7 | 4 | 1:42.373 |
All skaters in the archive · Search any skater
New to short track? Start here — the track, the rules, and what the penalty codes actually mean.