Refactored, added caching option
1.2.0