CF1093E Intersection of Permutations

Description

You are given two permutations $ a $ and $ b $ , both consisting of $ n $ elements. Permutation of $ n $ elements is such a integer sequence that each value from $ 1 $ to $ n $ appears exactly once in it. You are asked to perform two types of queries with them: - $ 1~l_a~r_a~l_b~r_b $ — calculate the number of values which appear in both segment $ [l_a; r_a] $ of positions in permutation $ a $ and segment $ [l_b; r_b] $ of positions in permutation $ b $ ; - $ 2~x~y $ — swap values on positions $ x $ and $ y $ in permutation $ b $ . Print the answer for each query of the first type. It is guaranteed that there will be at least one query of the first type in the input.

Input Format

N/A

Output Format

N/A

Explanation/Hint

Consider the first query of the first example. Values on positions $ [1; 2] $ of $ a $ are $ [5, 1] $ and values on positions $ [4; 5] $ of $ b $ are $ [1, 4] $ . Only value $ 1 $ appears in both segments. After the first swap (the second query) permutation $ b $ becomes $ [2, 1, 3, 5, 4, 6] $ . After the second swap (the sixth query) permutation $ b $ becomes $ [5, 1, 3, 2, 4, 6] $ .