#include using ll=long long; class mbn { ll a, b; int s; public: mbn() { a=b=0LL; s=0; } void set(const char *p) { s=0; a=b=0; if(*p=='-') { s=1; p++; } for(;*p;p++) { if(*p=='.') { p++; break; } a=a*10+(*p-'0'); } for(int i=0;i<10;i++) { if(*p=='\0') { b*=10; } else { b=b*10+(*p-'0'); p++; } } } const mbn operator+(const mbn rhs) { mbn r; if(s==rhs.s) { int c=0; r.s=s; r.b=b+rhs.b; if(r.b>=10000000000LL) { r.b-=10000000000LL; c=1; } r.a=a+rhs.a+c; } else { if(abs_cmp(rhs)>=0) { int c=0; r.s=s; r.b=b-rhs.b; if(r.b<0) { r.b+=10000000000LL; c=1; } r.a=a-rhs.a-c; } else { int c=0; r.s=rhs.s; r.b=rhs.b-b; if(r.b<0) { r.b+=10000000000LL; c=1; } r.a=rhs.a-a-c; } } return r; } int abs_cmp(const mbn rhs) { if(a>rhs.a) return 1; if(arhs.b) return 1; if(b