;
; Definition file of MSVCRT40.dll
; Automatic generated by gendef
; written by Kai Tietz 2008
;
LIBRARY "MSVCRT40.dll"
EXPORTS

#include "msvcrt-common.def.in"

; public: __thiscall Iostream_init::Iostream_init(class ios &,int)
??0Iostream_init@@QAE@AAVios@@H@Z ; has WINAPI (@8)
; public: __thiscall Iostream_init::Iostream_init(void)
??0Iostream_init@@QAE@XZ
; public: __thiscall __non_rtti_object::__non_rtti_object(class __non_rtti_object const &)
??0__non_rtti_object@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall __non_rtti_object::__non_rtti_object(char const *)
??0__non_rtti_object@@QAE@PBD@Z ; has WINAPI (@4)
; public: __thiscall bad_cast::bad_cast(char const *const &)
??0bad_cast@@QAE@ABQBD@Z ; has WINAPI (@4)
; public: __thiscall bad_cast::bad_cast(class bad_cast const &)
??0bad_cast@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall bad_typeid::bad_typeid(class bad_typeid const &)
??0bad_typeid@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall bad_typeid::bad_typeid(char const *)
??0bad_typeid@@QAE@PBD@Z ; has WINAPI (@4)
; public: __thiscall exception::exception(char const *const &)
??0exception@@QAE@ABQBD@Z ; has WINAPI (@4)
; public: __thiscall exception::exception(class exception const &)
??0exception@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall exception::exception(void)
??0exception@@QAE@XZ
; public: __thiscall filebuf::filebuf(class filebuf const &)
??0filebuf@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall filebuf::filebuf(int)
??0filebuf@@QAE@H@Z ; has WINAPI (@4)
; public: __thiscall filebuf::filebuf(int,char *,int)
??0filebuf@@QAE@HPADH@Z ; has WINAPI (@12)
; public: __thiscall filebuf::filebuf(void)
??0filebuf@@QAE@XZ
; public: __thiscall fstream::fstream(class fstream const &)
??0fstream@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall fstream::fstream(int)
??0fstream@@QAE@H@Z ; has WINAPI (@8)
; public: __thiscall fstream::fstream(int,char *,int)
??0fstream@@QAE@HPADH@Z ; has WINAPI (@16)
; public: __thiscall fstream::fstream(char const *,int,int)
??0fstream@@QAE@PBDHH@Z ; has WINAPI (@16)
; public: __thiscall fstream::fstream(void)
??0fstream@@QAE@XZ ; has WINAPI (@4)
; public: __thiscall ifstream::ifstream(class ifstream const &)
??0ifstream@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall ifstream::ifstream(int)
??0ifstream@@QAE@H@Z ; has WINAPI (@8)
; public: __thiscall ifstream::ifstream(int,char *,int)
??0ifstream@@QAE@HPADH@Z ; has WINAPI (@16)
; public: __thiscall ifstream::ifstream(char const *,int,int)
??0ifstream@@QAE@PBDHH@Z ; has WINAPI (@16)
; public: __thiscall ifstream::ifstream(void)
??0ifstream@@QAE@XZ ; has WINAPI (@4)
; protected: __thiscall ios::ios(class ios const &)
??0ios@@IAE@ABV0@@Z ; has WINAPI (@4)
; protected: __thiscall ios::ios(void)
??0ios@@IAE@XZ
; public: __thiscall ios::ios(class streambuf *)
??0ios@@QAE@PAVstreambuf@@@Z ; has WINAPI (@4)
; protected: __thiscall iostream::iostream(class iostream const &)
??0iostream@@IAE@ABV0@@Z ; has WINAPI (@8)
; protected: __thiscall iostream::iostream(void)
??0iostream@@IAE@XZ ; has WINAPI (@4)
; public: __thiscall iostream::iostream(class streambuf *)
??0iostream@@QAE@PAVstreambuf@@@Z ; has WINAPI (@8)
; protected: __thiscall istream::istream(class istream const &)
??0istream@@IAE@ABV0@@Z ; has WINAPI (@8)
; protected: __thiscall istream::istream(void)
??0istream@@IAE@XZ ; has WINAPI (@4)
; public: __thiscall istream::istream(class streambuf *)
??0istream@@QAE@PAVstreambuf@@@Z ; has WINAPI (@8)
; public: __thiscall istream_withassign::istream_withassign(class istream_withassign const &)
??0istream_withassign@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall istream_withassign::istream_withassign(class streambuf *)
??0istream_withassign@@QAE@PAVstreambuf@@@Z ; has WINAPI (@8)
; public: __thiscall istream_withassign::istream_withassign(void)
??0istream_withassign@@QAE@XZ ; has WINAPI (@4)
; public: __thiscall istrstream::istrstream(class istrstream const &)
??0istrstream@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall istrstream::istrstream(char *)
??0istrstream@@QAE@PAD@Z ; has WINAPI (@8)
; public: __thiscall istrstream::istrstream(char *,int)
??0istrstream@@QAE@PADH@Z ; has WINAPI (@12)
; public: __thiscall logic_error::logic_error(char const *const &)
??0logic_error@@QAE@ABQBD@Z ; has WINAPI (@4)
; public: __thiscall logic_error::logic_error(class logic_error const &)
??0logic_error@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall ofstream::ofstream(class ofstream const &)
??0ofstream@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall ofstream::ofstream(int)
??0ofstream@@QAE@H@Z ; has WINAPI (@8)
; public: __thiscall ofstream::ofstream(int,char *,int)
??0ofstream@@QAE@HPADH@Z ; has WINAPI (@16)
; public: __thiscall ofstream::ofstream(char const *,int,int)
??0ofstream@@QAE@PBDHH@Z ; has WINAPI (@16)
; public: __thiscall ofstream::ofstream(void)
??0ofstream@@QAE@XZ ; has WINAPI (@4)
; protected: __thiscall ostream::ostream(class ostream const &)
??0ostream@@IAE@ABV0@@Z ; has WINAPI (@8)
; protected: __thiscall ostream::ostream(void)
??0ostream@@IAE@XZ ; has WINAPI (@4)
; public: __thiscall ostream::ostream(class streambuf *)
??0ostream@@QAE@PAVstreambuf@@@Z ; has WINAPI (@8)
; public: __thiscall ostream_withassign::ostream_withassign(class ostream_withassign const &)
??0ostream_withassign@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall ostream_withassign::ostream_withassign(class streambuf *)
??0ostream_withassign@@QAE@PAVstreambuf@@@Z ; has WINAPI (@8)
; public: __thiscall ostream_withassign::ostream_withassign(void)
??0ostream_withassign@@QAE@XZ ; has WINAPI (@4)
; public: __thiscall ostrstream::ostrstream(class ostrstream const &)
??0ostrstream@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall ostrstream::ostrstream(char *,int,int)
??0ostrstream@@QAE@PADHH@Z ; has WINAPI (@16)
; public: __thiscall ostrstream::ostrstream(void)
??0ostrstream@@QAE@XZ ; has WINAPI (@4)
; public: __thiscall stdiobuf::stdiobuf(class stdiobuf const &)
??0stdiobuf@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall stdiobuf::stdiobuf(struct _iobuf *)
??0stdiobuf@@QAE@PAU_iobuf@@@Z ; has WINAPI (@4)
; public: __thiscall stdiostream::stdiostream(class stdiostream const &)
??0stdiostream@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall stdiostream::stdiostream(struct _iobuf *)
??0stdiostream@@QAE@PAU_iobuf@@@Z ; has WINAPI (@8)
; protected: __thiscall streambuf::streambuf(char *,int)
??0streambuf@@IAE@PADH@Z ; has WINAPI (@8)
; protected: __thiscall streambuf::streambuf(void)
??0streambuf@@IAE@XZ
; public: __thiscall streambuf::streambuf(class streambuf const &)
??0streambuf@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall strstream::strstream(class strstream const &)
??0strstream@@QAE@ABV0@@Z ; has WINAPI (@8)
; public: __thiscall strstream::strstream(char *,int,int)
??0strstream@@QAE@PADHH@Z ; has WINAPI (@16)
; public: __thiscall strstream::strstream(void)
??0strstream@@QAE@XZ ; has WINAPI (@4)
; public: __thiscall strstreambuf::strstreambuf(class strstreambuf const &)
??0strstreambuf@@QAE@ABV0@@Z ; has WINAPI (@4)
; public: __thiscall strstreambuf::strstreambuf(int)
??0strstreambuf@@QAE@H@Z ; has WINAPI (@4)
; public: __thiscall strstreambuf::strstreambuf(void *(__cdecl *)(long),void(__cdecl *)(void *))
??0strstreambuf@@QAE@P6APAXJ@ZP6AXPAX@Z@Z ; has WINAPI (@8)
; public: __thiscall strstreambuf::strstreambuf(char *,int,char *)
??0strstreambuf@@QAE@PADH0@Z ; has WINAPI (@12)
; public: __thiscall strstreambuf::strstreambuf(void)
??0strstreambuf@@QAE@XZ
; public: __thiscall Iostream_init::~Iostream_init(void)
??1Iostream_init@@QAE@XZ
; public: virtual __thiscall __non_rtti_object::~__non_rtti_object(void)
??1__non_rtti_object@@UAE@XZ
; public: virtual __thiscall bad_cast::~bad_cast(void)
??1bad_cast@@UAE@XZ
; public: virtual __thiscall bad_typeid::~bad_typeid(void)
??1bad_typeid@@UAE@XZ
; public: virtual __thiscall exception::~exception(void)
??1exception@@UAE@XZ
; public: virtual __thiscall filebuf::~filebuf(void)
??1filebuf@@UAE@XZ
; public: virtual __thiscall fstream::~fstream(void)
??1fstream@@UAE@XZ
; public: virtual __thiscall ifstream::~ifstream(void)
??1ifstream@@UAE@XZ
; public: virtual __thiscall ios::~ios(void)
??1ios@@UAE@XZ
; public: virtual __thiscall iostream::~iostream(void)
??1iostream@@UAE@XZ
; public: virtual __thiscall istream::~istream(void)
??1istream@@UAE@XZ
; public: virtual __thiscall istream_withassign::~istream_withassign(void)
??1istream_withassign@@UAE@XZ
; public: virtual __thiscall istrstream::~istrstream(void)
??1istrstream@@UAE@XZ
; public: virtual __thiscall logic_error::~logic_error(void)
??1logic_error@@UAE@XZ
; public: virtual __thiscall ofstream::~ofstream(void)
??1ofstream@@UAE@XZ
; public: virtual __thiscall ostream::~ostream(void)
??1ostream@@UAE@XZ
; public: virtual __thiscall ostream_withassign::~ostream_withassign(void)
??1ostream_withassign@@UAE@XZ
; public: virtual __thiscall ostrstream::~ostrstream(void)
??1ostrstream@@UAE@XZ
; public: virtual __thiscall stdiobuf::~stdiobuf(void)
??1stdiobuf@@UAE@XZ
; public: virtual __thiscall stdiostream::~stdiostream(void)
??1stdiostream@@UAE@XZ
; public: virtual __thiscall streambuf::~streambuf(void)
??1streambuf@@UAE@XZ
; public: virtual __thiscall strstream::~strstream(void)
??1strstream@@UAE@XZ
; public: virtual __thiscall strstreambuf::~strstreambuf(void)
??1strstreambuf@@UAE@XZ
; public: virtual __thiscall type_info::~type_info(void)
??1type_info@@UAE@XZ
; void *__cdecl operator new(unsigned int)
??2@YAPAXI@Z
; void __cdecl operator delete(void *)
??3@YAXPAX@Z
; public: class Iostream_init &__thiscall Iostream_init::operator =(class Iostream_init const &)
??4Iostream_init@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class __non_rtti_object &__thiscall __non_rtti_object::operator =(class __non_rtti_object const &)
??4__non_rtti_object@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class bad_cast &__thiscall bad_cast::operator =(class bad_cast const &)
??4bad_cast@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class bad_typeid &__thiscall bad_typeid::operator =(class bad_typeid const &)
??4bad_typeid@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class exception &__thiscall exception::operator =(class exception const &)
??4exception@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class filebuf &__thiscall filebuf::operator =(class filebuf const &)
??4filebuf@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class fstream &__thiscall fstream::operator =(class fstream &)
??4fstream@@QAEAAV0@AAV0@@Z ; has WINAPI (@4)
; public: class ifstream &__thiscall ifstream::operator =(class ifstream const &)
??4ifstream@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; protected: class ios &__thiscall ios::operator =(class ios const &)
??4ios@@IAEAAV0@ABV0@@Z ; has WINAPI (@4)
; protected: class iostream &__thiscall iostream::operator =(class iostream &)
??4iostream@@IAEAAV0@AAV0@@Z ; has WINAPI (@4)
; protected: class iostream &__thiscall iostream::operator =(class streambuf *)
??4iostream@@IAEAAV0@PAVstreambuf@@@Z ; has WINAPI (@4)
; protected: class istream &__thiscall istream::operator =(class istream const &)
??4istream@@IAEAAV0@ABV0@@Z ; has WINAPI (@4)
; protected: class istream &__thiscall istream::operator =(class streambuf *)
??4istream@@IAEAAV0@PAVstreambuf@@@Z ; has WINAPI (@4)
; public: class istream_withassign &__thiscall istream_withassign::operator =(class istream_withassign const &)
??4istream_withassign@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream_withassign::operator =(class istream const &)
??4istream_withassign@@QAEAAVistream@@ABV1@@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream_withassign::operator =(class streambuf *)
??4istream_withassign@@QAEAAVistream@@PAVstreambuf@@@Z ; has WINAPI (@4)
; public: class istrstream &__thiscall istrstream::operator =(class istrstream const &)
??4istrstream@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class logic_error &__thiscall logic_error::operator =(class logic_error const &)
??4logic_error@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class ofstream &__thiscall ofstream::operator =(class ofstream const &)
??4ofstream@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; protected: class ostream &__thiscall ostream::operator =(class ostream const &)
??4ostream@@IAEAAV0@ABV0@@Z ; has WINAPI (@4)
; protected: class ostream &__thiscall ostream::operator =(class streambuf *)
??4ostream@@IAEAAV0@PAVstreambuf@@@Z ; has WINAPI (@4)
; public: class ostream_withassign &__thiscall ostream_withassign::operator =(class ostream_withassign const &)
??4ostream_withassign@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream_withassign::operator =(class ostream const &)
??4ostream_withassign@@QAEAAVostream@@ABV1@@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream_withassign::operator =(class streambuf *)
??4ostream_withassign@@QAEAAVostream@@PAVstreambuf@@@Z ; has WINAPI (@4)
; public: class ostrstream &__thiscall ostrstream::operator =(class ostrstream const &)
??4ostrstream@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class stdiobuf &__thiscall stdiobuf::operator =(class stdiobuf const &)
??4stdiobuf@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class stdiostream &__thiscall stdiostream::operator =(class stdiostream &)
??4stdiostream@@QAEAAV0@AAV0@@Z ; has WINAPI (@4)
; public: class streambuf &__thiscall streambuf::operator =(class streambuf const &)
??4streambuf@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class strstream &__thiscall strstream::operator =(class strstream &)
??4strstream@@QAEAAV0@AAV0@@Z ; has WINAPI (@4)
; public: class strstreambuf &__thiscall strstreambuf::operator =(class strstreambuf const &)
??4strstreambuf@@QAEAAV0@ABV0@@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(signed char &)
??5istream@@QAEAAV0@AAC@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(char &)
??5istream@@QAEAAV0@AAD@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(unsigned char &)
??5istream@@QAEAAV0@AAE@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(short &)
??5istream@@QAEAAV0@AAF@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(unsigned short &)
??5istream@@QAEAAV0@AAG@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(int &)
??5istream@@QAEAAV0@AAH@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(unsigned int &)
??5istream@@QAEAAV0@AAI@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(long &)
??5istream@@QAEAAV0@AAJ@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(unsigned long &)
??5istream@@QAEAAV0@AAK@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(float &)
??5istream@@QAEAAV0@AAM@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(double &)
??5istream@@QAEAAV0@AAN@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(long double &)
??5istream@@QAEAAV0@AAO@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(class istream &(__cdecl *)(class istream &))
??5istream@@QAEAAV0@P6AAAV0@AAV0@@Z@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(class ios &(__cdecl *)(class ios &))
??5istream@@QAEAAV0@P6AAAVios@@AAV1@@Z@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(signed char *)
??5istream@@QAEAAV0@PAC@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(char *)
??5istream@@QAEAAV0@PAD@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(unsigned char *)
??5istream@@QAEAAV0@PAE@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::operator >>(class streambuf *)
??5istream@@QAEAAV0@PAVstreambuf@@@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(signed char)
??6ostream@@QAEAAV0@C@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(char)
??6ostream@@QAEAAV0@D@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(unsigned char)
??6ostream@@QAEAAV0@E@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(short)
??6ostream@@QAEAAV0@F@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(unsigned short)
??6ostream@@QAEAAV0@G@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(int)
??6ostream@@QAEAAV0@H@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(unsigned int)
??6ostream@@QAEAAV0@I@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(long)
??6ostream@@QAEAAV0@J@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(unsigned long)
??6ostream@@QAEAAV0@K@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(float)
??6ostream@@QAEAAV0@M@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(double)
??6ostream@@QAEAAV0@N@Z ; has WINAPI (@8)
; public: class ostream &__thiscall ostream::operator <<(long double)
??6ostream@@QAEAAV0@O@Z ; has WINAPI (@8)
; public: class ostream &__thiscall ostream::operator <<(class ostream &(__cdecl *)(class ostream &))
??6ostream@@QAEAAV0@P6AAAV0@AAV0@@Z@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(class ios &(__cdecl *)(class ios &))
??6ostream@@QAEAAV0@P6AAAVios@@AAV1@@Z@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(class streambuf *)
??6ostream@@QAEAAV0@PAVstreambuf@@@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(signed char const *)
??6ostream@@QAEAAV0@PBC@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(char const *)
??6ostream@@QAEAAV0@PBD@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(unsigned char const *)
??6ostream@@QAEAAV0@PBE@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::operator <<(void const *)
??6ostream@@QAEAAV0@PBX@Z ; has WINAPI (@4)
; public: int __thiscall ios::operator !(void)const 
??7ios@@QBEHXZ
; public: int __thiscall type_info::operator ==(class type_info const &)const 
??8type_info@@QBEHABV0@@Z ; has WINAPI (@4)
; public: int __thiscall type_info::operator !=(class type_info const &)const 
??9type_info@@QBEHABV0@@Z ; has WINAPI (@4)
; public: void __thiscall ios::operator void *(...)const throw()
??Bios@@QBEPAXXZ
; const __non_rtti_object::$vftable
??_7__non_rtti_object@@6B@ DATA
; const bad_cast::$vftable
??_7bad_cast@@6B@ DATA
; const bad_typeid::$vftable
??_7bad_typeid@@6B@ DATA
; const exception::$vftable
??_7exception@@6B@ DATA
; const filebuf::$vftable
??_7filebuf@@6B@ DATA
; const fstream::$vftable
??_7fstream@@6B@ DATA
; const ifstream::$vftable
??_7ifstream@@6B@ DATA
; const ios::$vftable
??_7ios@@6B@ DATA
; const iostream::$vftable
??_7iostream@@6B@ DATA
; const istream::$vftable
??_7istream@@6B@ DATA
; const istream_withassign::$vftable
??_7istream_withassign@@6B@ DATA
; const istrstream::$vftable
??_7istrstream@@6B@ DATA
; const logic_error::$vftable
??_7logic_error@@6B@ DATA
; const ofstream::$vftable
??_7ofstream@@6B@ DATA
; const ostream::$vftable
??_7ostream@@6B@ DATA
; const ostream_withassign::$vftable
??_7ostream_withassign@@6B@ DATA
; const ostrstream::$vftable
??_7ostrstream@@6B@ DATA
; const stdiobuf::$vftable
??_7stdiobuf@@6B@ DATA
; const stdiostream::$vftable
??_7stdiostream@@6B@ DATA
; const streambuf::$vftable
??_7streambuf@@6B@ DATA
; const strstream::$vftable
??_7strstream@@6B@ DATA
; const strstreambuf::$vftable
??_7strstreambuf@@6B@ DATA
; 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 __thiscall fstream::vbase_destructor(void)
??_Dfstream@@QAEXXZ
; public: void __thiscall ifstream::vbase_destructor(void)
??_Difstream@@QAEXXZ
; public: void __thiscall iostream::vbase_destructor(void)
??_Diostream@@QAEXXZ
; public: void __thiscall istream::vbase_destructor(void)
??_Distream@@QAEXXZ
; public: void __thiscall istream_withassign::vbase_destructor(void)
??_Distream_withassign@@QAEXXZ
; public: void __thiscall istrstream::vbase_destructor(void)
??_Distrstream@@QAEXXZ
; public: void __thiscall ofstream::vbase_destructor(void)
??_Dofstream@@QAEXXZ
; public: void __thiscall ostream::vbase_destructor(void)
??_Dostream@@QAEXXZ
; public: void __thiscall ostream_withassign::vbase_destructor(void)
??_Dostream_withassign@@QAEXXZ
; public: void __thiscall ostrstream::vbase_destructor(void)
??_Dostrstream@@QAEXXZ
; public: void __thiscall stdiostream::vbase_destructor(void)
??_Dstdiostream@@QAEXXZ
; public: void __thiscall strstream::vbase_destructor(void)
??_Dstrstream@@QAEXXZ
; public: void *__thiscall Iostream_init::__vecDelDtor(unsigned int)
??_EIostream_init@@QAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall __non_rtti_object::__vecDelDtor(unsigned int)
??_E__non_rtti_object@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall bad_cast::__vecDelDtor(unsigned int)
??_Ebad_cast@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall bad_typeid::__vecDelDtor(unsigned int)
??_Ebad_typeid@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall exception::__vecDelDtor(unsigned int)
??_Eexception@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall filebuf::__vecDelDtor(unsigned int)
??_Efilebuf@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall fstream::__vecDelDtor(unsigned int)
??_Efstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ifstream::__vecDelDtor(unsigned int)
??_Eifstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ios::__vecDelDtor(unsigned int)
??_Eios@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall iostream::__vecDelDtor(unsigned int)
??_Eiostream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall istream::__vecDelDtor(unsigned int)
??_Eistream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall istream_withassign::__vecDelDtor(unsigned int)
??_Eistream_withassign@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall istrstream::__vecDelDtor(unsigned int)
??_Eistrstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall logic_error::__vecDelDtor(unsigned int)
??_Elogic_error@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ofstream::__vecDelDtor(unsigned int)
??_Eofstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ostream::__vecDelDtor(unsigned int)
??_Eostream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ostream_withassign::__vecDelDtor(unsigned int)
??_Eostream_withassign@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ostrstream::__vecDelDtor(unsigned int)
??_Eostrstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall stdiobuf::__vecDelDtor(unsigned int)
??_Estdiobuf@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall stdiostream::__vecDelDtor(unsigned int)
??_Estdiostream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall streambuf::__vecDelDtor(unsigned int)
??_Estreambuf@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall strstream::__vecDelDtor(unsigned int)
??_Estrstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall strstreambuf::__vecDelDtor(unsigned int)
??_Estrstreambuf@@UAEPAXI@Z ; has WINAPI (@4)
; public: void *__thiscall Iostream_init::__delDtor(unsigned int)
??_GIostream_init@@QAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall __non_rtti_object::__delDtor(unsigned int)
??_G__non_rtti_object@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall bad_cast::__delDtor(unsigned int)
??_Gbad_cast@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall bad_typeid::__delDtor(unsigned int)
??_Gbad_typeid@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall exception::__delDtor(unsigned int)
??_Gexception@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall filebuf::__delDtor(unsigned int)
??_Gfilebuf@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall fstream::__delDtor(unsigned int)
??_Gfstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ifstream::__delDtor(unsigned int)
??_Gifstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ios::__delDtor(unsigned int)
??_Gios@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall iostream::__delDtor(unsigned int)
??_Giostream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall istream::__delDtor(unsigned int)
??_Gistream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall istream_withassign::__delDtor(unsigned int)
??_Gistream_withassign@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall istrstream::__delDtor(unsigned int)
??_Gistrstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall logic_error::__delDtor(unsigned int)
??_Glogic_error@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ofstream::__delDtor(unsigned int)
??_Gofstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ostream::__delDtor(unsigned int)
??_Gostream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ostream_withassign::__delDtor(unsigned int)
??_Gostream_withassign@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall ostrstream::__delDtor(unsigned int)
??_Gostrstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall stdiobuf::__delDtor(unsigned int)
??_Gstdiobuf@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall stdiostream::__delDtor(unsigned int)
??_Gstdiostream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall streambuf::__delDtor(unsigned int)
??_Gstreambuf@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall strstream::__delDtor(unsigned int)
??_Gstrstream@@UAEPAXI@Z ; has WINAPI (@4)
; public: virtual void *__thiscall strstreambuf::__delDtor(unsigned int)
??_Gstrstreambuf@@UAEPAXI@Z ; has WINAPI (@4)
; int(__cdecl *)(unsigned int)__cdecl _query_new_handler(void)
?_query_new_handler@@YAP6AHI@ZXZ
; int __cdecl _query_new_mode(void)
?_query_new_mode@@YAHXZ
; int(__cdecl *)(unsigned int)__cdecl _set_new_handler(int(__cdecl *)(unsigned int))
?_set_new_handler@@YAP6AHI@ZP6AHI@Z@Z
; int __cdecl _set_new_mode(int)
?_set_new_mode@@YAHH@Z
; void(__cdecl *)(unsigned int,struct _EXCEPTION_POINTERS *)__cdecl _set_se_translator(void(__cdecl *)(unsigned int,struct _EXCEPTION_POINTERS *))
?_set_se_translator@@YAP6AXIPAU_EXCEPTION_POINTERS@@@ZP6AXI0@Z@Z
; public: static long const ios::adjustfield
?adjustfield@ios@@2JB DATA
; protected: int __thiscall streambuf::allocate(void)
?allocate@streambuf@@IAEHXZ
; public: class filebuf *__thiscall filebuf::attach(int)
?attach@filebuf@@QAEPAV1@H@Z ; has WINAPI (@4)
; public: void __thiscall fstream::attach(int)
?attach@fstream@@QAEXH@Z ; has WINAPI (@4)
; public: void __thiscall ifstream::attach(int)
?attach@ifstream@@QAEXH@Z ; has WINAPI (@4)
; public: void __thiscall ofstream::attach(int)
?attach@ofstream@@QAEXH@Z ; has WINAPI (@4)
; public: int __thiscall ios::bad(void)const 
?bad@ios@@QBEHXZ
; protected: char *__thiscall streambuf::base(void)const 
?base@streambuf@@IBEPADXZ
; public: static long const ios::basefield
?basefield@ios@@2JB DATA
; public: int __thiscall type_info::before(class type_info const &)const 
?before@type_info@@QBEHABV1@@Z ; has WINAPI (@4)
; public: static int const filebuf::binary
?binary@filebuf@@2HB DATA
; public: static long __cdecl ios::bitalloc(void)
?bitalloc@ios@@SAJXZ
; protected: int __thiscall streambuf::blen(void)const 
?blen@streambuf@@IBEHXZ
; class ostream_withassign cerr
?cerr@@3Vostream_withassign@@A DATA
; class istream_withassign cin
?cin@@3Vistream_withassign@@A DATA
; public: void __thiscall ios::clear(int)
?clear@ios@@QAEXH@Z ; has WINAPI (@4)
; class ostream_withassign clog
?clog@@3Vostream_withassign@@A DATA
; public: class filebuf *__thiscall filebuf::close(void)
?close@filebuf@@QAEPAV1@XZ
; public: void __thiscall fstream::close(void)
?close@fstream@@QAEXXZ
; public: void __thiscall ifstream::close(void)
?close@ifstream@@QAEXXZ
; public: void __thiscall ofstream::close(void)
?close@ofstream@@QAEXXZ
; public: void __cdecl ios::clrlock(void)
?clrlock@ios@@QAAXXZ
; public: void __thiscall streambuf::clrlock(void)
?clrlock@streambuf@@QAEXXZ
; class ostream_withassign cout
?cout@@3Vostream_withassign@@A DATA
; public: void __thiscall streambuf::dbp(void)
?dbp@streambuf@@QAEXXZ
; class ios &__cdecl dec(class ios &)
?dec@@YAAAVios@@AAV1@@Z
; public: void __thiscall ios::delbuf(int)
?delbuf@ios@@QAEXH@Z ; has WINAPI (@4)
; public: int __thiscall ios::delbuf(void)const 
?delbuf@ios@@QBEHXZ
; protected: virtual int __thiscall streambuf::doallocate(void)
?doallocate@streambuf@@MAEHXZ
; protected: virtual int __thiscall strstreambuf::doallocate(void)
?doallocate@strstreambuf@@MAEHXZ
; public: void __thiscall istream::eatwhite(void)
?eatwhite@istream@@QAEXXZ
; protected: char *__thiscall streambuf::eback(void)const 
?eback@streambuf@@IBEPADXZ
; protected: char *__thiscall streambuf::ebuf(void)const 
?ebuf@streambuf@@IBEPADXZ
; protected: char *__thiscall streambuf::egptr(void)const 
?egptr@streambuf@@IBEPADXZ
; class ostream &__cdecl endl(class ostream &)
?endl@@YAAAVostream@@AAV1@@Z
; class ostream &__cdecl ends(class ostream &)
?ends@@YAAAVostream@@AAV1@@Z
; public: int __thiscall ios::eof(void)const 
?eof@ios@@QBEHXZ
; protected: char *__thiscall streambuf::epptr(void)const 
?epptr@streambuf@@IBEPADXZ
; private: static int ios::fLockcInit
?fLockcInit@ios@@0HA DATA
; public: int __thiscall ios::fail(void)const 
?fail@ios@@QBEHXZ
; public: int __thiscall filebuf::fd(void)const 
?fd@filebuf@@QBEHXZ
; public: int __thiscall fstream::fd(void)const 
?fd@fstream@@QBEHXZ
; public: int __thiscall ifstream::fd(void)const 
?fd@ifstream@@QBEHXZ
; public: int __thiscall ofstream::fd(void)const 
?fd@ofstream@@QBEHXZ
; public: char __thiscall ios::fill(char)
?fill@ios@@QAEDD@Z ; has WINAPI (@4)
; public: char __thiscall ios::fill(void)const 
?fill@ios@@QBEDXZ
; public: long __thiscall ios::flags(long)
?flags@ios@@QAEJJ@Z ; has WINAPI (@4)
; public: long __thiscall ios::flags(void)const 
?flags@ios@@QBEJXZ
; public: static long const ios::floatfield
?floatfield@ios@@2JB DATA
; class ostream &__cdecl flush(class ostream &)
?flush@@YAAAVostream@@AAV1@@Z
; public: class ostream &__thiscall ostream::flush(void)
?flush@ostream@@QAEAAV1@XZ
; public: void __thiscall strstreambuf::freeze(int)
?freeze@strstreambuf@@QAEXH@Z ; has WINAPI (@4)
; protected: void __thiscall streambuf::gbump(int)
?gbump@streambuf@@IAEXH@Z ; has WINAPI (@4)
; public: int __thiscall istream::gcount(void)const 
?gcount@istream@@QBEHXZ
; protected: class istream &__thiscall istream::get(char *,int,int)
?get@istream@@IAEAAV1@PADHH@Z ; has WINAPI (@12)
; public: class istream &__thiscall istream::get(signed char &)
?get@istream@@QAEAAV1@AAC@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::get(char &)
?get@istream@@QAEAAV1@AAD@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::get(unsigned char &)
?get@istream@@QAEAAV1@AAE@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::get(class streambuf &,char)
?get@istream@@QAEAAV1@AAVstreambuf@@D@Z ; has WINAPI (@8)
; public: class istream &__thiscall istream::get(signed char *,int,char)
?get@istream@@QAEAAV1@PACHD@Z ; has WINAPI (@12)
; public: class istream &__thiscall istream::get(char *,int,char)
?get@istream@@QAEAAV1@PADHD@Z ; has WINAPI (@12)
; public: class istream &__thiscall istream::get(unsigned char *,int,char)
?get@istream@@QAEAAV1@PAEHD@Z ; has WINAPI (@12)
; public: int __thiscall istream::get(void)
?get@istream@@QAEHXZ
; private: int __thiscall istream::getdouble(char *,int)
?getdouble@istream@@AAEHPADH@Z ; has WINAPI (@8)
; private: int __thiscall istream::getint(char *)
?getint@istream@@AAEHPAD@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::getline(signed char *,int,char)
?getline@istream@@QAEAAV1@PACHD@Z ; has WINAPI (@12)
; public: class istream &__thiscall istream::getline(char *,int,char)
?getline@istream@@QAEAAV1@PADHD@Z ; has WINAPI (@12)
; public: class istream &__thiscall istream::getline(unsigned char *,int,char)
?getline@istream@@QAEAAV1@PAEHD@Z ; has WINAPI (@12)
; public: int __thiscall ios::good(void)const 
?good@ios@@QBEHXZ
; protected: char *__thiscall streambuf::gptr(void)const 
?gptr@streambuf@@IBEPADXZ
; class ios &__cdecl hex(class ios &)
?hex@@YAAAVios@@AAV1@@Z
; public: class istream &__thiscall istream::ignore(int,int)
?ignore@istream@@QAEAAV1@HH@Z ; has WINAPI (@8)
; public: int __thiscall streambuf::in_avail(void)const 
?in_avail@streambuf@@QBEHXZ
; protected: void __thiscall ios::init(class streambuf *)
?init@ios@@IAEXPAVstreambuf@@@Z ; has WINAPI (@4)
; public: int __thiscall istream::ipfx(int)
?ipfx@istream@@QAEHH@Z ; has WINAPI (@4)
; public: int __thiscall filebuf::is_open(void)const 
?is_open@filebuf@@QBEHXZ
; public: int __thiscall fstream::is_open(void)const 
?is_open@fstream@@QBEHXZ
; public: int __thiscall ifstream::is_open(void)const 
?is_open@ifstream@@QBEHXZ
; public: int __thiscall ofstream::is_open(void)const 
?is_open@ofstream@@QBEHXZ
; public: void __thiscall istream::isfx(void)
?isfx@istream@@QAEXXZ
; public: long &__thiscall ios::iword(int)const 
?iword@ios@@QBEAAJH@Z ; has WINAPI (@4)
; public: void __cdecl ios::lock(void)
?lock@ios@@QAAXXZ
; public: void __thiscall streambuf::lock(void)
?lock@streambuf@@QAEXXZ
; public: void __cdecl ios::lockbuf(void)
?lockbuf@ios@@QAAXXZ
; protected: static void __cdecl ios::lockc(void)
?lockc@ios@@KAXXZ
; protected: struct _CRT_CRITICAL_SECTION *__thiscall ios::lockptr(void)
?lockptr@ios@@IAEPAU_CRT_CRITICAL_SECTION@@XZ
; protected: struct _CRT_CRITICAL_SECTION *__thiscall streambuf::lockptr(void)
?lockptr@streambuf@@IAEPAU_CRT_CRITICAL_SECTION@@XZ
; public: char const *__thiscall type_info::name(void)const 
?name@type_info@@QBEPBDXZ
; class ios &__cdecl oct(class ios &)
?oct@@YAAAVios@@AAV1@@Z
; public: class filebuf *__thiscall filebuf::open(char const *,int,int)
?open@filebuf@@QAEPAV1@PBDHH@Z ; has WINAPI (@12)
; public: void __thiscall fstream::open(char const *,int,int)
?open@fstream@@QAEXPBDHH@Z ; has WINAPI (@12)
; public: void __thiscall ifstream::open(char const *,int,int)
?open@ifstream@@QAEXPBDHH@Z ; has WINAPI (@12)
; public: void __thiscall ofstream::open(char const *,int,int)
?open@ofstream@@QAEXPBDHH@Z ; has WINAPI (@12)
; public: static int const filebuf::openprot
?openprot@filebuf@@2HB DATA
; public: int __thiscall ostream::opfx(void)
?opfx@ostream@@QAEHXZ
; public: void __thiscall ostream::osfx(void)
?osfx@ostream@@QAEXXZ
; public: int __thiscall streambuf::out_waiting(void)const 
?out_waiting@streambuf@@QBEHXZ
; public: virtual int __thiscall filebuf::overflow(int)
?overflow@filebuf@@UAEHH@Z ; has WINAPI (@4)
; public: virtual int __thiscall stdiobuf::overflow(int)
?overflow@stdiobuf@@UAEHH@Z ; has WINAPI (@4)
; public: virtual int __thiscall strstreambuf::overflow(int)
?overflow@strstreambuf@@UAEHH@Z ; has WINAPI (@4)
; public: virtual int __thiscall stdiobuf::pbackfail(int)
?pbackfail@stdiobuf@@UAEHH@Z ; has WINAPI (@4)
; public: virtual int __thiscall streambuf::pbackfail(int)
?pbackfail@streambuf@@UAEHH@Z ; has WINAPI (@4)
; protected: char *__thiscall streambuf::pbase(void)const 
?pbase@streambuf@@IBEPADXZ
; protected: void __thiscall streambuf::pbump(int)
?pbump@streambuf@@IAEXH@Z ; has WINAPI (@4)
; public: int __thiscall ostrstream::pcount(void)const 
?pcount@ostrstream@@QBEHXZ
; public: int __thiscall strstream::pcount(void)const 
?pcount@strstream@@QBEHXZ
; public: int __thiscall istream::peek(void)
?peek@istream@@QAEHXZ
; protected: char *__thiscall streambuf::pptr(void)const 
?pptr@streambuf@@IBEPADXZ
; public: int __thiscall ios::precision(int)
?precision@ios@@QAEHH@Z ; has WINAPI (@4)
; public: int __thiscall ios::precision(void)const 
?precision@ios@@QBEHXZ
; public: class ostream &__thiscall ostream::put(signed char)
?put@ostream@@QAEAAV1@C@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::put(char)
?put@ostream@@QAEAAV1@D@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::put(unsigned char)
?put@ostream@@QAEAAV1@E@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::putback(char)
?putback@istream@@QAEAAV1@D@Z ; has WINAPI (@4)
; public: void *&__thiscall ios::pword(int)const 
?pword@ios@@QBEAAPAXH@Z ; has WINAPI (@4)
; public: char const *__thiscall type_info::raw_name(void)const 
?raw_name@type_info@@QBEPBDXZ
; public: class filebuf *__thiscall fstream::rdbuf(void)const 
?rdbuf@fstream@@QBEPAVfilebuf@@XZ
; public: class filebuf *__thiscall ifstream::rdbuf(void)const 
?rdbuf@ifstream@@QBEPAVfilebuf@@XZ
; public: class streambuf *__thiscall ios::rdbuf(void)const 
?rdbuf@ios@@QBEPAVstreambuf@@XZ
; public: class strstreambuf *__thiscall istrstream::rdbuf(void)const 
?rdbuf@istrstream@@QBEPAVstrstreambuf@@XZ
; public: class filebuf *__thiscall ofstream::rdbuf(void)const 
?rdbuf@ofstream@@QBEPAVfilebuf@@XZ
; public: class strstreambuf *__thiscall ostrstream::rdbuf(void)const 
?rdbuf@ostrstream@@QBEPAVstrstreambuf@@XZ
; public: class stdiobuf *__thiscall stdiostream::rdbuf(void)const 
?rdbuf@stdiostream@@QBEPAVstdiobuf@@XZ
; public: class strstreambuf *__thiscall strstream::rdbuf(void)const 
?rdbuf@strstream@@QBEPAVstrstreambuf@@XZ
; public: int __thiscall ios::rdstate(void)const 
?rdstate@ios@@QBEHXZ
; public: class istream &__thiscall istream::read(signed char *,int)
?read@istream@@QAEAAV1@PACH@Z ; has WINAPI (@8)
; public: class istream &__thiscall istream::read(char *,int)
?read@istream@@QAEAAV1@PADH@Z ; has WINAPI (@8)
; public: class istream &__thiscall istream::read(unsigned char *,int)
?read@istream@@QAEAAV1@PAEH@Z ; has WINAPI (@8)
; public: int __thiscall streambuf::sbumpc(void)
?sbumpc@streambuf@@QAEHXZ
; public: class istream &__thiscall istream::seekg(long)
?seekg@istream@@QAEAAV1@J@Z ; has WINAPI (@4)
; public: class istream &__thiscall istream::seekg(long,enum ios::seek_dir)
?seekg@istream@@QAEAAV1@JW4seek_dir@ios@@@Z ; has WINAPI (@8)
; public: virtual long __thiscall filebuf::seekoff(long,enum ios::seek_dir,int)
?seekoff@filebuf@@UAEJJW4seek_dir@ios@@H@Z ; has WINAPI (@12)
; public: virtual long __thiscall stdiobuf::seekoff(long,enum ios::seek_dir,int)
?seekoff@stdiobuf@@UAEJJW4seek_dir@ios@@H@Z ; has WINAPI (@12)
; public: virtual long __thiscall streambuf::seekoff(long,enum ios::seek_dir,int)
?seekoff@streambuf@@UAEJJW4seek_dir@ios@@H@Z ; has WINAPI (@12)
; public: virtual long __thiscall strstreambuf::seekoff(long,enum ios::seek_dir,int)
?seekoff@strstreambuf@@UAEJJW4seek_dir@ios@@H@Z ; has WINAPI (@12)
; public: class ostream &__thiscall ostream::seekp(long)
?seekp@ostream@@QAEAAV1@J@Z ; has WINAPI (@4)
; public: class ostream &__thiscall ostream::seekp(long,enum ios::seek_dir)
?seekp@ostream@@QAEAAV1@JW4seek_dir@ios@@@Z ; has WINAPI (@8)
; public: virtual long __thiscall streambuf::seekpos(long,int)
?seekpos@streambuf@@UAEJJH@Z ; has WINAPI (@8)
; void(__cdecl *)(void)__cdecl set_new_handler(void(__cdecl *)(void))
?set_new_handler@@YAP6AXXZP6AXXZ@Z
; void(__cdecl *)(void)__cdecl set_terminate(void(__cdecl *)(void))
?set_terminate@@YAP6AXXZP6AXXZ@Z
; void(__cdecl *)(void)__cdecl set_unexpected(void(__cdecl *)(void))
?set_unexpected@@YAP6AXXZP6AXXZ@Z
; protected: void __thiscall streambuf::setb(char *,char *,int)
?setb@streambuf@@IAEXPAD0H@Z ; has WINAPI (@12)
; public: virtual class streambuf *__thiscall filebuf::setbuf(char *,int)
?setbuf@filebuf@@UAEPAVstreambuf@@PADH@Z ; has WINAPI (@8)
; public: class streambuf *__thiscall fstream::setbuf(char *,int)
?setbuf@fstream@@QAEPAVstreambuf@@PADH@Z ; has WINAPI (@8)
; public: class streambuf *__thiscall ifstream::setbuf(char *,int)
?setbuf@ifstream@@QAEPAVstreambuf@@PADH@Z ; has WINAPI (@8)
; public: class streambuf *__thiscall ofstream::setbuf(char *,int)
?setbuf@ofstream@@QAEPAVstreambuf@@PADH@Z ; has WINAPI (@8)
; public: virtual class streambuf *__thiscall streambuf::setbuf(char *,int)
?setbuf@streambuf@@UAEPAV1@PADH@Z ; has WINAPI (@8)
; public: virtual class streambuf *__thiscall strstreambuf::setbuf(char *,int)
?setbuf@strstreambuf@@UAEPAVstreambuf@@PADH@Z ; has WINAPI (@8)
; public: long __thiscall ios::setf(long)
?setf@ios@@QAEJJ@Z ; has WINAPI (@4)
; public: long __thiscall ios::setf(long,long)
?setf@ios@@QAEJJJ@Z ; has WINAPI (@8)
; protected: void __thiscall streambuf::setg(char *,char *,char *)
?setg@streambuf@@IAEXPAD00@Z ; has WINAPI (@12)
; public: void __cdecl ios::setlock(void)
?setlock@ios@@QAAXXZ
; public: void __thiscall streambuf::setlock(void)
?setlock@streambuf@@QAEXXZ
; public: int __thiscall filebuf::setmode(int)
?setmode@filebuf@@QAEHH@Z ; has WINAPI (@4)
; public: int __thiscall fstream::setmode(int)
?setmode@fstream@@QAEHH@Z ; has WINAPI (@4)
; public: int __thiscall ifstream::setmode(int)
?setmode@ifstream@@QAEHH@Z ; has WINAPI (@4)
; public: int __thiscall ofstream::setmode(int)
?setmode@ofstream@@QAEHH@Z ; has WINAPI (@4)
; protected: void __thiscall streambuf::setp(char *,char *)
?setp@streambuf@@IAEXPAD0@Z ; has WINAPI (@8)
; public: int __thiscall stdiobuf::setrwbuf(int,int)
?setrwbuf@stdiobuf@@QAEHHH@Z ; has WINAPI (@8)
; public: int __thiscall streambuf::sgetc(void)
?sgetc@streambuf@@QAEHXZ
; public: int __thiscall streambuf::sgetn(char *,int)
?sgetn@streambuf@@QAEHPADH@Z ; has WINAPI (@8)
; public: static int const filebuf::sh_none
?sh_none@filebuf@@2HB DATA
; public: static int const filebuf::sh_read
?sh_read@filebuf@@2HB DATA
; public: static int const filebuf::sh_write
?sh_write@filebuf@@2HB DATA
; public: int __thiscall streambuf::snextc(void)
?snextc@streambuf@@QAEHXZ
; public: int __thiscall streambuf::sputbackc(char)
?sputbackc@streambuf@@QAEHD@Z ; has WINAPI (@4)
; public: int __thiscall streambuf::sputc(int)
?sputc@streambuf@@QAEHH@Z ; has WINAPI (@4)
; public: int __thiscall streambuf::sputn(char const *,int)
?sputn@streambuf@@QAEHPBDH@Z ; has WINAPI (@8)
; public: struct _iobuf *__thiscall stdiobuf::stdiofile(void)
?stdiofile@stdiobuf@@QAEPAU_iobuf@@XZ
; public: void __thiscall streambuf::stossc(void)
?stossc@streambuf@@QAEXXZ
; public: char *__thiscall istrstream::str(void)
?str@istrstream@@QAEPADXZ
; public: char *__thiscall ostrstream::str(void)
?str@ostrstream@@QAEPADXZ
; public: char *__thiscall strstream::str(void)
?str@strstream@@QAEPADXZ
; public: char *__thiscall strstreambuf::str(void)
?str@strstreambuf@@QAEPADXZ
; private: static int ios::sunk_with_stdio
?sunk_with_stdio@ios@@0HA DATA
; public: virtual int __thiscall filebuf::sync(void)
?sync@filebuf@@UAEHXZ
; public: int __thiscall istream::sync(void)
?sync@istream@@QAEHXZ
; public: virtual int __thiscall stdiobuf::sync(void)
?sync@stdiobuf@@UAEHXZ
; public: virtual int __thiscall streambuf::sync(void)
?sync@streambuf@@UAEHXZ
; public: virtual int __thiscall strstreambuf::sync(void)
?sync@strstreambuf@@UAEHXZ
; public: static void __cdecl ios::sync_with_stdio(void)
?sync_with_stdio@ios@@SAXXZ
; public: long __thiscall istream::tellg(void)
?tellg@istream@@QAEJXZ
; public: long __thiscall ostream::tellp(void)
?tellp@ostream@@QAEJXZ
; void __cdecl terminate(void)
?terminate@@YAXXZ
; public: static int const filebuf::text
?text@filebuf@@2HB DATA
; public: class ostream *__thiscall ios::tie(class ostream *)
?tie@ios@@QAEPAVostream@@PAV2@@Z ; has WINAPI (@4)
; public: class ostream *__thiscall ios::tie(void)const 
?tie@ios@@QBEPAVostream@@XZ
; protected: void __thiscall streambuf::unbuffered(int)
?unbuffered@streambuf@@IAEXH@Z ; has WINAPI (@4)
; protected: int __thiscall streambuf::unbuffered(void)const 
?unbuffered@streambuf@@IBEHXZ
; public: virtual int __thiscall filebuf::underflow(void)
?underflow@filebuf@@UAEHXZ
; public: virtual int __thiscall stdiobuf::underflow(void)
?underflow@stdiobuf@@UAEHXZ
; public: virtual int __thiscall strstreambuf::underflow(void)
?underflow@strstreambuf@@UAEHXZ
; void __cdecl unexpected(void)
?unexpected@@YAXXZ
; public: void __cdecl ios::unlock(void)
?unlock@ios@@QAAXXZ
; public: void __thiscall streambuf::unlock(void)
?unlock@streambuf@@QAEXXZ
; public: void __cdecl ios::unlockbuf(void)
?unlockbuf@ios@@QAAXXZ
; protected: static void __cdecl ios::unlockc(void)
?unlockc@ios@@KAXXZ
; public: long __thiscall ios::unsetf(long)
?unsetf@ios@@QAEJJ@Z ; has WINAPI (@4)
; public: virtual char const *__thiscall exception::what(void)const 
?what@exception@@UBEPBDXZ
; public: int __thiscall ios::width(int)
?width@ios@@QAEHH@Z ; has WINAPI (@4)
; public: int __thiscall ios::width(void)const 
?width@ios@@QBEHXZ
; public: class ostream &__thiscall ostream::write(signed char const *,int)
?write@ostream@@QAEAAV1@PBCH@Z ; has WINAPI (@8)
; public: class ostream &__thiscall ostream::write(char const *,int)
?write@ostream@@QAEAAV1@PBDH@Z ; has WINAPI (@8)
; public: class ostream &__thiscall ostream::write(unsigned char const *,int)
?write@ostream@@QAEAAV1@PBEH@Z ; has WINAPI (@8)
; private: class ostream &__thiscall ostream::writepad(char const *,char const *)
?writepad@ostream@@AAEAAV1@PBD0@Z ; has WINAPI (@8)
; class istream &__cdecl ws(class istream &)
?ws@@YAAAVistream@@AAV1@@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 __thiscall streambuf::xsgetn(char *,int)
?xsgetn@streambuf@@UAEHPADH@Z ; has WINAPI (@8)
; public: virtual int __thiscall streambuf::xsputn(char const *,int)
?xsputn@streambuf@@UAEHPBDH@Z ; has WINAPI (@8)
$I10_OUTPUT
_CIacos
_CIasin
_CIatan
_CIatan2
_CIcos
_CIcosh
_CIexp
_CIfmod
_CIlog
_CIlog10
_CIpow
_CIsin
_CIsinh
_CIsqrt
_CItan
_CItanh
_CxxThrowException@8
_EH_prolog
_HUGE DATA
_XcptFilter
__CxxFrameHandler
__CxxLongjmpUnwind@4
__RTCastToVoid
__RTDynamicCast
__RTtypeid
__STRINGTOLD
__argc DATA
__argv DATA
__dllonexit
__doserrno
__fpecode
__getmainargs
__initenv DATA
__isascii
__iscsym
__iscsymf
__lconv_init
__mb_cur_max DATA
__p___argc
__p___argv
__p___initenv
__p___mb_cur_max
__p___wargv
__p___winitenv
__p__acmdln
__p__amblksiz
__p__commode
__p__daylight
__p__dstbias
__p__environ
__p__fmode
__p__iob
__p__mbctype
__p__osver
__p__pctype
__p__pgmptr
__p__pwctype
__p__timezone
__p__tzname
__p__wcmdln
__p__wenviron
__p__winmajor
__p__winminor
__p__winver
__p__wpgmptr
__pxcptinfoptrs
__set_app_type
__setusermatherr
__threadhandle
__threadid
__toascii
__unDName
__wargv DATA
__wgetmainargs
__winitenv DATA
_abnormal_termination
_access
_acmdln DATA
_adj_fdiv_m16i@4
_adj_fdiv_m32@4
_adj_fdiv_m32i@4
_adj_fdiv_m64@8
_adj_fdiv_r
_adj_fdivr_m16i@4
_adj_fdivr_m32@4
_adj_fdivr_m32i@4
_adj_fdivr_m64@8
_adj_fpatan
_adj_fprem
_adj_fprem1
_adj_fptan
_adjust_fdiv DATA
_aexit_rtn DATA
_amsg_exit
_assert
_atodbl
_atoldbl
_beep
_beginthread
_beginthreadex
_c_exit
_cabs
_cexit
_cgets
_chdir
_chdrive
_chgsign
_chmod
_chsize
_clearfp
_close
_commit
_commode DATA
_control87
_controlfp
_copysign
_cprintf
_cputs
_creat
_cscanf
_ctype DATA
_cwait
_daylight DATA
_dstbias DATA
_dup
_dup2
_ecvt
_endthread
_endthreadex
_environ DATA
_eof
_errno
_except_handler2
_except_handler3
_execl
_execle
_execlp
_execlpe
_execv
_execve
_execvp
_execvpe
_exit
_expand
_fcloseall
_fcvt
_fdopen
_fgetchar
_fgetwchar
_filbuf
_fileinfo DATA
_filelength
_filelengthi64
_fileno
_findclose
_findfirst
_findfirsti64
_findnext
_findnexti64
_finite
_flsbuf
_flushall
_fmode DATA
_fpclass
_fpieee_flt
_fpreset
_fputchar
_fputwchar
_fsopen
_fstat
_fstati64
_ftime
_ftol
_fullpath
_futime
_gcvt
_get_osfhandle
_getch
_getche
_getcwd
_getdcwd
_getdiskfree
_getdllprocaddr
_getdrive
_getdrives
_getmaxstdio
_getmbcp
_getpid
_getsystime
_getw
_getws
_global_unwind2
_heapadd
_heapchk
_heapmin
_heapset
_heapused
_heapwalk
_hypot
_initterm
_inp
_inpd
_inpw
_iob DATA
_isatty
_isctype
_ismbbalnum
_ismbbalpha
_ismbbgraph
_ismbbkalnum
_ismbbkana
_ismbbkprint
_ismbbkpunct
_ismbblead
_ismbbprint
_ismbbpunct
_ismbbtrail
_ismbcalnum
_ismbcalpha
_ismbcdigit
_ismbcgraph
_ismbchira
_ismbckata
_ismbcl0
_ismbcl1
_ismbcl2
_ismbclegal
_ismbclower
_ismbcprint
_ismbcpunct
_ismbcspace
_ismbcsymbol
_ismbcupper
_ismbslead
_ismbstrail
_isnan
_itoa
_itow
_j0
_j1
_jn
_kbhit
_lfind
_loaddll
_local_unwind2
_locking
_logb
_longjmpex
_lrotl
_lrotr
_lsearch
_lseek
_lseeki64
_ltoa
_ltow
_makepath
_mbbtombc
_mbbtype
_mbccpy
_mbcjistojms
_mbcjmstojis
_mbclen
_mbctohira
_mbctokata
_mbctolower
_mbctombb
_mbctoupper
_mbctype DATA
_mbsbtype
_mbscat
_mbschr
_mbscmp
_mbscoll
_mbscpy
_mbscspn
_mbsdec
_mbsdup
_mbsicmp
_mbsicoll
_mbsinc
_mbslen
_mbslwr
_mbsnbcat
_mbsnbcmp
_mbsnbcnt
_mbsnbcoll
_mbsnbcpy
_mbsnbicmp
_mbsnbicoll
_mbsnbset
_mbsncat
_mbsnccnt
_mbsncmp
_mbsncoll
_mbsncpy
_mbsnextc
_mbsnicmp
_mbsnicoll
_mbsninc
_mbsnset
_mbspbrk
_mbsrchr
_mbsrev
_mbsset
_mbsspn
_mbsspnp
_mbsstr
_mbstok
_mbstrlen
_mbsupr
_memccpy
_memicmp
_mkdir
_mktemp
_msize
_mtlock
_mtunlock
_nextafter
_onexit
_open
_open_osfhandle
_osver DATA
_outp
_outpd
_outpw
_pclose
_pctype DATA
_pgmptr DATA
_pipe
_popen
_purecall
_putch
_putenv
_putw
_putws
_pwctype DATA
_read
_rmdir
_rmtmp
_rotl
_rotr
_safe_fdiv
_safe_fdivr
_safe_fprem
_safe_fprem1
_scalb
_searchenv
_seh_longjmp_unwind@4
_set_error_mode
_seterrormode
_setjmp
_setjmp3
_setmaxstdio
_setmbcp
_setmode
_setsystime
_sleep
_snprintf
_snwprintf
_sopen
_spawnl
_spawnle
_spawnlp
_spawnlpe
_spawnv
_spawnve
_spawnvp
_spawnvpe
_splitpath
_stat
_stati64
_statusfp
_strcmpi
_strdate
_strdup
_strerror
_stricmp
_stricoll
_strlwr
_strncoll
_strnicmp
_strnicoll
_strnset
_strrev
_strset
_strtime
_strupr
_swab
_sys_errlist DATA
_sys_nerr DATA
_tell
_telli64
_tempnam
_timezone DATA
_tolower
_toupper
_tzname DATA
_tzset
_ultoa
_ultow
_umask
_ungetch
_unlink
_unloaddll
_utime
_vsnprintf
_vsnwprintf
_waccess
_wasctime
_wchdir
_wchmod
_wcmdln DATA
_wcreat
_wcsdup
_wcsicmp
_wcsicoll
_wcslwr
_wcsncoll
_wcsnicmp
_wcsnicoll
_wcsnset
_wcsrev
_wcsset
_wcsupr
_wctime
_wenviron DATA
_wexecl
_wexecle
_wexeclp
_wexeclpe
_wexecv
_wexecve
_wexecvp
_wexecvpe
_wfdopen
_wfindfirst
_wfindfirsti64
_wfindnext
_wfindnexti64
_wfopen
_wfreopen
_wfsopen
_wfullpath
_wgetcwd
_wgetdcwd
_wgetenv
_winmajor DATA
_winminor DATA
_winver DATA
_wmakepath
_wmkdir
_wmktemp
_wopen
_wperror
_wpgmptr DATA
_wpopen
_wputenv
_wremove
_wrename
_write
_wrmdir
_wsearchenv
_wsetlocale
_wsopen
_wspawnl
_wspawnle
_wspawnlp
_wspawnlpe
_wspawnv
_wspawnve
_wspawnvp
_wspawnvpe
_wsplitpath
_wstat
_wstati64
_wstrdate
_wstrtime
_wsystem
_wtempnam
_wtmpnam
_wtoi
_wtol
_wunlink
_wutime
_y0
_y1
_yn
abort
abs
acos
asctime
asin
atan
atan2
atexit
atof
atoi
atol
bsearch
calloc
ceil
clearerr
clock
cos
cosh
ctime
difftime
div
exit
exp
fabs
fclose
feof
ferror
fflush
fgetc
fgetpos
fgets
fgetwc
fgetws
floor
fmod
fopen
fprintf
fputc
fputs
fputwc
fputws
fread
free
freopen
frexp
fscanf
fseek
fsetpos
ftell
fwprintf
fwrite
fwscanf
getc
getchar
getenv
gets
getwc
getwchar
gmtime
is_wctype
isalnum
isalpha
iscntrl
isdigit
isgraph
isleadbyte
islower
isprint
ispunct
isspace
isupper
iswalnum
iswalpha
iswascii
iswcntrl
iswctype
iswdigit
iswgraph
iswlower
iswprint
iswpunct
iswspace
iswupper
iswxdigit
isxdigit
labs
ldexp
ldiv
localeconv
localtime
log
log10
longjmp
malloc
mblen
mbstowcs
mbtowc
memchr
memcmp
memcpy
memmove
memset
mktime
modf
perror
pow
printf
putc
putchar
puts
putwc
putwchar
qsort
raise
rand
realloc
remove
rename
rewind
scanf
setbuf
setlocale
setvbuf
signal
sin
sinh
sprintf
sqrt
srand
sscanf
strcat
strchr
strcmp
strcoll
strcpy
strcspn
strerror
strftime
strlen
strncat
strncmp
strncpy
strpbrk
strrchr
strspn
strstr
strtod
strtok
strtol
strtoul
strxfrm
swprintf
swscanf
system
tan
tanh
time
tmpfile
tmpnam
tolower
toupper
towlower
towupper
ungetc
ungetwc
vfprintf
vfwprintf
vprintf
vsprintf
vswprintf
vwprintf
wcscat
wcschr
wcscmp
wcscoll
wcscpy
wcscspn
wcsftime
wcslen
wcsncat
wcsncmp
wcsncpy
wcspbrk
wcsrchr
wcsspn
wcsstr
wcstod
wcstok
wcstol
wcstombs
wcstoul
wcsxfrm
wctomb
wprintf
wscanf
