Yeah, I think I agree.  To maintain backward compatibility, maybe do:

```
if (tup.size() <= 2 || tup[3].ptr() == Py_None)
```