#include <iostream>                // Ex35
using namespace std;
struct base1 {
    void r() { cout << "base1::r" << endl; }
};
struct base2 : public base1 {
    void r() { cout << "base2::r" << endl; }
};
struct derived : public base2 {
    void r() {
        cout << "derived::r" << endl;
        base2::r();
        base2::base1::r();
    }
};
int main() {
    derived d;
    d.r();
}
