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