curse you VS
add WithMin and WithMax