from io import BytesIO, StringIO def normalize_input(stream): """ Accept either a str/bytes stream or a file-like object and always return a file-like object. """ if isinstance(stream, str): return StringIO(stream) elif isinstance(stream, bytes): return BytesIO(stream) return stream