#9233: Fix json to work properly even when _json is not available.
diff --git a/Lib/json/decoder.py b/Lib/json/decoder.py
index d606cbd..7b3d7d5 100644
--- a/Lib/json/decoder.py
+++ b/Lib/json/decoder.py
@@ -214,7 +214,7 @@
         pairs = object_hook(pairs)
     return pairs, end
 
-def JSONArray(s_and_end, scan_once, context, _w=WHITESPACE.match):
+def JSONArray(s_and_end, scan_once, _w=WHITESPACE.match, _ws=WHITESPACE_STR):
     s, end = s_and_end
     values = []
     nextchar = s[end:end + 1]
diff --git a/Lib/json/scanner.py b/Lib/json/scanner.py
index b4f3561..f94d236 100644
--- a/Lib/json/scanner.py
+++ b/Lib/json/scanner.py
@@ -22,6 +22,7 @@
     parse_int = context.parse_int
     parse_constant = context.parse_constant
     object_hook = context.object_hook
+    object_pairs_hook = context.object_pairs_hook
 
     def _scan_once(string, idx):
         try:
diff --git a/Misc/NEWS b/Misc/NEWS
index 021bcf1..6a4da30 100644
--- a/Misc/NEWS
+++ b/Misc/NEWS
@@ -51,9 +51,11 @@
 Library
 -------
 
-- Issue #11703 - urllib2.geturl() does not return correct url when the original
+- Issue #9233: Fix json to work properly even when _json is not available.
+
+- Issue #11703: urllib2.geturl() does not return correct url when the original
   url contains #fragment.
-  
+
 - Issue #10019: Fixed regression in json module where an indent of 0 stopped
   adding newlines and acted instead like 'None'.