add denorm.cached decorator