#include <iostream>
using namespace std;
class Circle
{
friend double aveArea(Circle a,Circle b);
public:
Circle(double rr);
Circle(Circle &c);
static int getCount(Circle c1)
{
return c1.count;
}
~Circle();
void calArea()
{
cout<<r<<" : ";
}
double showCircle()
{
cout<<r*r*PI<<endl;
return r*r*PI;
}
private:
const float PI=3.14159;
static int count;
double r;
double area;
};
static int Circle::getCount(Circle c1)
Circle::Circle(double rr)
{
r=rr;
count++;
}
Circle::Circle(Circle &c)
{
r=c.r;
count++;
}
Circle::~Circle()
{
count--;
}
double aveArea(Circle a,Circle b)
{
return a.showCircle()/2+b.showCircle()/2;
}
int Circle::count=0;
int main()
{
double r1,r2;
cin>>r1>>r2;
Circle c1(r1),c2(r2);
c1.calArea();
c1.showCircle();
c2.calArea();
c2.showCircle();
cout<<Circle::getCount(c1)<<endl;
cout<<aveArea(c1,c2)<<endl;
return 0;
}