@Override
	public void unInvoke()
	{
		if(canBeUninvoked())
		{
			if(affected instanceof MOB)
			{
				final MOB mob=(MOB)affected;
				if((bonding!=null)&&(!aborted))
				{
					MOB animal=bonding;
					if((messedUp)||(animal==null))
						commonTell(mob,L("You've failed to bond with @x1!",bonding.name()));
					else
					{
						if(animal.fetchEffect("AnimalBonding")!=null)
							commonTell(mob,L("@x1 is already bond.",bonding.name()));
						else
						{
							AnimalBonding bonding=(AnimalBonding)this.copyOf();
							bonding.setMiscText(mob.Name());
							bonding.canBeUninvoked = false;
							animal.addNonUninvokableEffect(bonding);
							mob.location().show(mob,null,getActivityMessageType(),L("<S-NAME> manage(s) to bond with @x1.",animal.name()));
						}
					}
				}
			}
		}
		super.unInvoke();
	}