#include <iostream>

struct Complex
{
    Complex();
    Complex(double r);
    Complex(double r, double i);

    double re;
    double im;
};

Complex operator+(Complex a, Complex b);
Complex operator*(Complex a, Complex b);
Complex operator~(Complex a);
std::ostream& operator<<(std::ostream& os, Complex a);