try {
if (type == Token.SETPROP || type == Token.SETELEM && SetProp.isValidSetProp(n)) {
if (type == Token.SETPROP) {
result = new SetProp(n);
} else if (type == Token.SETELEM) {
result = new SetElem(n);
}
} else if (type == Token.SETNAME) {
result = new SetName(n);
} else if (type == Token.OBJECTLIT) {
result = new ObjectLit(n);