symbols + recursive lookup