                     ])
                 }
             default:
-                currentIndex += source.step
+                currentIndex = index
             }
         }
         throw NSError(domain: NSCocoaErrorDomain, code: NSCocoaError.PropertyListReadCorruptError.rawValue, userInfo: [

            }()
        }

        func peekASCII(input: Index) -> UInt8? {
            guard hasNext(input) else {
                return nil
            }


    func consumeWhitespace(input: Index) -> Index? {
        var index = input
        while let (char, nextIndex) = source.takeASCII(index) where JSONReader.whitespaceASCII.contains(char) {
            index = nextIndex
        }
        return index
    }
