*   (e.g., (10,) for a 10-element vector, [2, 5] for a 2 by 5 matrix))
     * @return The reshaped multiarray
     */
    public static PyMultiarray reshape(final PyObject o, int[] shape) {
        final PyMultiarray a = PyMultiarray.ascontiguous(o);
        shape = PyMultiarray.fixedShape(
                shape,
                PyMultiarray.shapeToNItems(a.dimensions));
        final int[] strides = PyMultiarray.shapeToStrides(
                shape,
                PyMultiarray.typeToNElements(a._typecode));
        return new PyMultiarray(a.data, a._typecode, a.start, shape, strides);
    }