#include <iostream>
using namespace std;

struct Countable {
  int count;
  
  incr() { count++; }
};

struct Parent {
	static int count;
	
	Parent() {
		count++;
	}
};

int Parent::count = 0;

struct Child1: public Parent {
	Child1(): Parent(), cnt() { incr(); }
	static Countable cnt;
};

int Child1::count = 0;

struct Child2: public Parent {
	Child2(): Parent() {}
	static int count;
};

int Child2::count = 0;

int main() {
	Child1 ch1;
	Child1 ch2;
	Child1 ch3;
	Child2 ch22;
	Child2 ch23;
	
	cout << Child1::count << endl;
	
	return 0;
}