Added Objects.requireNotNull where adequate