在 Byteotian 训练中心,飞行员们正在为需要极高精度和控制力的任务进行准备。衡量飞行员能力的一个指标是他在不发生过大偏差的情况下沿预定航线飞行的持续时间——简而言之,就是他能否平稳飞行。这并非易事,因为模拟器非常灵敏,即使是操纵杆 ^[1] 的最轻微移动也会被记录下来。在每一时刻,模拟器都会存储一个描述操纵杆位置的参数。在每次训练开始前,会设定一个特定的容差水平 $t$。飞行员的任务是尽可能长时间地飞行,使得飞行过程中记录的所有操纵杆位置之间的差异都不超过 $t$。换句话说,如果从时间 $i$ 开始到时间 $j$ 结束的飞行片段中,位置测量值序列 $a_i, \dots, a_j$ 满足对于该序列中的任意元素 $a_k, a_l$,不等式 $|a_k - a_l| \le t$ 均成立,则称该片段在容差水平 $t$ 之内。
你的任务是编写一个程序,给定一个数值和一系列操纵杆位置测量值,确定在容差水平 $t$ 之内的最长飞行片段的长度。
^[1]: 飞机上用于驾驶的装置
输入格式
标准输入的第一行包含两个整数 $t$ 和 $n$ ($0 \le t \le 2\,000\,000\,000$, $1 \le n \le 3\,000\,000$),用单个空格分隔,分别表示容差水平和记录的操纵杆位置测量值的数量。第二行给出这些测量值,用单个空格分隔。每个测量值都是一个 $1$ 到 $2\,000\,000\,000$ 之间的整数。
输出格式
你的程序应向标准输出打印一个整数:在给定容差水平内最长飞行片段的长度。
样例
输入 1
3 9 5 1 3 5 8 6 6 9 10
输出 1
4