It seems `<T extends @Nullable Object>` does not work well in some situations, see https://github.com/uber/NullAway/issues/1075. Because of this bug in NullAway, we need to use `@NullUnmarked` and "invert" the contract unnecessarily, see [here](https://github.com/micrometer-metrics/micrometer/pull/6385/files#diff-ded137c872c542917642b07bf544b3c5d4319a17a2f10fe771bf158f54390c11R59) and [here](https://github.com/micrometer-metrics/micrometer/pull/6385/files#diff-ded137c872c542917642b07bf544b3c5d4319a17a2f10fe771bf158f54390c11R72-R73).