is the `is_string()` and `is_int()` check necessary now? Can't you just check if it's an object and does not have the `__toString()` method? Everything else should be valid since you already checked for arrays.