Exercise 3.15.Design and implement aMinQueuedata structure that can store comparable elements and supports the queue operationsadd(x),remove(), andsize(), as well as the min() operation, which returns the minimum value currently stored in the data structure. All operations should run in constant amortized time. java language only please please give code pseudo code uml diagram output replit link please will really appreciate thank you.