#include <iostream>
using namespace std;
class Shape {
private:
int width;
int height;
public:
int *a = &width, *b = &height;
Shape() = default;
Shape(const Shape &src) : Shape() {
width = src.width;
height = src.height;
}
Shape(Shape &&src) : Shape() {
width = src.width;
height = src.height;
}
};
class Rectangle : public Shape {
public:
void setWidth(int w) { *a = w; }
void setHeight(int h) { *b = h; }
int getArea() { return (*a * *b); }
};
int main() {
Rectangle Rect;
Rect.setWidth(5);
Rect.setHeight(7);
cout << "Total area: " << Rect.getArea() << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKY2xhc3MgU2hhcGUgewpwcml2YXRlOgogICAgaW50IHdpZHRoOwogICAgaW50IGhlaWdodDsKICAgIApwdWJsaWM6CiAgICBpbnQgKmEgPSAmd2lkdGgsICpiID0gJmhlaWdodDsKCiAgICBTaGFwZSgpID0gZGVmYXVsdDsKCiAgICBTaGFwZShjb25zdCBTaGFwZSAmc3JjKSA6IFNoYXBlKCkgewogICAgICAgIHdpZHRoID0gc3JjLndpZHRoOwogICAgICAgIGhlaWdodCA9IHNyYy5oZWlnaHQ7CiAgICB9CgogICAgU2hhcGUoU2hhcGUgJiZzcmMpIDogU2hhcGUoKSB7CiAgICAgICAgd2lkdGggPSBzcmMud2lkdGg7CiAgICAgICAgaGVpZ2h0ID0gc3JjLmhlaWdodDsKICAgIH0KfTsKCmNsYXNzIFJlY3RhbmdsZSA6IHB1YmxpYyBTaGFwZSB7CnB1YmxpYzoKICAgIHZvaWQgc2V0V2lkdGgoaW50IHcpIHsgKmEgPSB3OyB9CiAgICB2b2lkIHNldEhlaWdodChpbnQgaCkgeyAqYiA9IGg7IH0KICAgIGludCBnZXRBcmVhKCkgeyByZXR1cm4gKCphICogKmIpOyB9Cn07CgppbnQgbWFpbigpIHsKICAgIFJlY3RhbmdsZSBSZWN0OwogICAgUmVjdC5zZXRXaWR0aCg1KTsKICAgIFJlY3Quc2V0SGVpZ2h0KDcpOwogICAgCiAgICBjb3V0IDw8ICJUb3RhbCBhcmVhOiAiIDw8IFJlY3QuZ2V0QXJlYSgpIDw8IGVuZGw7CiAgICByZXR1cm4gMDsKfQ==