; 
; Exports of file msvcirt.dll
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
;
LIBRARY msvcirt.dll
EXPORTS
; public: __cdecl Iostream_init::Iostream_init(class ios & __ptr64,int) __ptr64
??0Iostream_init@@QEAA@AEAVios@@H@Z
; public: __cdecl Iostream_init::Iostream_init(void) __ptr64
??0Iostream_init@@QEAA@XZ
; public: __cdecl exception::exception(char const * __ptr64 const & __ptr64) __ptr64
??0exception@@QEAA@AEBQEBD@Z
; public: __cdecl exception::exception(class exception const & __ptr64) __ptr64
??0exception@@QEAA@AEBV0@@Z
; public: __cdecl exception::exception(void) __ptr64
??0exception@@QEAA@XZ
; public: __cdecl filebuf::filebuf(class filebuf const & __ptr64) __ptr64
??0filebuf@@QEAA@AEBV0@@Z
; public: __cdecl filebuf::filebuf(int) __ptr64
??0filebuf@@QEAA@H@Z
; public: __cdecl filebuf::filebuf(int,char * __ptr64,int) __ptr64
??0filebuf@@QEAA@HPEADH@Z
; public: __cdecl filebuf::filebuf(void) __ptr64
??0filebuf@@QEAA@XZ
; public: __cdecl fstream::fstream(class fstream const & __ptr64) __ptr64
??0fstream@@QEAA@AEBV0@@Z
; public: __cdecl fstream::fstream(int) __ptr64
??0fstream@@QEAA@H@Z
; public: __cdecl fstream::fstream(int,char * __ptr64,int) __ptr64
??0fstream@@QEAA@HPEADH@Z
; public: __cdecl fstream::fstream(char const * __ptr64,int,int) __ptr64
??0fstream@@QEAA@PEBDHH@Z
; public: __cdecl fstream::fstream(void) __ptr64
??0fstream@@QEAA@XZ
; public: __cdecl ifstream::ifstream(class ifstream const & __ptr64) __ptr64
??0ifstream@@QEAA@AEBV0@@Z
; public: __cdecl ifstream::ifstream(int) __ptr64
??0ifstream@@QEAA@H@Z
; public: __cdecl ifstream::ifstream(int,char * __ptr64,int) __ptr64
??0ifstream@@QEAA@HPEADH@Z
; public: __cdecl ifstream::ifstream(char const * __ptr64,int,int) __ptr64
??0ifstream@@QEAA@PEBDHH@Z
; public: __cdecl ifstream::ifstream(void) __ptr64
??0ifstream@@QEAA@XZ
; protected: __cdecl ios::ios(class ios const & __ptr64) __ptr64
??0ios@@IEAA@AEBV0@@Z
; protected: __cdecl ios::ios(void) __ptr64
??0ios@@IEAA@XZ
; public: __cdecl ios::ios(class streambuf * __ptr64) __ptr64
??0ios@@QEAA@PEAVstreambuf@@@Z
; protected: __cdecl iostream::iostream(class iostream const & __ptr64) __ptr64
??0iostream@@IEAA@AEBV0@@Z
; protected: __cdecl iostream::iostream(void) __ptr64
??0iostream@@IEAA@XZ
; public: __cdecl iostream::iostream(class streambuf * __ptr64) __ptr64
??0iostream@@QEAA@PEAVstreambuf@@@Z
; protected: __cdecl istream::istream(class istream const & __ptr64) __ptr64
??0istream@@IEAA@AEBV0@@Z
; protected: __cdecl istream::istream(void) __ptr64
??0istream@@IEAA@XZ
; public: __cdecl istream::istream(class streambuf * __ptr64) __ptr64
??0istream@@QEAA@PEAVstreambuf@@@Z
; public: __cdecl istream_withassign::istream_withassign(class istream_withassign const & __ptr64) __ptr64
??0istream_withassign@@QEAA@AEBV0@@Z
; public: __cdecl istream_withassign::istream_withassign(class streambuf * __ptr64) __ptr64
??0istream_withassign@@QEAA@PEAVstreambuf@@@Z
; public: __cdecl istream_withassign::istream_withassign(void) __ptr64
??0istream_withassign@@QEAA@XZ
; public: __cdecl istrstream::istrstream(class istrstream const & __ptr64) __ptr64
??0istrstream@@QEAA@AEBV0@@Z
; public: __cdecl istrstream::istrstream(char * __ptr64) __ptr64
??0istrstream@@QEAA@PEAD@Z
; public: __cdecl istrstream::istrstream(char * __ptr64,int) __ptr64
??0istrstream@@QEAA@PEADH@Z
; public: __cdecl logic_error::logic_error(char const * __ptr64 const & __ptr64) __ptr64
??0logic_error@@QEAA@AEBQEBD@Z
; public: __cdecl logic_error::logic_error(class logic_error const & __ptr64) __ptr64
??0logic_error@@QEAA@AEBV0@@Z
; public: __cdecl ofstream::ofstream(class ofstream const & __ptr64) __ptr64
??0ofstream@@QEAA@AEBV0@@Z
; public: __cdecl ofstream::ofstream(int) __ptr64
??0ofstream@@QEAA@H@Z
; public: __cdecl ofstream::ofstream(int,char * __ptr64,int) __ptr64
??0ofstream@@QEAA@HPEADH@Z
; public: __cdecl ofstream::ofstream(char const * __ptr64,int,int) __ptr64
??0ofstream@@QEAA@PEBDHH@Z
; public: __cdecl ofstream::ofstream(void) __ptr64
??0ofstream@@QEAA@XZ
; protected: __cdecl ostream::ostream(class ostream const & __ptr64) __ptr64
??0ostream@@IEAA@AEBV0@@Z
; protected: __cdecl ostream::ostream(void) __ptr64
??0ostream@@IEAA@XZ
; public: __cdecl ostream::ostream(class streambuf * __ptr64) __ptr64
??0ostream@@QEAA@PEAVstreambuf@@@Z
; public: __cdecl ostream_withassign::ostream_withassign(class ostream_withassign const & __ptr64) __ptr64
??0ostream_withassign@@QEAA@AEBV0@@Z
; public: __cdecl ostream_withassign::ostream_withassign(class streambuf * __ptr64) __ptr64
??0ostream_withassign@@QEAA@PEAVstreambuf@@@Z
; public: __cdecl ostream_withassign::ostream_withassign(void) __ptr64
??0ostream_withassign@@QEAA@XZ
; public: __cdecl ostrstream::ostrstream(class ostrstream const & __ptr64) __ptr64
??0ostrstream@@QEAA@AEBV0@@Z
; public: __cdecl ostrstream::ostrstream(char * __ptr64,int,int) __ptr64
??0ostrstream@@QEAA@PEADHH@Z
; public: __cdecl ostrstream::ostrstream(void) __ptr64
??0ostrstream@@QEAA@XZ
; public: __cdecl stdiobuf::stdiobuf(class stdiobuf const & __ptr64) __ptr64
??0stdiobuf@@QEAA@AEBV0@@Z
; public: __cdecl stdiobuf::stdiobuf(struct _iobuf * __ptr64) __ptr64
??0stdiobuf@@QEAA@PEAU_iobuf@@@Z
; public: __cdecl stdiostream::stdiostream(class stdiostream const & __ptr64) __ptr64
??0stdiostream@@QEAA@AEBV0@@Z
; public: __cdecl stdiostream::stdiostream(struct _iobuf * __ptr64) __ptr64
??0stdiostream@@QEAA@PEAU_iobuf@@@Z
; protected: __cdecl streambuf::streambuf(char * __ptr64,int) __ptr64
??0streambuf@@IEAA@PEADH@Z
; protected: __cdecl streambuf::streambuf(void) __ptr64
??0streambuf@@IEAA@XZ
; public: __cdecl streambuf::streambuf(class streambuf const & __ptr64) __ptr64
??0streambuf@@QEAA@AEBV0@@Z
; public: __cdecl strstream::strstream(class strstream const & __ptr64) __ptr64
??0strstream@@QEAA@AEBV0@@Z
; public: __cdecl strstream::strstream(char * __ptr64,int,int) __ptr64
??0strstream@@QEAA@PEADHH@Z
; public: __cdecl strstream::strstream(void) __ptr64
??0strstream@@QEAA@XZ
; public: __cdecl strstreambuf::strstreambuf(class strstreambuf const & __ptr64) __ptr64
??0strstreambuf@@QEAA@AEBV0@@Z
; public: __cdecl strstreambuf::strstreambuf(int) __ptr64
??0strstreambuf@@QEAA@H@Z
; public: __cdecl strstreambuf::strstreambuf(void * __ptr64 (__cdecl*)(long),void (__cdecl*)(void * __ptr64)) __ptr64
??0strstreambuf@@QEAA@P6APEAXJ@ZP6AXPEAX@Z@Z
; public: __cdecl strstreambuf::strstreambuf(char * __ptr64,int,char * __ptr64) __ptr64
??0strstreambuf@@QEAA@PEADH0@Z
; public: __cdecl strstreambuf::strstreambuf(unsigned char * __ptr64,int,unsigned char * __ptr64) __ptr64
??0strstreambuf@@QEAA@PEAEH0@Z
; public: __cdecl strstreambuf::strstreambuf(void) __ptr64
??0strstreambuf@@QEAA@XZ
; public: __cdecl Iostream_init::~Iostream_init(void) __ptr64
??1Iostream_init@@QEAA@XZ
; public: virtual __cdecl exception::~exception(void) __ptr64
??1exception@@UEAA@XZ
; public: virtual __cdecl filebuf::~filebuf(void) __ptr64
??1filebuf@@UEAA@XZ
; public: virtual __cdecl fstream::~fstream(void) __ptr64
??1fstream@@UEAA@XZ
; public: virtual __cdecl ifstream::~ifstream(void) __ptr64
??1ifstream@@UEAA@XZ
; public: virtual __cdecl ios::~ios(void) __ptr64
??1ios@@UEAA@XZ
; public: virtual __cdecl iostream::~iostream(void) __ptr64
??1iostream@@UEAA@XZ
; public: virtual __cdecl istream::~istream(void) __ptr64
??1istream@@UEAA@XZ
; public: virtual __cdecl istream_withassign::~istream_withassign(void) __ptr64
??1istream_withassign@@UEAA@XZ
; public: virtual __cdecl istrstream::~istrstream(void) __ptr64
??1istrstream@@UEAA@XZ
; public: virtual __cdecl logic_error::~logic_error(void) __ptr64
??1logic_error@@UEAA@XZ
; public: virtual __cdecl ofstream::~ofstream(void) __ptr64
??1ofstream@@UEAA@XZ
; public: virtual __cdecl ostream::~ostream(void) __ptr64
??1ostream@@UEAA@XZ
; public: virtual __cdecl ostream_withassign::~ostream_withassign(void) __ptr64
??1ostream_withassign@@UEAA@XZ
; public: virtual __cdecl ostrstream::~ostrstream(void) __ptr64
??1ostrstream@@UEAA@XZ
; public: virtual __cdecl stdiobuf::~stdiobuf(void) __ptr64
??1stdiobuf@@UEAA@XZ
; public: virtual __cdecl stdiostream::~stdiostream(void) __ptr64
??1stdiostream@@UEAA@XZ
; public: virtual __cdecl streambuf::~streambuf(void) __ptr64
??1streambuf@@UEAA@XZ
; public: virtual __cdecl strstream::~strstream(void) __ptr64
??1strstream@@UEAA@XZ
; public: virtual __cdecl strstreambuf::~strstreambuf(void) __ptr64
??1strstreambuf@@UEAA@XZ
; public: class Iostream_init & __ptr64 __cdecl Iostream_init::operator=(class Iostream_init const & __ptr64) __ptr64
??4Iostream_init@@QEAAAEAV0@AEBV0@@Z
; public: class exception & __ptr64 __cdecl exception::operator=(class exception const & __ptr64) __ptr64
??4exception@@QEAAAEAV0@AEBV0@@Z
; public: class filebuf & __ptr64 __cdecl filebuf::operator=(class filebuf const & __ptr64) __ptr64
??4filebuf@@QEAAAEAV0@AEBV0@@Z
; public: class fstream & __ptr64 __cdecl fstream::operator=(class fstream & __ptr64) __ptr64
??4fstream@@QEAAAEAV0@AEAV0@@Z
; public: class ifstream & __ptr64 __cdecl ifstream::operator=(class ifstream const & __ptr64) __ptr64
??4ifstream@@QEAAAEAV0@AEBV0@@Z
; protected: class ios & __ptr64 __cdecl ios::operator=(class ios const & __ptr64) __ptr64
??4ios@@IEAAAEAV0@AEBV0@@Z
; protected: class iostream & __ptr64 __cdecl iostream::operator=(class iostream & __ptr64) __ptr64
??4iostream@@IEAAAEAV0@AEAV0@@Z
; protected: class iostream & __ptr64 __cdecl iostream::operator=(class streambuf * __ptr64) __ptr64
??4iostream@@IEAAAEAV0@PEAVstreambuf@@@Z
; protected: class istream & __ptr64 __cdecl istream::operator=(class istream const & __ptr64) __ptr64
??4istream@@IEAAAEAV0@AEBV0@@Z
; protected: class istream & __ptr64 __cdecl istream::operator=(class streambuf * __ptr64) __ptr64
??4istream@@IEAAAEAV0@PEAVstreambuf@@@Z
; public: class istream_withassign & __ptr64 __cdecl istream_withassign::operator=(class istream_withassign const & __ptr64) __ptr64
??4istream_withassign@@QEAAAEAV0@AEBV0@@Z
; public: class istream & __ptr64 __cdecl istream_withassign::operator=(class istream const & __ptr64) __ptr64
??4istream_withassign@@QEAAAEAVistream@@AEBV1@@Z
; public: class istream & __ptr64 __cdecl istream_withassign::operator=(class streambuf * __ptr64) __ptr64
??4istream_withassign@@QEAAAEAVistream@@PEAVstreambuf@@@Z
; public: class istrstream & __ptr64 __cdecl istrstream::operator=(class istrstream const & __ptr64) __ptr64
??4istrstream@@QEAAAEAV0@AEBV0@@Z
; public: class logic_error & __ptr64 __cdecl logic_error::operator=(class logic_error const & __ptr64) __ptr64
??4logic_error@@QEAAAEAV0@AEBV0@@Z
; public: class ofstream & __ptr64 __cdecl ofstream::operator=(class ofstream const & __ptr64) __ptr64
??4ofstream@@QEAAAEAV0@AEBV0@@Z
; protected: class ostream & __ptr64 __cdecl ostream::operator=(class ostream const & __ptr64) __ptr64
??4ostream@@IEAAAEAV0@AEBV0@@Z
; protected: class ostream & __ptr64 __cdecl ostream::operator=(class streambuf * __ptr64) __ptr64
??4ostream@@IEAAAEAV0@PEAVstreambuf@@@Z
; public: class ostream_withassign & __ptr64 __cdecl ostream_withassign::operator=(class ostream_withassign const & __ptr64) __ptr64
??4ostream_withassign@@QEAAAEAV0@AEBV0@@Z
; public: class ostream & __ptr64 __cdecl ostream_withassign::operator=(class ostream const & __ptr64) __ptr64
??4ostream_withassign@@QEAAAEAVostream@@AEBV1@@Z
; public: class ostream & __ptr64 __cdecl ostream_withassign::operator=(class streambuf * __ptr64) __ptr64
??4ostream_withassign@@QEAAAEAVostream@@PEAVstreambuf@@@Z
; public: class ostrstream & __ptr64 __cdecl ostrstream::operator=(class ostrstream const & __ptr64) __ptr64
??4ostrstream@@QEAAAEAV0@AEBV0@@Z
; public: class stdiobuf & __ptr64 __cdecl stdiobuf::operator=(class stdiobuf const & __ptr64) __ptr64
??4stdiobuf@@QEAAAEAV0@AEBV0@@Z
; public: class stdiostream & __ptr64 __cdecl stdiostream::operator=(class stdiostream & __ptr64) __ptr64
??4stdiostream@@QEAAAEAV0@AEAV0@@Z
; public: class streambuf & __ptr64 __cdecl streambuf::operator=(class streambuf const & __ptr64) __ptr64
??4streambuf@@QEAAAEAV0@AEBV0@@Z
; public: class strstream & __ptr64 __cdecl strstream::operator=(class strstream & __ptr64) __ptr64
??4strstream@@QEAAAEAV0@AEAV0@@Z
; public: class strstreambuf & __ptr64 __cdecl strstreambuf::operator=(class strstreambuf const & __ptr64) __ptr64
??4strstreambuf@@QEAAAEAV0@AEBV0@@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(signed char & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAC@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(char & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAD@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(unsigned char & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAE@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(short & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAF@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(unsigned short & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAG@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(int & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAH@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(unsigned int & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAI@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(long & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAJ@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(unsigned long & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAK@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(float & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAM@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(double & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAN@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(long double & __ptr64) __ptr64
??5istream@@QEAAAEAV0@AEAO@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(class istream & __ptr64 (__cdecl*)(class istream & __ptr64)) __ptr64
??5istream@@QEAAAEAV0@P6AAEAV0@AEAV0@@Z@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(class ios & __ptr64 (__cdecl*)(class ios & __ptr64)) __ptr64
??5istream@@QEAAAEAV0@P6AAEAVios@@AEAV1@@Z@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(signed char * __ptr64) __ptr64
??5istream@@QEAAAEAV0@PEAC@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(char * __ptr64) __ptr64
??5istream@@QEAAAEAV0@PEAD@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(unsigned char * __ptr64) __ptr64
??5istream@@QEAAAEAV0@PEAE@Z
; public: class istream & __ptr64 __cdecl istream::operator>>(class streambuf * __ptr64) __ptr64
??5istream@@QEAAAEAV0@PEAVstreambuf@@@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(signed char) __ptr64
??6ostream@@QEAAAEAV0@C@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(char) __ptr64
??6ostream@@QEAAAEAV0@D@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(unsigned char) __ptr64
??6ostream@@QEAAAEAV0@E@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(short) __ptr64
??6ostream@@QEAAAEAV0@F@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(unsigned short) __ptr64
??6ostream@@QEAAAEAV0@G@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(int) __ptr64
??6ostream@@QEAAAEAV0@H@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(unsigned int) __ptr64
??6ostream@@QEAAAEAV0@I@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(long) __ptr64
??6ostream@@QEAAAEAV0@J@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(unsigned long) __ptr64
??6ostream@@QEAAAEAV0@K@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(float) __ptr64
??6ostream@@QEAAAEAV0@M@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(double) __ptr64
??6ostream@@QEAAAEAV0@N@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(long double) __ptr64
??6ostream@@QEAAAEAV0@O@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(class ostream & __ptr64 (__cdecl*)(class ostream & __ptr64)) __ptr64
??6ostream@@QEAAAEAV0@P6AAEAV0@AEAV0@@Z@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(class ios & __ptr64 (__cdecl*)(class ios & __ptr64)) __ptr64
??6ostream@@QEAAAEAV0@P6AAEAVios@@AEAV1@@Z@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(class streambuf * __ptr64) __ptr64
??6ostream@@QEAAAEAV0@PEAVstreambuf@@@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(signed char const * __ptr64) __ptr64
??6ostream@@QEAAAEAV0@PEBC@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(char const * __ptr64) __ptr64
??6ostream@@QEAAAEAV0@PEBD@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(unsigned char const * __ptr64) __ptr64
??6ostream@@QEAAAEAV0@PEBE@Z
; public: class ostream & __ptr64 __cdecl ostream::operator<<(void const * __ptr64) __ptr64
??6ostream@@QEAAAEAV0@PEBX@Z
; public: int __cdecl ios::operator!(void)const  __ptr64
??7ios@@QEBAHXZ
; public: __cdecl ios::operator void * __ptr64(void)const  __ptr64
??Bios@@QEBAPEAXXZ
; const  exception::`vftable'
??_7exception@@6B@
; const  filebuf::`vftable'
??_7filebuf@@6B@
; const  fstream::`vftable'
??_7fstream@@6B@
; const  ifstream::`vftable'
??_7ifstream@@6B@
; const  ios::`vftable'
??_7ios@@6B@
; const  iostream::`vftable'
??_7iostream@@6B@
; const  istream::`vftable'
??_7istream@@6B@
; const  istream_withassign::`vftable'
??_7istream_withassign@@6B@
; const  istrstream::`vftable'
??_7istrstream@@6B@
; const  logic_error::`vftable'
??_7logic_error@@6B@
; const  ofstream::`vftable'
??_7ofstream@@6B@
; const  ostream::`vftable'
??_7ostream@@6B@
; const  ostream_withassign::`vftable'
??_7ostream_withassign@@6B@
; const  ostrstream::`vftable'
??_7ostrstream@@6B@
; const  stdiobuf::`vftable'
??_7stdiobuf@@6B@
; const  stdiostream::`vftable'
??_7stdiostream@@6B@
; const  streambuf::`vftable'
??_7streambuf@@6B@
; const  strstream::`vftable'
??_7strstream@@6B@
; const  strstreambuf::`vftable'
??_7strstreambuf@@6B@
; const  fstream::`vbtable'{for `istream'}
??_8fstream@@7Bistream@@@ DATA
; const  fstream::`vbtable'{for `ostream'}
??_8fstream@@7Bostream@@@ DATA
; const  ifstream::`vbtable'
??_8ifstream@@7B@ DATA
; const  iostream::`vbtable'{for `istream'}
??_8iostream@@7Bistream@@@ DATA
; const  iostream::`vbtable'{for `ostream'}
??_8iostream@@7Bostream@@@ DATA
; const  istream::`vbtable'
??_8istream@@7B@ DATA
; const  istream_withassign::`vbtable'
??_8istream_withassign@@7B@ DATA
; const  istrstream::`vbtable'
??_8istrstream@@7B@ DATA
; const  ofstream::`vbtable'
??_8ofstream@@7B@ DATA
; const  ostream::`vbtable'
??_8ostream@@7B@ DATA
; const  ostream_withassign::`vbtable'
??_8ostream_withassign@@7B@ DATA
; const  ostrstream::`vbtable'
??_8ostrstream@@7B@ DATA
; const  stdiostream::`vbtable'{for `istream'}
??_8stdiostream@@7Bistream@@@ DATA
; const  stdiostream::`vbtable'{for `ostream'}
??_8stdiostream@@7Bostream@@@ DATA
; const  strstream::`vbtable'{for `istream'}
??_8strstream@@7Bistream@@@ DATA
; const  strstream::`vbtable'{for `ostream'}
??_8strstream@@7Bostream@@@ DATA
; public: void __cdecl fstream::`vbase destructor'(void) __ptr64
??_Dfstream@@QEAAXXZ
; public: void __cdecl ifstream::`vbase destructor'(void) __ptr64
??_Difstream@@QEAAXXZ
; public: void __cdecl iostream::`vbase destructor'(void) __ptr64
??_Diostream@@QEAAXXZ
; public: void __cdecl istream::`vbase destructor'(void) __ptr64
??_Distream@@QEAAXXZ
; public: void __cdecl istream_withassign::`vbase destructor'(void) __ptr64
??_Distream_withassign@@QEAAXXZ
; public: void __cdecl istrstream::`vbase destructor'(void) __ptr64
??_Distrstream@@QEAAXXZ
; public: void __cdecl ofstream::`vbase destructor'(void) __ptr64
??_Dofstream@@QEAAXXZ
; public: void __cdecl ostream::`vbase destructor'(void) __ptr64
??_Dostream@@QEAAXXZ
; public: void __cdecl ostream_withassign::`vbase destructor'(void) __ptr64
??_Dostream_withassign@@QEAAXXZ
; public: void __cdecl ostrstream::`vbase destructor'(void) __ptr64
??_Dostrstream@@QEAAXXZ
; public: void __cdecl stdiostream::`vbase destructor'(void) __ptr64
??_Dstdiostream@@QEAAXXZ
; public: void __cdecl strstream::`vbase destructor'(void) __ptr64
??_Dstrstream@@QEAAXXZ
; public: static long const  ios::adjustfield
?adjustfield@ios@@2JB
; protected: int __cdecl streambuf::allocate(void) __ptr64
?allocate@streambuf@@IEAAHXZ
; public: class filebuf * __ptr64 __cdecl filebuf::attach(int) __ptr64
?attach@filebuf@@QEAAPEAV1@H@Z
; public: void __cdecl fstream::attach(int) __ptr64
?attach@fstream@@QEAAXH@Z
; public: void __cdecl ifstream::attach(int) __ptr64
?attach@ifstream@@QEAAXH@Z
; public: void __cdecl ofstream::attach(int) __ptr64
?attach@ofstream@@QEAAXH@Z
; public: int __cdecl ios::bad(void)const  __ptr64
?bad@ios@@QEBAHXZ
; protected: char * __ptr64 __cdecl streambuf::base(void)const  __ptr64
?base@streambuf@@IEBAPEADXZ
; public: static long const  ios::basefield
?basefield@ios@@2JB
; public: static int const  filebuf::binary
?binary@filebuf@@2HB
; public: static long __cdecl ios::bitalloc(void)
?bitalloc@ios@@SAJXZ
; protected: int __cdecl streambuf::blen(void)const  __ptr64
?blen@streambuf@@IEBAHXZ
; class ostream_withassign  cerr
?cerr@@3Vostream_withassign@@A DATA
; class istream_withassign  cin
?cin@@3Vistream_withassign@@A DATA
; public: void __cdecl ios::clear(int) __ptr64
?clear@ios@@QEAAXH@Z
; class ostream_withassign  clog
?clog@@3Vostream_withassign@@A DATA
; public: class filebuf * __ptr64 __cdecl filebuf::close(void) __ptr64
?close@filebuf@@QEAAPEAV1@XZ
; public: void __cdecl fstream::close(void) __ptr64
?close@fstream@@QEAAXXZ
; public: void __cdecl ifstream::close(void) __ptr64
?close@ifstream@@QEAAXXZ
; public: void __cdecl ofstream::close(void) __ptr64
?close@ofstream@@QEAAXXZ
; public: void __cdecl ios::clrlock(void) __ptr64
?clrlock@ios@@QEAAXXZ
; public: void __cdecl streambuf::clrlock(void) __ptr64
?clrlock@streambuf@@QEAAXXZ
; class ostream_withassign  cout
?cout@@3Vostream_withassign@@A DATA
; public: void __cdecl streambuf::dbp(void) __ptr64
?dbp@streambuf@@QEAAXXZ
; class ios & __ptr64 __cdecl dec(class ios & __ptr64)
?dec@@YAAEAVios@@AEAV1@@Z
; public: void __cdecl ios::delbuf(int) __ptr64
?delbuf@ios@@QEAAXH@Z
; public: int __cdecl ios::delbuf(void)const  __ptr64
?delbuf@ios@@QEBAHXZ
; protected: virtual int __cdecl streambuf::doallocate(void) __ptr64
?doallocate@streambuf@@MEAAHXZ
; protected: virtual int __cdecl strstreambuf::doallocate(void) __ptr64
?doallocate@strstreambuf@@MEAAHXZ
; public: void __cdecl istream::eatwhite(void) __ptr64
?eatwhite@istream@@QEAAXXZ
; protected: char * __ptr64 __cdecl streambuf::eback(void)const  __ptr64
?eback@streambuf@@IEBAPEADXZ
; protected: char * __ptr64 __cdecl streambuf::ebuf(void)const  __ptr64
?ebuf@streambuf@@IEBAPEADXZ
; protected: char * __ptr64 __cdecl streambuf::egptr(void)const  __ptr64
?egptr@streambuf@@IEBAPEADXZ
; class ostream & __ptr64 __cdecl endl(class ostream & __ptr64)
?endl@@YAAEAVostream@@AEAV1@@Z
; class ostream & __ptr64 __cdecl ends(class ostream & __ptr64)
?ends@@YAAEAVostream@@AEAV1@@Z
; public: int __cdecl ios::eof(void)const  __ptr64
?eof@ios@@QEBAHXZ
; protected: char * __ptr64 __cdecl streambuf::epptr(void)const  __ptr64
?epptr@streambuf@@IEBAPEADXZ
; private: static int  ios::fLockcInit
?fLockcInit@ios@@0HA DATA
; public: int __cdecl ios::fail(void)const  __ptr64
?fail@ios@@QEBAHXZ
; public: int __cdecl filebuf::fd(void)const  __ptr64
?fd@filebuf@@QEBAHXZ
; public: int __cdecl fstream::fd(void)const  __ptr64
?fd@fstream@@QEBAHXZ
; public: int __cdecl ifstream::fd(void)const  __ptr64
?fd@ifstream@@QEBAHXZ
; public: int __cdecl ofstream::fd(void)const  __ptr64
?fd@ofstream@@QEBAHXZ
; public: char __cdecl ios::fill(char) __ptr64
?fill@ios@@QEAADD@Z
; public: char __cdecl ios::fill(void)const  __ptr64
?fill@ios@@QEBADXZ
; public: long __cdecl ios::flags(long) __ptr64
?flags@ios@@QEAAJJ@Z
; public: long __cdecl ios::flags(void)const  __ptr64
?flags@ios@@QEBAJXZ
; public: static long const  ios::floatfield
?floatfield@ios@@2JB
; class ostream & __ptr64 __cdecl flush(class ostream & __ptr64)
?flush@@YAAEAVostream@@AEAV1@@Z
; public: class ostream & __ptr64 __cdecl ostream::flush(void) __ptr64
?flush@ostream@@QEAAAEAV1@XZ
; public: void __cdecl strstreambuf::freeze(int) __ptr64
?freeze@strstreambuf@@QEAAXH@Z
; protected: void __cdecl streambuf::gbump(int) __ptr64
?gbump@streambuf@@IEAAXH@Z
; public: int __cdecl istream::gcount(void)const  __ptr64
?gcount@istream@@QEBAHXZ
; protected: class istream & __ptr64 __cdecl istream::get(char * __ptr64,int,int) __ptr64
?get@istream@@IEAAAEAV1@PEADHH@Z
; public: class istream & __ptr64 __cdecl istream::get(signed char & __ptr64) __ptr64
?get@istream@@QEAAAEAV1@AEAC@Z
; public: class istream & __ptr64 __cdecl istream::get(char & __ptr64) __ptr64
?get@istream@@QEAAAEAV1@AEAD@Z
; public: class istream & __ptr64 __cdecl istream::get(unsigned char & __ptr64) __ptr64
?get@istream@@QEAAAEAV1@AEAE@Z
; public: class istream & __ptr64 __cdecl istream::get(class streambuf & __ptr64,char) __ptr64
?get@istream@@QEAAAEAV1@AEAVstreambuf@@D@Z
; public: class istream & __ptr64 __cdecl istream::get(signed char * __ptr64,int,char) __ptr64
?get@istream@@QEAAAEAV1@PEACHD@Z
; public: class istream & __ptr64 __cdecl istream::get(char * __ptr64,int,char) __ptr64
?get@istream@@QEAAAEAV1@PEADHD@Z
; public: class istream & __ptr64 __cdecl istream::get(unsigned char * __ptr64,int,char) __ptr64
?get@istream@@QEAAAEAV1@PEAEHD@Z
; public: int __cdecl istream::get(void) __ptr64
?get@istream@@QEAAHXZ
; private: int __cdecl istream::getdouble(char * __ptr64,int) __ptr64
?getdouble@istream@@AEAAHPEADH@Z
; private: int __cdecl istream::getint(char * __ptr64) __ptr64
?getint@istream@@AEAAHPEAD@Z
; public: class istream & __ptr64 __cdecl istream::getline(signed char * __ptr64,int,char) __ptr64
?getline@istream@@QEAAAEAV1@PEACHD@Z
; public: class istream & __ptr64 __cdecl istream::getline(char * __ptr64,int,char) __ptr64
?getline@istream@@QEAAAEAV1@PEADHD@Z
; public: class istream & __ptr64 __cdecl istream::getline(unsigned char * __ptr64,int,char) __ptr64
?getline@istream@@QEAAAEAV1@PEAEHD@Z
; public: int __cdecl ios::good(void)const  __ptr64
?good@ios@@QEBAHXZ
; protected: char * __ptr64 __cdecl streambuf::gptr(void)const  __ptr64
?gptr@streambuf@@IEBAPEADXZ
; class ios & __ptr64 __cdecl hex(class ios & __ptr64)
?hex@@YAAEAVios@@AEAV1@@Z
; public: class istream & __ptr64 __cdecl istream::ignore(int,int) __ptr64
?ignore@istream@@QEAAAEAV1@HH@Z
; public: int __cdecl streambuf::in_avail(void)const  __ptr64
?in_avail@streambuf@@QEBAHXZ
; protected: void __cdecl ios::init(class streambuf * __ptr64) __ptr64
?init@ios@@IEAAXPEAVstreambuf@@@Z
; public: int __cdecl istream::ipfx(int) __ptr64
?ipfx@istream@@QEAAHH@Z
; public: int __cdecl filebuf::is_open(void)const  __ptr64
?is_open@filebuf@@QEBAHXZ
; public: int __cdecl fstream::is_open(void)const  __ptr64
?is_open@fstream@@QEBAHXZ
; public: int __cdecl ifstream::is_open(void)const  __ptr64
?is_open@ifstream@@QEBAHXZ
; public: int __cdecl ofstream::is_open(void)const  __ptr64
?is_open@ofstream@@QEBAHXZ
; public: void __cdecl istream::isfx(void) __ptr64
?isfx@istream@@QEAAXXZ
; public: long & __ptr64 __cdecl ios::iword(int)const  __ptr64
?iword@ios@@QEBAAEAJH@Z
; public: void __cdecl ios::lock(void) __ptr64
?lock@ios@@QEAAXXZ
; public: void __cdecl streambuf::lock(void) __ptr64
?lock@streambuf@@QEAAXXZ
; public: void __cdecl ios::lockbuf(void) __ptr64
?lockbuf@ios@@QEAAXXZ
; protected: static void __cdecl ios::lockc(void)
?lockc@ios@@KAXXZ
; protected: struct _CRT_CRITICAL_SECTION * __ptr64 __cdecl ios::lockptr(void) __ptr64
?lockptr@ios@@IEAAPEAU_CRT_CRITICAL_SECTION@@XZ
; protected: struct _CRT_CRITICAL_SECTION * __ptr64 __cdecl streambuf::lockptr(void) __ptr64
?lockptr@streambuf@@IEAAPEAU_CRT_CRITICAL_SECTION@@XZ
; class ios & __ptr64 __cdecl oct(class ios & __ptr64)
?oct@@YAAEAVios@@AEAV1@@Z
; public: class filebuf * __ptr64 __cdecl filebuf::open(char const * __ptr64,int,int) __ptr64
?open@filebuf@@QEAAPEAV1@PEBDHH@Z
; public: void __cdecl fstream::open(char const * __ptr64,int,int) __ptr64
?open@fstream@@QEAAXPEBDHH@Z
; public: void __cdecl ifstream::open(char const * __ptr64,int,int) __ptr64
?open@ifstream@@QEAAXPEBDHH@Z
; public: void __cdecl ofstream::open(char const * __ptr64,int,int) __ptr64
?open@ofstream@@QEAAXPEBDHH@Z
; public: static int const  filebuf::openprot
?openprot@filebuf@@2HB
; public: int __cdecl ostream::opfx(void) __ptr64
?opfx@ostream@@QEAAHXZ
; public: void __cdecl ostream::osfx(void) __ptr64
?osfx@ostream@@QEAAXXZ
; public: int __cdecl streambuf::out_waiting(void)const  __ptr64
?out_waiting@streambuf@@QEBAHXZ
; public: virtual int __cdecl filebuf::overflow(int) __ptr64
?overflow@filebuf@@UEAAHH@Z
; public: virtual int __cdecl stdiobuf::overflow(int) __ptr64
?overflow@stdiobuf@@UEAAHH@Z
; public: virtual int __cdecl strstreambuf::overflow(int) __ptr64
?overflow@strstreambuf@@UEAAHH@Z
; public: virtual int __cdecl stdiobuf::pbackfail(int) __ptr64
?pbackfail@stdiobuf@@UEAAHH@Z
; public: virtual int __cdecl streambuf::pbackfail(int) __ptr64
?pbackfail@streambuf@@UEAAHH@Z
; protected: char * __ptr64 __cdecl streambuf::pbase(void)const  __ptr64
?pbase@streambuf@@IEBAPEADXZ
; protected: void __cdecl streambuf::pbump(int) __ptr64
?pbump@streambuf@@IEAAXH@Z
; public: int __cdecl ostrstream::pcount(void)const  __ptr64
?pcount@ostrstream@@QEBAHXZ
; public: int __cdecl strstream::pcount(void)const  __ptr64
?pcount@strstream@@QEBAHXZ
; public: int __cdecl istream::peek(void) __ptr64
?peek@istream@@QEAAHXZ
; protected: char * __ptr64 __cdecl streambuf::pptr(void)const  __ptr64
?pptr@streambuf@@IEBAPEADXZ
; public: int __cdecl ios::precision(int) __ptr64
?precision@ios@@QEAAHH@Z
; public: int __cdecl ios::precision(void)const  __ptr64
?precision@ios@@QEBAHXZ
; public: class ostream & __ptr64 __cdecl ostream::put(signed char) __ptr64
?put@ostream@@QEAAAEAV1@C@Z
; public: class ostream & __ptr64 __cdecl ostream::put(char) __ptr64
?put@ostream@@QEAAAEAV1@D@Z
; public: class ostream & __ptr64 __cdecl ostream::put(unsigned char) __ptr64
?put@ostream@@QEAAAEAV1@E@Z
; public: class istream & __ptr64 __cdecl istream::putback(char) __ptr64
?putback@istream@@QEAAAEAV1@D@Z
; public: void * __ptr64 & __ptr64 __cdecl ios::pword(int)const  __ptr64
?pword@ios@@QEBAAEAPEAXH@Z
; public: class filebuf * __ptr64 __cdecl fstream::rdbuf(void)const  __ptr64
?rdbuf@fstream@@QEBAPEAVfilebuf@@XZ
; public: class filebuf * __ptr64 __cdecl ifstream::rdbuf(void)const  __ptr64
?rdbuf@ifstream@@QEBAPEAVfilebuf@@XZ
; public: class streambuf * __ptr64 __cdecl ios::rdbuf(void)const  __ptr64
?rdbuf@ios@@QEBAPEAVstreambuf@@XZ
; public: class strstreambuf * __ptr64 __cdecl istrstream::rdbuf(void)const  __ptr64
?rdbuf@istrstream@@QEBAPEAVstrstreambuf@@XZ
; public: class filebuf * __ptr64 __cdecl ofstream::rdbuf(void)const  __ptr64
?rdbuf@ofstream@@QEBAPEAVfilebuf@@XZ
; public: class strstreambuf * __ptr64 __cdecl ostrstream::rdbuf(void)const  __ptr64
?rdbuf@ostrstream@@QEBAPEAVstrstreambuf@@XZ
; public: class stdiobuf * __ptr64 __cdecl stdiostream::rdbuf(void)const  __ptr64
?rdbuf@stdiostream@@QEBAPEAVstdiobuf@@XZ
; public: class strstreambuf * __ptr64 __cdecl strstream::rdbuf(void)const  __ptr64
?rdbuf@strstream@@QEBAPEAVstrstreambuf@@XZ
; public: int __cdecl ios::rdstate(void)const  __ptr64
?rdstate@ios@@QEBAHXZ
; public: class istream & __ptr64 __cdecl istream::read(signed char * __ptr64,int) __ptr64
?read@istream@@QEAAAEAV1@PEACH@Z
; public: class istream & __ptr64 __cdecl istream::read(char * __ptr64,int) __ptr64
?read@istream@@QEAAAEAV1@PEADH@Z
; public: class istream & __ptr64 __cdecl istream::read(unsigned char * __ptr64,int) __ptr64
?read@istream@@QEAAAEAV1@PEAEH@Z
; public: int __cdecl streambuf::sbumpc(void) __ptr64
?sbumpc@streambuf@@QEAAHXZ
; public: class istream & __ptr64 __cdecl istream::seekg(long) __ptr64
?seekg@istream@@QEAAAEAV1@J@Z
; public: class istream & __ptr64 __cdecl istream::seekg(long,enum ios::seek_dir) __ptr64
?seekg@istream@@QEAAAEAV1@JW4seek_dir@ios@@@Z
; public: virtual long __cdecl filebuf::seekoff(long,enum ios::seek_dir,int) __ptr64
?seekoff@filebuf@@UEAAJJW4seek_dir@ios@@H@Z
; public: virtual long __cdecl stdiobuf::seekoff(long,enum ios::seek_dir,int) __ptr64
?seekoff@stdiobuf@@UEAAJJW4seek_dir@ios@@H@Z
; public: virtual long __cdecl streambuf::seekoff(long,enum ios::seek_dir,int) __ptr64
?seekoff@streambuf@@UEAAJJW4seek_dir@ios@@H@Z
; public: virtual long __cdecl strstreambuf::seekoff(long,enum ios::seek_dir,int) __ptr64
?seekoff@strstreambuf@@UEAAJJW4seek_dir@ios@@H@Z
; public: class ostream & __ptr64 __cdecl ostream::seekp(long) __ptr64
?seekp@ostream@@QEAAAEAV1@J@Z
; public: class ostream & __ptr64 __cdecl ostream::seekp(long,enum ios::seek_dir) __ptr64
?seekp@ostream@@QEAAAEAV1@JW4seek_dir@ios@@@Z
; public: virtual long __cdecl streambuf::seekpos(long,int) __ptr64
?seekpos@streambuf@@UEAAJJH@Z
; protected: void __cdecl streambuf::setb(char * __ptr64,char * __ptr64,int) __ptr64
?setb@streambuf@@IEAAXPEAD0H@Z
; public: virtual class streambuf * __ptr64 __cdecl filebuf::setbuf(char * __ptr64,int) __ptr64
?setbuf@filebuf@@UEAAPEAVstreambuf@@PEADH@Z
; public: class streambuf * __ptr64 __cdecl fstream::setbuf(char * __ptr64,int) __ptr64
?setbuf@fstream@@QEAAPEAVstreambuf@@PEADH@Z
; public: class streambuf * __ptr64 __cdecl ifstream::setbuf(char * __ptr64,int) __ptr64
?setbuf@ifstream@@QEAAPEAVstreambuf@@PEADH@Z
; public: class streambuf * __ptr64 __cdecl ofstream::setbuf(char * __ptr64,int) __ptr64
?setbuf@ofstream@@QEAAPEAVstreambuf@@PEADH@Z
; public: virtual class streambuf * __ptr64 __cdecl streambuf::setbuf(char * __ptr64,int) __ptr64
?setbuf@streambuf@@UEAAPEAV1@PEADH@Z
; public: virtual class streambuf * __ptr64 __cdecl strstreambuf::setbuf(char * __ptr64,int) __ptr64
?setbuf@strstreambuf@@UEAAPEAVstreambuf@@PEADH@Z
; public: long __cdecl ios::setf(long) __ptr64
?setf@ios@@QEAAJJ@Z
; public: long __cdecl ios::setf(long,long) __ptr64
?setf@ios@@QEAAJJJ@Z
; protected: void __cdecl streambuf::setg(char * __ptr64,char * __ptr64,char * __ptr64) __ptr64
?setg@streambuf@@IEAAXPEAD00@Z
; public: void __cdecl ios::setlock(void) __ptr64
?setlock@ios@@QEAAXXZ
; public: void __cdecl streambuf::setlock(void) __ptr64
?setlock@streambuf@@QEAAXXZ
; public: int __cdecl filebuf::setmode(int) __ptr64
?setmode@filebuf@@QEAAHH@Z
; public: int __cdecl fstream::setmode(int) __ptr64
?setmode@fstream@@QEAAHH@Z
; public: int __cdecl ifstream::setmode(int) __ptr64
?setmode@ifstream@@QEAAHH@Z
; public: int __cdecl ofstream::setmode(int) __ptr64
?setmode@ofstream@@QEAAHH@Z
; protected: void __cdecl streambuf::setp(char * __ptr64,char * __ptr64) __ptr64
?setp@streambuf@@IEAAXPEAD0@Z
; public: int __cdecl stdiobuf::setrwbuf(int,int) __ptr64
?setrwbuf@stdiobuf@@QEAAHHH@Z
; public: int __cdecl streambuf::sgetc(void) __ptr64
?sgetc@streambuf@@QEAAHXZ
; public: int __cdecl streambuf::sgetn(char * __ptr64,int) __ptr64
?sgetn@streambuf@@QEAAHPEADH@Z
; public: static int const  filebuf::sh_none
?sh_none@filebuf@@2HB
; public: static int const  filebuf::sh_read
?sh_read@filebuf@@2HB
; public: static int const  filebuf::sh_write
?sh_write@filebuf@@2HB
; public: int __cdecl streambuf::snextc(void) __ptr64
?snextc@streambuf@@QEAAHXZ
; public: int __cdecl streambuf::sputbackc(char) __ptr64
?sputbackc@streambuf@@QEAAHD@Z
; public: int __cdecl streambuf::sputc(int) __ptr64
?sputc@streambuf@@QEAAHH@Z
; public: int __cdecl streambuf::sputn(char const * __ptr64,int) __ptr64
?sputn@streambuf@@QEAAHPEBDH@Z
; public: struct _iobuf * __ptr64 __cdecl stdiobuf::stdiofile(void) __ptr64
?stdiofile@stdiobuf@@QEAAPEAU_iobuf@@XZ
; public: void __cdecl streambuf::stossc(void) __ptr64
?stossc@streambuf@@QEAAXXZ
; public: char * __ptr64 __cdecl istrstream::str(void) __ptr64
?str@istrstream@@QEAAPEADXZ
; public: char * __ptr64 __cdecl ostrstream::str(void) __ptr64
?str@ostrstream@@QEAAPEADXZ
; public: char * __ptr64 __cdecl strstream::str(void) __ptr64
?str@strstream@@QEAAPEADXZ
; public: char * __ptr64 __cdecl strstreambuf::str(void) __ptr64
?str@strstreambuf@@QEAAPEADXZ
; private: static int  ios::sunk_with_stdio
?sunk_with_stdio@ios@@0HA DATA
; public: virtual int __cdecl filebuf::sync(void) __ptr64
?sync@filebuf@@UEAAHXZ
; public: int __cdecl istream::sync(void) __ptr64
?sync@istream@@QEAAHXZ
; public: virtual int __cdecl stdiobuf::sync(void) __ptr64
?sync@stdiobuf@@UEAAHXZ
; public: virtual int __cdecl streambuf::sync(void) __ptr64
?sync@streambuf@@UEAAHXZ
; public: virtual int __cdecl strstreambuf::sync(void) __ptr64
?sync@strstreambuf@@UEAAHXZ
; public: static void __cdecl ios::sync_with_stdio(void)
?sync_with_stdio@ios@@SAXXZ
; public: long __cdecl istream::tellg(void) __ptr64
?tellg@istream@@QEAAJXZ
; public: long __cdecl ostream::tellp(void) __ptr64
?tellp@ostream@@QEAAJXZ
; public: static int const  filebuf::text
?text@filebuf@@2HB
; public: class ostream * __ptr64 __cdecl ios::tie(class ostream * __ptr64) __ptr64
?tie@ios@@QEAAPEAVostream@@PEAV2@@Z
; public: class ostream * __ptr64 __cdecl ios::tie(void)const  __ptr64
?tie@ios@@QEBAPEAVostream@@XZ
; protected: void __cdecl streambuf::unbuffered(int) __ptr64
?unbuffered@streambuf@@IEAAXH@Z
; protected: int __cdecl streambuf::unbuffered(void)const  __ptr64
?unbuffered@streambuf@@IEBAHXZ
; public: virtual int __cdecl filebuf::underflow(void) __ptr64
?underflow@filebuf@@UEAAHXZ
; public: virtual int __cdecl stdiobuf::underflow(void) __ptr64
?underflow@stdiobuf@@UEAAHXZ
; public: virtual int __cdecl strstreambuf::underflow(void) __ptr64
?underflow@strstreambuf@@UEAAHXZ
; public: void __cdecl ios::unlock(void) __ptr64
?unlock@ios@@QEAAXXZ
; public: void __cdecl streambuf::unlock(void) __ptr64
?unlock@streambuf@@QEAAXXZ
; public: void __cdecl ios::unlockbuf(void) __ptr64
?unlockbuf@ios@@QEAAXXZ
; protected: static void __cdecl ios::unlockc(void)
?unlockc@ios@@KAXXZ
; public: long __cdecl ios::unsetf(long) __ptr64
?unsetf@ios@@QEAAJJ@Z
; public: virtual char const * __ptr64 __cdecl exception::what(void)const  __ptr64
?what@exception@@UEBAPEBDXZ
; public: int __cdecl ios::width(int) __ptr64
?width@ios@@QEAAHH@Z
; public: int __cdecl ios::width(void)const  __ptr64
?width@ios@@QEBAHXZ
; public: class ostream & __ptr64 __cdecl ostream::write(signed char const * __ptr64,int) __ptr64
?write@ostream@@QEAAAEAV1@PEBCH@Z
; public: class ostream & __ptr64 __cdecl ostream::write(char const * __ptr64,int) __ptr64
?write@ostream@@QEAAAEAV1@PEBDH@Z
; public: class ostream & __ptr64 __cdecl ostream::write(unsigned char const * __ptr64,int) __ptr64
?write@ostream@@QEAAAEAV1@PEBEH@Z
; private: class ostream & __ptr64 __cdecl ostream::writepad(char const * __ptr64,char const * __ptr64) __ptr64
?writepad@ostream@@AEAAAEAV1@PEBD0@Z
; class istream & __ptr64 __cdecl ws(class istream & __ptr64)
?ws@@YAAEAVistream@@AEAV1@@Z
; private: static int  ios::x_curindex
?x_curindex@ios@@0HA DATA
; private: static struct _CRT_CRITICAL_SECTION  ios::x_lockc
?x_lockc@ios@@0U_CRT_CRITICAL_SECTION@@A DATA
; private: static long  ios::x_maxbit
?x_maxbit@ios@@0JA DATA
; private: static long *  ios::x_statebuf
?x_statebuf@ios@@0PAJA DATA
; public: static int __cdecl ios::xalloc(void)
?xalloc@ios@@SAHXZ
; public: virtual int __cdecl streambuf::xsgetn(char * __ptr64,int) __ptr64
?xsgetn@streambuf@@UEAAHPEADH@Z
; public: virtual int __cdecl streambuf::xsputn(char const * __ptr64,int) __ptr64
?xsputn@streambuf@@UEAAHPEBDH@Z
__dummy_export DATA
_mtlock
_mtunlock
