#include #include #include #include #include #include #define inf 0x7fffffff #define exp 1e-10 #define PI 3.141592654 using namespace std; typedef long long ll; struct Point { double x,y; Point (double x=0,double y=0):x(x),y(y){} }; double dist(Point a,Point b) { double x=(a.x-b.x)*(a.x-b.x); double y=(a.y-b.y)*(a.y-b.y); return sqrt(x+y); } double Area_of_overlap(Point c1,double r1,Point c2,double r2) { double d=dist(c1,c2); if (r1+r2