#include <bits/stdc++.h>
using namespace std::literals::string_literals;
using i64 = long long;
using std::cout;
using std::endl;
using std::cin;

template<typename T>
std::vector<T> make_v(size_t a){return std::vector<T>(a);}

template<typename T,typename... Ts>
auto make_v(size_t a,Ts... ts){
  return std::vector<decltype(make_v<T>(ts...))>(a,make_v<T>(ts...));
}

int main() {
	int x, y, z; scanf("%d%d%d", &x, &y, &z);

	int A = std::min(x, y);
	int B = std::max(x, y);
	int C = std::min(z, B - A);
	printf("%d\n", A + C + (z - C) / 2);
	return 0;
}