public static void moveProperty(List<? extends Property> source, String name, List<? super Property> destination, int index) {
    Property property = extractProperty(source, name);
    if (property != null) {
      if (index == -1) {
        destination.add(property);
      }
      else {
        destination.add(index, property);
      }
    }
  }
public static void moveProperty(List<? extends Property> source, String name, List<? super Property> destination, int index)