#ifndef __COMPLEX_H__                // Ex42
#define __COMPLEX_H__                // protect against multiple inclusion
#include <iostream>                    // access: ostream
using std::ostream;
extern void complexStats();
class complex {
    friend complex operator+( complex a, complex b );
    friend ostream &operator<<( ostream &os, complex c );
    double re, im;                    // exposed implementation
  public:
    complex();
    complex( double r );
    complex( double r, double i );
    double abs();
};
extern complex operator+( complex a, complex b );
extern ostream &operator<<( ostream &os, complex c );
#endif    // __COMPLEX_H__
