#include <iostream>
#include <string>

using namespace std;

class Employee {
protected:
    string name;
    double salary;

public:
    Employee(string n, double s) : name(n), salary(s) {}

    virtual void printInfo() {
        cout << "Имя: " << name << ", Зарплата: " << salary << endl;
    }

    virtual ~Employee() {}
};

class Manager : public Employee {
private:
    double bonus;

public:
    Manager(string n, double s, double b) : Employee(n, s), bonus(b) {}

    void printInfo() override {
        cout << "Имя: " << name << ", Зарплата: " << salary << ", Надбавка: " << bonus << endl;
    }
};

int main() {
    Employee* emp = new Employee("Джон", 5000);
    Employee* manager = new Manager("Алиса", 7000, 2000);

    emp->printInfo();
    manager->printInfo();

    delete emp;
    delete manager;

    return 0;
}
