naive no upper bounds works