时间限制:C/C++/Rust/Pascal 1秒,其他语言2秒
            空间限制:C/C++/Rust/Pascal 256 M,其他语言512 M
             64bit IO Format: %lld
        
     
    题目描述
        
        
    
            
            首先给定一个定值k,支持如下操作(在数轴上)
 1. 加入一条线段[l,r]
 2. 删除一条已经存在的线段
 3. 给定x,问有多少个区间包含x+kt,其中t是一个整数变量,即t ∈ Z 
  比如说当x=2,k=3的时候,区间[7,10]是应该算入答案的,因为x+2k=8,且7 ≤ 8 ≤ 10 
   如果n=0,那么你只需要输出一行"fafa"然后结束程序即可(注意不输出双引号) 
输入描述:
                                                    第一行两个整数n,k,分别表示操作次数以及定值k
之后有n行,每行先输入一个整数op,之后分类讨论:
1. op=1,此时再输入[l,r],表示加入一个区间[l,r]
2. op=2,此时再输入[l,r],表示删除区间[l,r],保证这个区间存在(如果存在多个相同的区间,那么只需要删除其中的任意一个)
3. op=3,此时再输入x,之后需要输出答案并换行
                                                                            输出描述:
                                                    对于每一个op=3的操作,输出查询结果后换行
                                                                            
                        
                            示例1
                        
                        
                            
                                输入
                                复制
                                
                                
                                    10 7
1 3393 14151
3 13229
1 3427 18356
1 7602 20138
1 8566 28714
1 1076 32552
2 3427 18356
2 8566 28714
3 10962
1 387 7783
                                 
                             
                            
                                                            
                                    说明
                                    
                                        (以下内容与本题无关)
这个样例,无疑是善良的出题人无私的馈赠。
大量精心构造的 n ≤ 100 的测试数据,涵盖了测试点中所有出现性质的组合。
你可以利用这个测试点,对自己的程序进行全面的检查。
足量的数据组数、不大的数据范围和多种多样的数据类型,能让程序中的错误无处遁形。
出题人相信,这个美妙的样例,可以给拼搏于 AC 这道题的逐梦之路上的你,提供一个有力的援助。
                                     
                                 
                                                     
                     
                                    
                                                        备注:
                一共有20个测试点,每个测试点5分
有4个测试点保证:n≤1000
有另外5个测试点保证:n≤10000
对于全部数据,保证:
0 ≤ n,k ≤ 105
0 ≤ l ≤ r ≤ 109
0 ≤ x ≤ 109