<prompt> Kuandika multithreaded FizzBuzz, kwa kutumia mutexes wakati wa kuchapisha.  <response>: Heres an example of a multithreaded FizzBuzz implementation in C using mutexes:cppinclude include include std::mutex mtx;void fizzbuzzint n forint i 1; i n; i std::string output ; ifi 3 0 output Fizz; ifi 5 0 output Buzz; ifoutput.empty output std::to_stringi; Use mutex to ensure only one thread prints at a time std::lock_guard lockmtx; std::cout output std::endl; int main const int N 15; std::thread t1fizzbuzz, N; std::thread t2fizzbuzz, N; t1.join; t2.join; return 0;In this implementation, fizzbuzz is called twice with the same n argument. Two threads are then spawned, each running fizzbuzz with the same n argument. As each thread executes, a loop iterates over numbers 1 to n inclusive, determining if each number should be replaced with Fizz, Buzz, FizzBuzz, or left as is. The resulting output string is then printed to the console, but only after acquiring a lock on a mutex to ensure that only one thread is printing at a time. The main function waits for both threads to finish before returning. 