@Override
	public void executeMsg(final Environmental myHost, final CMMsg msg)
	{
		super.executeMsg(myHost, msg);
		if ((System.currentTimeMillis() - lastClanCheck) > TimeManager.MILI_HOUR / 2)
		{
			if ((clanID().length() > 0) 
			&& (owner() instanceof MOB) 
			&& (!amDestroyed()))
			{
				if ((CMLib.clans().getClan(clanID()) == null) 
				|| ((getClanItemType() != ClanItem.ClanItemType.PROPAGANDA) 
					&& (((MOB) owner()).getClanRole(clanID()) == null)))
				{
					final Room R = CMLib.map().roomLocation(this);
					setRightfulOwner(null);
					unWear();
					removeFromOwnerContainer();
					if (owner() != R)
						R.moveItemTo(this, ItemPossessor.Expire.Player_Drop);
					if (R != null)
						R.showHappens(CMMsg.MSG_OK_VISUAL, L("@x1 is dropped!", name()));
				}
			}
			lastClanCheck = System.currentTimeMillis();
		}
	}