26 points, advanced
Time limit: 2 hours, 30 minutes