I doubt that this works.

If I read this correctly:

This is an attribute to the single instance of the distribution, and can turn into a stale attribute (left over state).

Check if you call cdf in sequence with different arguments like a,b, then x_opt should be attached and not updated.

For example, does the first and last line give the same answer:

```
norminvgauss.cdf(5, 2, -1)
norminvgauss(3, -1).cdf(5)
norminvgauss.cdf(5, 2, -1)
```