public static CollectionValidator<float> AggregateLessThanOrEqualTo(this CollectionValidator<float> collectionValidator,  Func<IEnumerable<float>, float> aggregator, float value, string errorMessage = null)
		{
			return collectionValidator.AggregateLessThanOrEqualTo((x) => (double)x, (collection) => (double)aggregator(collection.Select(x => (float)x)), (float)value, errorMessage);
		}
		public static CollectionValidator<ulong> AggregateLessThanOrEqualTo(this CollectionValidator<ulong> collectionValidator,  Func<IEnumerable<ulong>, ulong> aggregator, ulong value, string errorMessage = null)
		{
			return collectionValidator.AggregateLessThanOrEqualTo((x) => (double)x, (collection) => (double)aggregator(collection.Select(x => (ulong)x)), (ulong)value, errorMessage);
		}
		public static CollectionValidator<double> AggregateLessThanOrEqualTo(this CollectionValidator<double> collectionValidator,  Func<IEnumerable<double>, double> aggregator, double value, string errorMessage = null)
		{
			return collectionValidator.AggregateLessThanOrEqualTo((x) => (double)x, aggregator, (double)value, errorMessage);
		}
		public static CollectionValidator<decimal> AggregateLessThanOrEqualTo(this CollectionValidator<decimal> collectionValidator,  Func<IEnumerable<decimal>, decimal> aggregator, decimal value, string errorMessage = null)
		{
			return collectionValidator.AggregateLessThanOrEqualTo((x) => (double)x, (collection) => (double)aggregator(collection.Select(x => (decimal)x)), (double)value, errorMessage);
		}
		public static CollectionValidator<char> AggregateLessThanOrEqualTo(this CollectionValidator<char> collectionValidator,  Func<IEnumerable<char>, char> aggregator, char value, string errorMessage = null)
		{
			return collectionValidator.AggregateLessThanOrEqualTo((x) => (double)x, (collection) => (double)aggregator(collection.Select(x => (char)x)), (char)value, errorMessage);
		}