add base upper bound