速度即转发
时间限制:C/C++/Rust/Pascal 3秒,其他语言6秒
空间限制:C/C++/Rust/Pascal 512 M,其他语言1024 M
64bit IO Format: %lld

题目描述


BPM=RT


给定正整数 ,和非负整数组成的参数序列 
进行  次操作。

操作包含以下两种:

  • 查询速度:给定 ,设 ,求  内满足  的最大的整数 
  • 转发:给定 ,将  修改为 

输入描述:


第一行,两个正整数 
第二行, 个非负整数 
以下  行,每行第一个整数  表示操作的类型。

若 ,则接下来有三个整数 ,表示一个查询速度操作。
若 ,则接下来有两个整数 ,表示一个转发操作。


输出描述:

对于每个查询操作,一行一个整数,表示答案。若在  内无解,输出 
示例1

输入

复制
6 5
4 42 40 26 46 6
0 1 5 20
1 6 4
0 2 6 20
0 2 6 114514
0 1 6 0

输出

复制
36
36
-1
100000

备注:

;修改操作满足 ;查询操作满足