if (visitedIDs.contains(id)) {
// cyclic reference - returning null for the inner most reference
return null;
}
visitedIDs.add(id);
ObjectList list = getObjectList(id);
String className = list.getObjectList(0).getValue().getName();
List<Property> properties = list.getObjectList(0).getPropertyListList();
if (className.endsWith("Element")) {
return new OperaWebElement(driver, id);
} else if (className.equals("Array")) {
List<Object> result = Lists.newArrayList();