@Override
	public boolean invoke(MOB mob, Vector commands, Physical givenTarget, boolean auto, int asLevel)
	{
		if(!super.invoke(mob,commands,givenTarget,auto,asLevel))
			return false;
		final boolean success=proficiencyCheck(mob,0,auto);
		if(!success)
			this.beneficialVisualFizzle(mob,null,_("<S-NAME> @x1, but the is unanswered.",prayWord(mob)));
		else
		{
			final CMMsg msg=CMClass.getMsg(mob,null,null,verbalCastCode(mob,null,auto),_("^S<S-NAME> @x1 for the power of omnipresence.^?",prayWord(mob)));
			int numLayers=super.getXLEVELLevel(mob) + 1;
			if(CMLib.ableMapper().qualifyingLevel(mob, this)>1)
				numLayers += ((super.adjustedLevel(mob, 0) / CMLib.ableMapper().qualifyingLevel(mob, this)));
			if(mob.location().okMessage(mob,msg))
			{
				mob.location().send(mob,msg);
				final Room thatRoom=mob.location();
				final TrackingLibrary.TrackingFlags flags = new TrackingLibrary.TrackingFlags()
														.plus(TrackingLibrary.TrackingFlag.NOAIR)
														.plus(TrackingLibrary.TrackingFlag.NOEMPTYGRIDS)
														.plus(TrackingLibrary.TrackingFlag.NOWATER);
				mob.tell(_("Your mind is filled with visions as your presence expands...."));
				final List<Room> list = CMLib.tracking().getRadiantRooms(thatRoom, flags, numLayers);
				for(final Room R : list)
				{
					if(CMLib.flags().canAccess(mob, R))
					{
						final CMMsg msg2=CMClass.getMsg(mob,R,CMMsg.MSG_LOOK,null);
						R.executeMsg(mob,msg2);
					}
				}
			}
		}

		return success;
	}