code: def JSONArray(
      state, scan_once, _w=WHITESPACE.match, _ws=WHITESPACE_STR
  ):
      (s, end) = state
      values = []
      nextchar = s[end : end + 1]
      if nextchar in _ws:
          end = _w(s, end + 1).end()
          nextchar = s[end : end + 1]
      # Look-ahead for trivial empty array
      if nextchar == "]":
          return values, end + 1
      elif nextchar == "":
          raise JSONDecodeError("Expecting value or ']'", s, end)
      _append = values.append
      while True:
          value, end = scan_once(s, end)
          _append(value)
          nextchar = s[end : end + 1]
          if nextchar in _ws:
              end = _w(s, end + 1).end()
              nextchar = s[end : end + 1]
          end += 1
          if nextchar == "]":
              break
          elif nextchar != ",":
              raise JSONDecodeError(
                  "Expecting ',' delimiter or ']'", s, end - 1
              )
  
          try:
              if s[end] in _ws:
                  end += 1
                  if s[end] in _ws:
                      end = _w(s, end + 1).end()
          except IndexError:
              pass
  
      return values, end
  
file_path: catboost/contrib/python/simplejson/py3/simplejson/decoder.py
imports: from __future__ import absolute_import
  import re
  import sys
  import struct
  from .compat import PY3, unichr
  from .scanner import make_scanner, JSONDecodeError
label_desc: Use image node_id 5 for calling a global function with example usage: JSONArray(state, scan_once, _w, _ws) and returns: values,  end, values,  unknown