Im working on a Computer Science exercise and need support. Implement a base conversion tool called nt. It converts numbers expressed in bases 2, 10, and 16 into the other two bases. use command line arguments in CYou must implement the base conversions yourself, without using C library printf(), scanf(), or atoi()Examples:$ ./nt 10 -o 20b1010$ ./nt 0xFF -o 10255$ ./nt 0b11011110101011011011111011101111 -o 160xDEADBEEF$ ./nt 0b11111111111111111111111111111111 -o 104294967295$ ./nt 0x0000000B -o 1011$ ./nt 0b123 -o 2Bad input—————————————————————-Pseudocode: uint32_t string_to_int(char *str);init retval to 0init placeval to 1 (anything to the 0 power is 1)loop over str from the highest index down to 0 calculate the integer corresponding to the character at that index calculate the value of that place by multiplying the integer * placeval add the value to the retval update to placeval to placeval * basereturn the return valuePseudocode: void int_to_string(uint32_t value, char *str, int base);init buffer to emptywhile value != 0 quot = value / base rem = value % base calculate the character value of rem append the character value to the buffer value = quotcopy buffer into str in reverse order