#include <iostream>
class C {
private:
int n;
public:
C() : n(0) {}
C(int n) : n(n) {}
friend C operator+(C &a, C &b) { C c; c.n = a.n + b.n; return c; }
friend C operator+(C &a, int n) { C c; c.n = a.n + n; return c; }
friend std::ostream &operator<<(std::ostream &s, C c) { return s << c.n; }
};
int main() {
C a(1), b(2);
std::cout << a + b << std::endl;
std::cout << a + 5 << std::endl;
return 0;
}