public ArrayList<Human> array_query(LinkedList<Human> toCheck) {

		// Создадим массив для тех кто проходит фильтры
		ArrayList<Human> answer = new ArrayList<Human>();

		// В исходном массиве перебираем все элементы и каждый проверям, если
		// подходит - добавляем в результирующий массив
		for (Human human : toCheck) {
			if (this.execute_on(human)) {
				answer.add(human);
			}
		}
		// Пост обработка - Сортировка по каким-то параметрам, по умолчании -
		// без сортировки
		switch (sortSwitcher) {
		case byDate:
			Collections.sort(answer, new SortedByDate());
			break;
		case byName:
			Collections.sort(answer, new SortedByName());
			break;
		default:
			break;
		}

		// Пост обработка - модификаторы вывода. По умолчанию - просто печатаем.
		switch (outFormat) {
		case simplePrint:
			for (Human filtered : answer) {
				filtered.print();
			}
			break;
		case age:
			for (Human filtered : answer) {
				filtered.countAge();
			}
		}

		// В итоге все равно возвращаем результирующий массив (Вдруг мы захотим
		// потом джоины или группировки)
		return answer;
	}