@Override
public Pool apply(Pool pool) {
PoolBuilder result = pool.toBuilder();
result.software(apply(pool.getSoftware()));
result.network(apply(pool.getNetwork()));
if (osVersion != null) {
result.provider(pool.getProvider().toBuilder()
.option("version", osVersion).createProvider());