protected static function eatArray($input)
{
$length = strlen($input);
$array = [];
$cluster = null;
while (strlen($input)) {
$c = $input[0];
if ($c === ',') {
$input = substr($input, 1);
} elseif ($c === ']') {
$input = substr($input, 1);
break;
}
$chunk = self::eatValue($input);
$array[] = $chunk[0];
$input = $chunk[1];
}
return [$array, $input];
}