# Porting from Ipkiss 3.9 to Ipkiss 3.10

## Removal of IPKISS2

### Primitives

The old ipkiss.primitives package has been removed. Import from ipkiss3 instead:

```
# OLD ipkiss2:
from ipkiss.primitives.elements.shape import Boundary
from ipkiss.primitives.group import Group
# NEW:
from ipkiss3.all import Boundary, Group
```

### Polyval

ipkiss3.numerical.polyval, which was a numba-accelerated version of numpy polyval, is no longer needed. Instead, you can directly use numpy.polyval. ipkiss3.numerical.polyval may be removed in a future version of IPKISS.

```
# IPKISS 3.9
from ipkiss3.numerical import polyval
import numpy as np
polyval(np.asarray([1, 2, 1]), 5.0)
# IPKISS 3.10
import numpy as np
np.polyval(np.asarray([1, 2, 1]), 5.0)
```