performance optimization; caching
small improvements