#include <iostream>
using namespace std;
class TemelSinif{
public:
int fonk1() { return 2; }
virtual int fonk2() { return 4; }
};
class TuretilmisSinif1: public TemelSinif {
public:
int fonk1() { return 6; }
virtual int fonk2() { return 8; }
};
class TuretilmisSinif2 : public TemelSinif {
public:
int fonk2() { return 1; }
};
int main() {
TemelSinif *pp;
TemelSinif nesne1;
TuretilmisSinif1 nesne2;
TuretilmisSinif2 nesne3;
pp = &nesne1;
cout << pp->fonk1() << endl;
cout << pp->fonk2() << endl;
pp = &nesne3;
cout << pp->fonk1() + pp->fonk2() << endl;
pp = &nesne3;
cout << pp->fonk1() << endl;
cout << pp->fonk2() << endl;
return 0;
}