#include <iostream>
using namespace std;

template <class T> 
void swap(T *a, T *b) {
	T t = *a;
	*a = *b;
	*b = t;
}

template <typename T1, typename T2>
void print2(T1 t1, T2 t2) {
	cout << t1 << ' ' << t2 << endl;
}

int main() {

	int a = 100;
	int b = 999;
	print2(a, b);
	swap(&a, &b);
	print2(a, b);

	char c = 'C';
	char d = 'D';
	print2(c, d);
	swap(&c, &d);
	print2(c, d);
	
	return 0;
}