anchor.diff:          addPerkCondition(recipeCraft, getRecordByFormID('000CB40E')); // DwarvenSmithing
           Break;
   
  -      end else if (currentKeywordEDID = 'ArmorMaterialEbony'
  -        or currentKeywordEDID = 'DLC2ArmorMaterialStalhrimLight'
  -        or currentKeywordEDID = 'DLC2ArmorMaterialStalhrimHeavy'
  +      end else if (
  +			  (currentKeywordEDID = 'ArmorMaterialEbony')
  +        or (currentKeywordEDID = 'DLC2ArmorMaterialStalhrimLight')
  +        or (currentKeywordEDID = 'DLC2ArmorMaterialStalhrimHeavy')
         ) then begin
           addPerkCondition(recipeCraft, getRecordByFormID('000CB412')); // EbonySmithing
           Break;
  
positive.code:     for i := 0 to ElementCount(tmpKeywordsCollection) - 1 do begin
        currentKeywordEDID := GetElementEditValues(LinksTo(ElementByIndex(tmpKeywordsCollection, i)), 'EDID');
  
        if (currentKeywordEDID = 'ArmorMaterialSteel'
          or currentKeywordEDID = 'ArmorMaterialSteel'
          or currentKeywordEDID = 'DLC2ArmorMaterialBonemoldLight'
          or currentKeywordEDID = 'DLC2ArmorMaterialBonemoldHeavy'
          or currentKeywordEDID = 'ArmorMaterialImperialHeavy'
          or currentKeywordEDID = 'ArmorMaterialImperialLight'
          or currentKeywordEDID = 'ArmorMaterialStormcloak'
          or currentKeywordEDID = 'ArmorMaterialImperialStudded'
          or currentKeywordEDID = 'DLC1ArmorMaterialDawnguard'
        ) then begin
          addPerkCondition(recipeCraft, getRecordByFormID('000CB40D')); // SteelSmithing
          Break;
  
        end else if (currentKeywordEDID = 'ArmorMaterialScaled'
          or currentKeywordEDID = 'DLC2ArmorMaterialNordicLight'
          or currentKeywordEDID = 'DLC2ArmorMaterialNordicHeavy'
          or currentKeywordEDID = 'ArmorMaterialSteelPlate'
        ) then begin
          addPerkCondition(recipeCraft, getRecordByFormID('000CB414')); // AdvancedArmors
          Break;
  
negative.code:   Result := recipeTemper;
  end;
  
  function calcAmountOfMainMaterial(itemRecord: IInterface): Integer;
  var
  	itemWeight: IInterface;
  	modifier: integer;
  begin
  	Result := 1;
  	modifier := 0.2;
  
  	itemWeight := GetElementEditValues(itemRecord, 'DATA\Weight');
  	if Assigned(itemWeight) then begin
  		Result := 1 + round(itemWeight * modifier);
  	end;
  end;
  
  // creates new COBJ record to make item Craftable at workbenches
  function makeCraftable(itemRecord: IInterface): IInterface;
  var
  