#include <iostream>
using namespace std;
struct foo {
float val;
explicit foo(float val): val(val){}
foo &operator+=(foo const &other) {
this->val += other.val;
return *this;
}
friend foo operator*(foo const &lhs, float val) {
return foo(lhs.val*val);
}
};
int main() {
foo a(5), b(6);
a += b * 3;
cout << a.val << endl;
return 0;
}
I2luY2x1ZGUgPGlvc3RyZWFtPgp1c2luZyBuYW1lc3BhY2Ugc3RkOwoKc3RydWN0IGZvbyB7CiAgICBmbG9hdCB2YWw7CiAgICBleHBsaWNpdCBmb28oZmxvYXQgdmFsKTogdmFsKHZhbCl7fQoKICAgIGZvbyAmb3BlcmF0b3IrPShmb28gY29uc3QgJm90aGVyKSB7CiAgICAgICAgdGhpcy0+dmFsICs9IG90aGVyLnZhbDsKICAgICAgICByZXR1cm4gKnRoaXM7CiAgICB9CgogICAgZnJpZW5kIGZvbyBvcGVyYXRvciooZm9vIGNvbnN0ICZsaHMsIGZsb2F0IHZhbCkgewogICAgICAgIHJldHVybiBmb28obGhzLnZhbCp2YWwpOwogICAgfQp9OwoKaW50IG1haW4oKSB7CiAgICBmb28gYSg1KSwgYig2KTsKICAgIGEgKz0gYiAqIDM7CiAgICAKICAgIGNvdXQgPDwgYS52YWwgPDwgZW5kbDsKICAgIHJldHVybiAwOwp9