@Override
	public void unInvoke()
	{
		// undo the affects of this spell
		MOB recheckMOB=null;
		if(canBeUninvoked())
		{
			if(affected instanceof MOB)
			{
				final MOB mob=(MOB)affected;
				if((mob.location()!=null)&&(!mob.amDead()))
					mob.location().show(mob,null,CMMsg.MSG_OK_VISUAL,L("<S-NAME> return(s) to <S-HIS-HER> normal size."));
				recheckMOB=mob;
			}
			else
			if(affected instanceof Item)
			{
				final Item item=(Item)affected;
				if(item.owner()!=null)
				{
					if(item.owner() instanceof Room)
						((Room)item.owner()).showHappens(CMMsg.MSG_OK_VISUAL,L("@x1 returns to its proper size.",item.name()));
					else
					if(item.owner() instanceof MOB)
					{
						((MOB)item.owner()).tell(L("@x1 returns to its proper size.",item.name()));
						recheckMOB=(MOB)item.owner();
					}
				}
			}
		}
		super.unInvoke();
		if(recheckMOB!=null)
			CMLib.utensils().confirmWearability(recheckMOB);
	}