}
int slot = frame.findVariable(symbol);
if (slot != -1) {
return frame.matchViaWriteSet(slot, symbol);
}
EnclosingSlot eslot = frame.findEnclosingVariable(symbol);
if (eslot != null) {
return frame.enclosingFrame().matchViaEnclosingSlot(eslot.hops - 1, eslot.slot, symbol, frame);
}
return frame.matchFromExtensionsAndRootLevelInclusiveEntry(symbol);
}