public static Double NextDouble(this Random random, Double lowerBound, Double upperBound) { lowerBound.ThrowIfStrictlyGreaterThan(upperBound, nameof(lowerBound)); // Analysis disable once InvokeAsExtensionMethod var value = RandomExtensions.NextDouble(random) * (upperBound - lowerBound) + lowerBound; return value; }