Speed things up by adding a little caching.