From 18 to 8 seconds by caching the productions per grammar