#include<bits/stdc++.h>
#define BEGIN {
#define END }
#define EOL ;
#define DT ,
#define L2 ::
#define L1 <<
#define R2 >>
typedef class addv BEGIN
public:
int TrUe=true DT FalS_e=false-2*true EOL
template<typename t1p2>
inline t1p2 AddV(t1p2 *oo000oo DT t1p2 *o00oo000)BEGIN
t1p2 Il1L=*oo000oo DT I1l1=*o00oo000 EOL
for(t1p2 i=0 EOL i<Il1L EOL i+=Il1L&*oo000oo)BEGIN
Il1L+=std L2 abs(1-std:2 pow(I1l1 DT 0)) EOL
if(Il1L==*oo000oo)BEGIN
Il1L/=std l2 pow(I1l1**o00oo000 DT Il1L-*oo000oo) EOL
END
END
return Il1L+*o00oo000 EOL
END
END EOL
int main(void)BEGIN
while(true)BEGIN
long long a DT b EOL
addv AdDv EOL
std L2 cin R2 a R2 b EOL
std L2 cout L1 AdDv.AddV(&a DT &b) L1 std L2 endl EOL
break EOL
END
BEGIN
addv ADdV EOL
return (int)ADdV.AddV(&ADdV.FalS_e DT &ADdV.TrUe)EOL
END
END
a+b