The null cache doesn't need to be weak (the value is always strong ....) and also fix a minor math mix up