This has a side effect of adding #23 as well. A more performant caching method is probably needed (as this doesn't cache at all).