#include <iostream>
using namespace std;

char *toString(unsigned int value, unsigned int radix)
{
	char digit[] = "0123456789ABCDEFGHIJKLMNOPRSTUVWXYZ";
	char stack[32];
	static char out[33];
	
	int quot, rem;
	int digits = 0;

	do
	{
		quot = value / radix;
		rem = value % radix;
		
		stack[digits] = digit[rem];
		value = quot;
		digits++;
	}
	while( value );
	
	int i = 0;
	while(digits--)
	{
		out[i++] = stack[digits];
	}
	
	out[i] = 0;

	return out;
}

int main()
{
	cout << "start" << endl;
	cout << toString(4294967295,16) << endl;
	cout << "end" << endl;
	// your code goes here
	return 0;
}