diff --git a/Modules/_io/_iomodule.c b/Modules/_io/_iomodule.c
index f9bca1a..e046917 100644
--- a/Modules/_io/_iomodule.c
+++ b/Modules/_io/_iomodule.c
@@ -677,60 +677,47 @@
     ADD_TYPE(&PyIncrementalNewlineDecoder_Type, "IncrementalNewlineDecoder");
 
     /* Interned strings */
-    if (!(_PyIO_str_close = PyUnicode_InternFromString("close")))
+#define ADD_INTERNED(name) \
+    if (!_PyIO_str_ ## name && \
+        !(_PyIO_str_ ## name = PyUnicode_InternFromString(# name))) \
         goto fail;
-    if (!(_PyIO_str_closed = PyUnicode_InternFromString("closed")))
+
+    ADD_INTERNED(close)
+    ADD_INTERNED(closed)
+    ADD_INTERNED(decode)
+    ADD_INTERNED(encode)
+    ADD_INTERNED(fileno)
+    ADD_INTERNED(flush)
+    ADD_INTERNED(getstate)
+    ADD_INTERNED(isatty)
+    ADD_INTERNED(newlines)
+    ADD_INTERNED(read)
+    ADD_INTERNED(read1)
+    ADD_INTERNED(readable)
+    ADD_INTERNED(readall)
+    ADD_INTERNED(readinto)
+    ADD_INTERNED(readline)
+    ADD_INTERNED(reset)
+    ADD_INTERNED(seek)
+    ADD_INTERNED(seekable)
+    ADD_INTERNED(setstate)
+    ADD_INTERNED(tell)
+    ADD_INTERNED(truncate)
+    ADD_INTERNED(write)
+    ADD_INTERNED(writable)
+
+    if (!_PyIO_str_nl &&
+        !(_PyIO_str_nl = PyUnicode_InternFromString("\n")))
         goto fail;
-    if (!(_PyIO_str_decode = PyUnicode_InternFromString("decode")))
+
+    if (!_PyIO_empty_str &&
+        !(_PyIO_empty_str = PyUnicode_FromStringAndSize(NULL, 0)))
         goto fail;
-    if (!(_PyIO_str_encode = PyUnicode_InternFromString("encode")))
+    if (!_PyIO_empty_bytes &&
+        !(_PyIO_empty_bytes = PyBytes_FromStringAndSize(NULL, 0)))
         goto fail;
-    if (!(_PyIO_str_fileno = PyUnicode_InternFromString("fileno")))
-        goto fail;
-    if (!(_PyIO_str_flush = PyUnicode_InternFromString("flush")))
-        goto fail;
-    if (!(_PyIO_str_getstate = PyUnicode_InternFromString("getstate")))
-        goto fail;
-    if (!(_PyIO_str_isatty = PyUnicode_InternFromString("isatty")))
-        goto fail;
-    if (!(_PyIO_str_newlines = PyUnicode_InternFromString("newlines")))
-        goto fail;
-    if (!(_PyIO_str_nl = PyUnicode_InternFromString("\n")))
-        goto fail;
-    if (!(_PyIO_str_read = PyUnicode_InternFromString("read")))
-        goto fail;
-    if (!(_PyIO_str_read1 = PyUnicode_InternFromString("read1")))
-        goto fail;
-    if (!(_PyIO_str_readable = PyUnicode_InternFromString("readable")))
-        goto fail;
-    if (!(_PyIO_str_readall = PyUnicode_InternFromString("readall")))
-        goto fail;
-    if (!(_PyIO_str_readinto = PyUnicode_InternFromString("readinto")))
-        goto fail;
-    if (!(_PyIO_str_readline = PyUnicode_InternFromString("readline")))
-        goto fail;
-    if (!(_PyIO_str_reset = PyUnicode_InternFromString("reset")))
-        goto fail;
-    if (!(_PyIO_str_seek = PyUnicode_InternFromString("seek")))
-        goto fail;
-    if (!(_PyIO_str_seekable = PyUnicode_InternFromString("seekable")))
-        goto fail;
-    if (!(_PyIO_str_setstate = PyUnicode_InternFromString("setstate")))
-        goto fail;
-    if (!(_PyIO_str_tell = PyUnicode_InternFromString("tell")))
-        goto fail;
-    if (!(_PyIO_str_truncate = PyUnicode_InternFromString("truncate")))
-        goto fail;
-    if (!(_PyIO_str_write = PyUnicode_InternFromString("write")))
-        goto fail;
-    if (!(_PyIO_str_writable = PyUnicode_InternFromString("writable")))
-        goto fail;
-    
-    if (!(_PyIO_empty_str = PyUnicode_FromStringAndSize(NULL, 0)))
-        goto fail;
-    if (!(_PyIO_empty_bytes = PyBytes_FromStringAndSize(NULL, 0)))
-        goto fail;
-    if (!(_PyIO_zero = PyLong_FromLong(0L)))
+    if (!_PyIO_zero &&
+        !(_PyIO_zero = PyLong_FromLong(0L)))
         goto fail;
 
     state->initialized = 1;
