@staticmethod<EOL><INDENT>def _handle_array(toks):<DEDENT>
if len(toks) == <NUM_LIT:5> and toks[<NUM_LIT:1>] == '<STR_LIT:{>' and toks[<NUM_LIT:4>] == '<STR_LIT:}>':<EOL><INDENT>return strategies.dictionaries(<EOL>keys=toks[<NUM_LIT:2>], values=toks[<NUM_LIT:3>], max_size=<NUM_LIT:20>)<EOL><DEDENT>if len(toks) == <NUM_LIT:2>:<EOL><INDENT>return strategies.lists(elements=toks[<NUM_LIT:1>], max_size=<NUM_LIT:20>)<EOL><DEDENT>raise ValueError("<STR_LIT>")<EOL>
Generate the correct strategy for an array signature.

:param toks: the list of parsed tokens
:returns: strategy that generates an array or dict as appropriate
:rtype: strategy