# What happened to the dim parameter of new_variable?

Hello, Sage community!

I remember I could do this in order to have a bi-indexed variable for MILPs:

```
LP = MixedIntegerLinearProgram(maximization=True)
x = LP.new_variable(nonnegative=True, dim=2)
```

So, the syntax `x[1][2]`

is valid. This behavior is documented in some books and manuals for SageMath (perhaps, a little dated now).

However, I just tried to do this in one of my programs, and Sage responded:

```
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-15-350071b4e772> in <module>()
----> 1 x = LP.new_variable(nonnegative=True, dim=Integer(2))
/Scientific/SageMath/local/lib/python3.7/site-packages/sage/numerical/mip.pyx in sage.numerical.mip.MixedIntegerLinearProgram.new_variable (build/cythonized/sage/numerical/mip.c:6019)()
701 self._backend.problem_name(name)
702
--> 703 def new_variable(self, real=False, binary=False, integer=False, nonnegative=False, name="",
704 indices=None):
705 r"""
TypeError: new_variable() got an unexpected keyword argument 'dim'
```

Actually, `LP.new_variable??`

shows me the signature of the `new_variable`

function, but the `dim`

argument is missing.

Did something change? How can I get the same behavior now?

**SageMath version: 9.0-beta8**

Thanks in advance!