Issue #13738: Simplify implementation of bytes.lower() and bytes.upper().
diff --git a/Objects/bytes_methods.c b/Objects/bytes_methods.c
index 7233cea..ef3c2f7 100644
--- a/Objects/bytes_methods.c
+++ b/Objects/bytes_methods.c
@@ -248,12 +248,8 @@
 {
     Py_ssize_t i;
 
-    Py_MEMCPY(result, cptr, len);
-
     for (i = 0; i < len; i++) {
-        int c = Py_CHARMASK(result[i]);
-        if (Py_ISUPPER(c))
-            result[i] = Py_TOLOWER(c);
+        result[i] = Py_TOLOWER((unsigned char) cptr[i]);
     }
 }
 
@@ -268,12 +264,8 @@
 {
     Py_ssize_t i;
 
-    Py_MEMCPY(result, cptr, len);
-
     for (i = 0; i < len; i++) {
-        int c = Py_CHARMASK(result[i]);
-        if (Py_ISLOWER(c))
-            result[i] = Py_TOUPPER(c);
+        result[i] = Py_TOUPPER((unsigned char) cptr[i]);
     }
 }