@Override
	public boolean tick(Tickable ticking, int tickID)
	{
		if((affected!=null)&&(affected instanceof MOB))
		{
			final MOB mob=(MOB)affected;
			if((!CMLib.flags().aliveAwakeMobile(mob,true))
			||(!CMLib.flags().isBound(mob)))
			{ unInvoke(); return false;}
			final List<Ability> V=CMLib.flags().flaggedAffects(mob,Ability.FLAG_BINDING);
			if(V.size()==0)
			{ unInvoke(); return false;}
			final int newStrength=mob.charStats().getStat(CharStats.STAT_STRENGTH)
						   +getXLEVELLevel(mob)
						   +(mob.charStats().getStat(CharStats.STAT_DEXTERITY)*2);
			final CMMsg msg=CMClass.getMsg(mob,null,null,CMMsg.MSG_HANDS,_("<S-NAME> slip(s) and wiggle(s) in <S-HIS-HER> bonds."));
			for(int v=0;v<V.size();v++)
			{
				mob.charStats().setStat(CharStats.STAT_STRENGTH,newStrength);
				final Ability A=V.get(v);
				if(A.okMessage(mob,msg)) A.executeMsg(mob,msg);
			}
			mob.recoverCharStats();
		}
		return true;
	}