public ObjectMatch tryUnmarshall(SerializerState state, Class clazz, Object o)
throws UnmarshallException {
JSONArray jso = (JSONArray) o;
Class cc = clazz.getComponentType();
int i = 0;
ObjectMatch m = new ObjectMatch(-1);
state.setSerialized(o, m);
try {
for (; i < jso.length(); i++) {
m.setMismatch(_ser.tryUnmarshall(state, cc, jso.get(i)).max(m).getMismatch());
}
} catch (UnmarshallException e) {
throw new UnmarshallException("element " + i + " " + e.getMessage(), e);
} catch (JSONException e) {
throw new UnmarshallException("element " + i + " " + e.getMessage() + " not found in json object", e);