파티에 $n$명의 손님이 있습니다. 각 손님은 서로 다른 취미 2개를 가지고 있습니다. 취미의 집합이 같은 두 손님은 없습니다. 파티 주최자는 손님들을 2명 또는 3명씩 그룹으로 나누어, 같은 그룹의 임의의 두 손님이 공통 취미를 가지도록 하려고 합니다. 즉, 각 그룹은 다음 중 하나에 해당합니다.
유형 A: 공통 취미 하나를 가진 두 손님의 그룹;
유형 B: 세 손님 모두가 공통 취미 하나를 가진 그룹;
유형 C: 모든 쌍의 손님이 공통 취미 하나를 가지는 세 손님의 그룹으로, 유형 B인 경우는 제외합니다.
파티 주최자는 어떤 그룹에도 배정되지 않은 손님의 수 $\alpha$를 가능한 한 최소화하고자 합니다. 최소의 $\alpha$를 갖는 해가 여러 개라면, $\alpha$를 최소로 유지하면서 그 해에 사용되는 유형 B 그룹의 수 $\beta$를 최소화하는 해를 찾아야 합니다. 이 두 수를 구하는 프로그램을 작성하세요.
그림 15: 위 그림은 세 번째 테스트 케이스에 대한 서로 다른 두 해를 보여줍니다. 오른쪽 해에는 유형 B 그룹이 없으므로 왼쪽 해보다 좋습니다.
입력
각 테스트 케이스는 $n+1$개의 줄로 구성됩니다. 첫 줄에 두 정수 $n,h$가 주어지고, 이어서 $n$개의 줄이 주어집니다. $(i+1)$번째 줄에는 $1 \le x,y \le h$를 만족하는 두 정수 $x,y$가 주어지며, $i$번째 손님의 취미가 $x$와 $y$임을 나타냅니다.
제한
$2 \le n \le 10^6$.
$3 \le h \le 2n$.
출력
최적의 해를 찾아, 배정되지 않은 손님의 수 $\alpha$와 해에 사용된 유형 B 그룹의 수 $\beta$를 출력하세요. 목표는 먼저 $\alpha$를 최소화한 다음, $\alpha$를 가능한 최소로 유지하면서 $\beta$를 최소화하는 것임에 유의하세요.
예제
입력 1
2 4 1 2 3 4
출력 1
2 0
입력 2
2 3 1 2 3 1
출력 2
0 0
입력 3
5 5 1 2 2 3 2 4 5 2 5 4
출력 3
0 0