Added character caching