#include <iostream>

using namespace std;

class Base {
public:
  void print() {
    doPrint();
  }

  virtual void doPrint() {
    cout << "Base::print" << endl;
  }
};

class Derived: public Base {
public:
  virtual void doPrint() {
    cout << "Derived::print" << endl;
  }
};


int main(int argc, char **argv) {

  Base b;
  b.print();

  Derived d;
  d.print();

  cout << 0x80000000 << endl;

  return 0;
}
