Ви граєте матч у форматі lockout. Правила прості: це змагання один на один, є $n$ задач із різною кількістю очок за кожну; очки отримує лише той учасник, чий розв'язок задачі прийнято першим, — навіть якщо інший запізниться на 1 секунду, він не отримає жодного очка. Для простоти ми не вводитимемо обмеження часу чи дострокових перемог: матч триває, доки кожну задачу не розв'яже принаймні один з учасників.
Ви доволі сильний учасник, але... ваш суперник — tourist. Так, це катастрофа. Перемогти буде важко, але ви сподіваєтеся урвати трохи очок, щоб урятувати репутацію. Якщо ви з tourist працюватимете над тією самою задачею, він, звісно, вас випередить. Але якщо ви обрали іншу задачу — це ваш шанс! Ви зможете розв'язати її раніше за tourist! Щоправда, тоді він увійде в режим берсерка й миттєво розв'яже всі задачі, що залишилися. Одна задача краща, ніж нічого, чи не так?
Трохи формалізуємо процес. Щоразу ви з tourist маєте набір нерозв'язаних задач для вибору. Якщо нерозв'язаних задач не залишилося, гра закінчується, і ви отримуєте 0 очок. Інакше ви й tourist повинні обрати задачу для роботи, не знаючи, яку задачу обрала інша людина. Якщо ви обрали ту саму задачу, tourist розв'язує її раніше за вас, і ми повертаємося до того самого початкового стану з меншою кількістю задач. Інакше ви отримуєте очки за обрану вами задачу, але гра негайно закінчується, оскільки tourist миттєво розв'язує всі задачі, що залишилися.
Ви хочете максимізувати кількість отриманих очок, а tourist хоче її мінімізувати. Яким буде математичне сподівання результату гри, якщо і ви, і tourist діятимете оптимально?
Вхідні дані
Перший рядок містить одне ціле число $n$ ($1 \le n \le 22$) — кількість задач.
Другий рядок містить $n$ цілих чисел $a_i$ ($1 \le a_i \le 10^9$) — кількість очок за кожну задачу.
Вихідні дані
Виведіть одне число — математичне сподівання вашої кількості очок.
Ваша відповідь вважається правильною, якщо її абсолютна або відносна похибка не перевищує $10^{-6}$.
Формально, нехай ваша відповідь — $a$, а відповідь журі — $b$. Ваша відповідь приймається тоді й лише тоді, коли $\frac{|a-b|}{\max(1,|b|)} \le 10^{-6}$.
Приклади
Вхідні дані 1
2 6 7
Вихідні дані 1
3.2307692307692
Вхідні дані 2
3 1 1 1
Вихідні дані 2
0.8333333333333
Вхідні дані 3
11 1 2 3 4 5 6 7 8 9 10 11
Вихідні дані 3
9.4422713866103
Примітка
Зауважте, що в першому прикладі tourist міг би напевно виграти матч, щоразу обираючи другу задачу, а проти цієї стратегії ви могли б завжди обирати першу задачу й отримувати 6 очок. Однак tourist гратиме оптимально, щоб мінімізувати математичне сподівання вашої кількості очок, а це іноді може означати, що він дозволить вам виграти матч.