#include <iostream>
using namespace std;

int f() {
	return 0;
}

double g( int(*a)() ) {
	return (double)a();
}

double(*h(double d))( int(*)() ) {
 	return g;
 }

int main() {
	f();
	g(f);
	h(3.0);
	
	double( * ( * t[3] )( double ) )( int(*)() );
	t[0]=h;
	
	return 0;
}