public Boolean Contains(Key key)
 {
     return Contains(key.keyName);
 }
        public void Deactivate(String keyName)
        {
            foreach (Key key in keys)
            {
                if (key.keyName == keyName)
                {
                    key.isActive = false;
                    return;
                }
            }

            Key aKey = new Key(keyName);
            aKey.isActive = false;

            keys.Add(aKey);
        }
        public Condition(String keyName)
        {
            this.negative = false;
            if (keyName[0] == '!')
            {
                this.negative = true;
                keyName = keyName.Substring(1);
            }

            key = new Key(keyName);
        }