a lot more robust, also easen the process to invalidate or flush datas