CF895E Eyes Closed
Description
Vasya and Petya were tired of studying so they decided to play a game. Before the game begins Vasya looks at array $ a $ consisting of $ n $ integers. As soon as he remembers all elements of $ a $ the game begins. Vasya closes his eyes and Petya does $ q $ actions of one of two types:
$ 1) $ Petya says 4 integers $ l1,r1,l2,r2 $ — boundaries of two non-intersecting segments. After that he swaps one random element from the $ [l1,r1] $ segment with another random element from the $ [l2,r2] $ segment.
$ 2) $ Petya asks Vasya the sum of the elements of $ a $ in the $ [l,r] $ segment.
Vasya is a mathematician so he answers Petya the mathematical expectation of the sum of the elements in the segment.
Your task is to write a program which will answer the second type questions as Vasya would do it. In other words your program should print the mathematical expectation of the sum of the elements of $ a $ in the $ [l,r] $ segment for every second type query.
Input Format
The first line contains two integers $ n,q $ ( $ 2
Output Format
For each type $ 2 $ query print one real number — the mathematical expectation of the sum of elements in the segment.
Your answer will be considered correct if its absolute or relative error doesn't exceed $ 10^{-4} $ — formally, the answer is correct if  where $ x $ is jury's answer and $ y $ is yours.