exchange_function.c