avoid recursive apply contexts