n개의 집합이 주어집니다. i번째 집합은 다음 수들을 담고 있습니다.
ai⋅di, (ai+1)⋅di, (ai+2)⋅di, …, bi⋅di
이 모든 집합의 합집합을 S라고 합시다. 집합 S의 원소 중에서 주어진 수 m과 서로소인 (즉, m과의 최대공약수가 1인) 수가 몇 개인지 세어 주세요.
첫째 줄에 두 정수 n과 m이 주어집니다 (1≤n≤16, 1≤m≤109).
이어지는 n개의 줄에는 각각 세 정수 ai, bi, di가 공백 하나로 구분되어 주어집니다 (1≤ai,bi,di≤1018, ai≤bi, bi⋅di≤1018).
집합 S의 원소 중 m과 서로소인 원소의 개수를 한 줄에 정수 하나로 출력합니다.