} else if (reader.matches('[')) {
List<CoreValue> values = listFromJsopReader(reader, kernel);
properties.put(name, new MultiPropertyState(name, values));
} else {
CoreValue cv = fromJsopReader(reader, kernel);
properties.put(name, new SinglePropertyState(name, cv));
}
} while (reader.matches(','));
reader.read('}');
reader.read(JsopReader.END);
// optimize for empty childNodes