void removeStaticEffect(Card source, Card affectedCard, String[] Keyword_Details, int xValue, int yValue) {

            int powerbonus = 0;
            int toughnessbonus = 0;
            String[] Keyword = Keyword_Details[2].split("/", 3);

            Keyword[0] = Keyword[0].replace("+", "");
            Keyword[1] = Keyword[1].replace("+", "");

            if (!Keyword[0].contains("X")) powerbonus = Integer.valueOf(Keyword[0]);
            else powerbonus = xValue;

            if (Keyword[1].contains("X")) toughnessbonus = xValue;
            else if (Keyword[1].contains("Y")) toughnessbonus = yValue;
            else toughnessbonus = Integer.valueOf(Keyword[1]);

            affectedCard.addSemiPermanentAttackBoost(powerbonus * -1);
            affectedCard.addSemiPermanentDefenseBoost(toughnessbonus * -1);
            if (Keyword.length > 2) {
                String Keywords[] = Keyword[2].split(" & ");
                for (int j = 0; j < Keywords.length; j++) {
                    String keyword = Keywords[j];
                    if (keyword.startsWith("SVar=")) {
                        String sVar = source.getSVar(keyword.split("SVar=")[1]);
                        if (sVar.startsWith("AB")) { // remove granted abilities
                            SpellAbility[] spellAbility = affectedCard.getSpellAbility();
                            for (SpellAbility s : spellAbility) {
                                if (s.getType().equals("Temporary"))
                                    affectedCard.removeSpellAbility(s);
                            }
                        }
                        else if (sVar.startsWith("Mode")) { // remove granted triggers
                            StringBuilder triggerName = new StringBuilder("From ");
                            triggerName.append(source.getName()).append(" (").append(source.getUniqueNumber()).append("): ").append(keyword.split("SVar=")[1]);

                            Trigger actualTrigger = affectedCard.getNamedTrigger(triggerName.toString());
                            affectedCard.removeTrigger(actualTrigger);
                            AllZone.getTriggerHandler().removeRegisteredTrigger(actualTrigger);
                        }
                    } else if (keyword.startsWith("Types=")) {
                        String[] tmptypes = keyword.split("=");
                        String[] types = tmptypes[1].split(",");
                        if (types[0].equals("ChosenType")) {
                            types[0] = source.getChosenType();
                        }
                        for (String type : types) affectedCard.removeType(type);
                    } else if (keyword.startsWith("Keyword=")) {
                        String sVar = source.getSVar(keyword.split("Keyword=")[1]);
                        affectedCard.removeExtrinsicKeyword(sVar);
                    }
                    affectedCard.removeExtrinsicKeyword(keyword);
                }
            }
        }