cacheable, fixes #2