added recursive and array lookups
added focus method