code: @Override public List<S> execute(List<S> source) {
      if (null == source) {
        throw new JMetalException("Null parameter") ;
      } else if (source.size() != 2) {
        throw new JMetalException("There must be two parents instead of " + source.size()) ;
      }
  
      List<S> list = new ArrayList<>() ;
      list.add((S) source.get(0).copy()) ;
      list.add((S) source.get(1).copy()) ;
  
      return list ;
    }
docs: Execute() method