* Rewrite. Doesn't need caching any longer. But I plan to add caching again
* Fix mode