ILLEGAL: P f3-f4 on turn 28:

There was no P on f3. It is an empty space.

Go back with your browser's BACK button, reload the page, and try again.

For diagnostic purposes, here is the full movelist:

1. P e2-e3 
1... n g8-f6 
2. P f2-f3 
2... p h7-h6 
3. P d2-d3 
3... n b8-c6 
4. P a2-a3 
4... b c8-e6 
5. N g1-e2 
5... b f8-d6 
6. P e3-e4 
6... p h6-h5 
7. P h2-h3 
7... p h5-h4 
8. P c2-c3 
8... r h8-h6 
9. P a3-a4 
9... r h6-g6 
10. R h1-g1 
10... p a7-a6 
11. B c1-a3 
11... p a6-a5 
12. P d3-d4 
12... b e6-c4 
13. N e2-c1 
13... b d6-f4 
14. P b2-b3 
14... b c4-a6 
15. N c1-d3 
15... n f6-h5 
16. P d4-d5 
16... n c6-b8 
17. P c3-c4 
17... p c7-c6 
18. N b1-c3 
18... p e7-e6 
19. N c3-e2 
19... b f4-h6 
20. N d3-e5 
20... r g6-f6 
21. P g2-g3 
21... p h4-g3 
22. N e2-g3 
22... n h5-g3 
23. R g1-g3 
23... k e8-f8 
24. B f1-d3 
24... p c6-d5 
25. P e4-d5 
25... p e6-d5 
26. P c4-d5 
26... r f6-d6 
27. Q d1-e2 
27... r d6-d5 
28. P f3-f4 // - kentril kentril has won on time. -
28... P f3-f4