@Override
 public int compareTo(PrimitiveTypeValue obj) {
   if (obj instanceof ParameterizedListValue) {
     ParameterizedListValue other = (ParameterizedListValue) obj;
     int ret = size() - other.size();
     if (ret == 0) {
       ret = toString().compareTo(other.toString());
     }
     return ret;
   } else {
     return toString().compareTo(obj.toString());
   }
 }
 /**
  * Constructs a new parameterized list value using another parameterized list value.
  *
  * @param other parameterized list value
  */
 public ParameterizedListValue(ParameterizedListValue other) {
   super();
   Objects.requireNonNull(other);
   this.parameter = other.getParameter();
 }