@Override public Tag copy() { ListTag<T> res = new ListTag<T>(getName()); res.type = type; for (T t : list) { @SuppressWarnings("unchecked") T copy = (T) t.copy(); res.list.add(copy); } return res; }