public KeyedList Combine(KeyedList other)
            {
                var otherKeys            = new HashSet <string>(other.keyedValues.Where(k => k.HasKey()).Select(k => k.Key).Distinct());
                var uniqueKeyedVariables = keyedValues.Where(k => !k.HasKey() || !otherKeys.Contains(k.Key)).ToList();

                return(new KeyedList(uniqueKeyedVariables.Concat(other.GetValues()).ToArray()));
            }