#
explicit basic_ostream(basic_streambuf<charT, traits>* sb);
basic_ostream(basic_ostream&& rhs);
virtual ~basic_ostream();
basic_ostream& operator=(basic_ostream&& rhs);
void swap(basic_ostream& rhs);
explicit sentry(basic_ostream& os);
~sentry();
explicit operator bool() const;
pos_type tellp();
basic_ostream& seekp(pos_type pos);
basic_ostream& seekp(off_type off, ios_base::seekdir dir);
basic_ostream& operator<(bool val);
basic_ostream& operator<(short val);
basic_ostream& operator<(unsigned short val);
basic_ostream& operator<(int val);
basic_ostream& operator<(unsigned int val);
basic_ostream& operator<(long val);
basic_ostream& operator<(unsigned long val);
basic_ostream& operator<(long long val);
basic_ostream& operator<(unsigned long val);
basic_ostream& operator<(float val);
basic_ostream& operator<(double val);
basic_ostream& operator<(long double val);
basic_ostream& operator<(const void* val);
basic_ostream& operator<(const volatile void* p);
basic_ostream& operator<(extended-floating-point-type val);
basic_ostream& operator<(basic_ostream& (*pf)(basic_ostream&);
basic_ostream& operator<(basic_ios<charT, traits>& (*pf)(basic_ios<charT, traits>&);
basic_ostream& operator<(ios_base& (*pf)(ios_base&);
basic_ostream& operator<(basic_streambuf<charT, traits>* sb);
basic_ostream& operator<(nullptr_t);
template<class charT, class traits>
basic_ostream<charT, traits>& operator<(basic_ostream<charT, traits>& out, charT c);
template<class charT, class traits>
basic_ostream<charT, traits>& operator<(basic_ostream<charT, traits>& out, char c);
/ specialization
template<class traits>
basic_ostream<char, traits>& operator<(basic_ostream<char, traits>& out, char c);
/ signed and unsigned
template<class traits>
basic_ostream<char, traits>& operator<(basic_ostream<char, traits>& out, signed char c);
template<class traits>
basic_ostream<char, traits>& operator<(basic_ostream<char, traits>& out, unsigned char c);
template<class charT, class traits>
basic_ostream<charT, traits>& operator<(basic_ostream<charT, traits>& out, const charT* s);
template<class charT, class traits>
basic_ostream<charT, traits>& operator<(basic_ostream<charT, traits>& out, const char* s);
template<class traits>
basic_ostream<char, traits>& operator<(basic_ostream<char, traits>& out, const char* s);
template<class traits>
basic_ostream<char, traits>& operator<(basic_ostream<char, traits>& out, const signed char* s);
template<class traits>
basic_ostream<char, traits>& operator<(basic_ostream<char, traits>& out,
const unsigned char* s);
template<class. Args>
void print(ostream& os, format_string<Args..> fmt, Args&&. args);
template<class. Args>
void println(ostream& os, format_string<Args..> fmt, Args&&. args);
void println(ostream& os);
void vprint_unicode(ostream& os, string_view fmt, format_args args);
void vprint_nonunicode(ostream& os, string_view fmt, format_args args);
basic_ostream& put(char_type c);
basic_ostream& write(const char_type* s, streamsize n);
basic_ostream& flush();
template<class charT, class traits>
basic_ostream<charT, traits>& endl(basic_ostream<charT, traits>& os);
template<class charT, class traits>
basic_ostream<charT, traits>& ends(basic_ostream<charT, traits>& os);
template<class charT, class traits>
basic_ostream<charT, traits>& flush(basic_ostream<charT, traits>& os);
template<class charT, class traits>
basic_ostream<charT, traits>& emit_on_flush(basic_ostream<charT, traits>& os);
template<class charT, class traits>
basic_ostream<charT, traits>& noemit_on_flush(basic_ostream<charT, traits>& os);
template<class charT, class traits>
basic_ostream<charT, traits>& flush_emit(basic_ostream<charT, traits>& os);