Listing 1: Semi-readable

template<class _E, class _Tr, class _A> inline 
basic_istream<_E, _Tr>& __cdecl 
getline(basic_istream<_E, _Tr>& _I,
        basic_string<_E, _Tr, _A>& _X)
    {return (getline(_I, _X, _I.widen('\n')));}
template<class _E, class _Tr, class _A> inline
    basic_ostream<_E, _Tr>& __cdecl operator<<(
        basic_ostream<_E, _Tr>& _O,
        const basic_string<_E, _Tr, _A>& _X)
    {
    for (_A::size_type _N = 0; 
         _N < _X.size(); ++_N)
        if (_Tr::eq_int_type(_Tr::eof(),
            _O.rdbuf()->sputc(_X[_N])))
            break;
    return (_O); }
//End of File