I'd prefer not to have an isinstance in there. I'm happy to re-factor though if you'd prefer to have a single return point.