inline __int128 read(){
__int128 x =0;char c =getchar_unlocked();while(c <'0') c =getchar_unlocked();while(c >='0'){
x = x *10+ c -'0';
c =getchar_unlocked();}return x;}inline std::string readline(){
std::string x ="";char c =getchar_unlocked();while(c <'0') c =getchar_unlocked();while(c >='0'){
x += c;
c =getchar_unlocked();}return x;}voidwrite(__int128 x){if(x <=9){putchar_unlocked(x +'0');return;}write(x /10);putchar_unlocked(x %10+'0');}inlinevoidwriteline(__int128 x){write(x);putchar_unlocked('\n');}