static ArrayList<Cow> sortCows1(ArrayList<Cow> cows)
	{
		if (cows.size() <= 1)
			return cows;
		int mid = cows.size()/2;
		ArrayList<Cow> cows1 = new ArrayList<Cow>();
		ArrayList<Cow> cows2 = new ArrayList<Cow>();
		for (int i = 0; i < mid; i++)
			cows1.add(cows.get(i));
		for (int i = mid; i < cows.size(); i++)
			cows2.add(cows.get(i));
		cows1 = sortCows1(cows1);
		cows2 = sortCows1(cows2);
		ArrayList<Cow> newCows = new ArrayList<Cow>();
		int i = 0;
		int j = 0;
		while (i < cows1.size() && j < cows2.size())
		{
			if (cows1.get(i).minSPF < cows2.get(j).minSPF)
			{
				newCows.add(cows1.get(i));
				i++;
			}
			else
			{
				newCows.add(cows2.get(j));
				j++;
			}
		}
		while (i < cows1.size())
		{
			newCows.add(cows1.get(i));
			i++;
		}
		while (j < cows2.size())
		{
			newCows.add(cows2.get(j));
			j++;
		}
		return newCows;
	}