; 
; Exports of file msvcirt.dll
;
; Autogenerated by gen_exportdef
; Written by Kai Tietz, 2007
;
LIBRARY msvcirt.dll
EXPORTS
; public: __thiscall Iostream_init::Iostream_init(class ios &,int)
??0Iostream_init@@QAE@AAVios@@H@Z
; public: __thiscall Iostream_init::Iostream_init(void)
??0Iostream_init@@QAE@XZ
; public: __thiscall exception::exception(char const * const &)
??0exception@@QAE@ABQBD@Z
; public: __thiscall exception::exception(class exception const &)
??0exception@@QAE@ABV0@@Z
; public: __thiscall exception::exception(void)
??0exception@@QAE@XZ
; public: __thiscall filebuf::filebuf(class filebuf const &)
??0filebuf@@QAE@ABV0@@Z
; public: __thiscall filebuf::filebuf(int)
??0filebuf@@QAE@H@Z
; public: __thiscall filebuf::filebuf(int,char *,int)
??0filebuf@@QAE@HPADH@Z
; public: __thiscall filebuf::filebuf(void)
??0filebuf@@QAE@XZ
; public: __thiscall fstream::fstream(class fstream const &)
??0fstream@@QAE@ABV0@@Z
; public: __thiscall fstream::fstream(int)
??0fstream@@QAE@H@Z
; public: __thiscall fstream::fstream(int,char *,int)
??0fstream@@QAE@HPADH@Z
; public: __thiscall fstream::fstream(char const *,int,int)
??0fstream@@QAE@PBDHH@Z
; public: __thiscall fstream::fstream(void)
??0fstream@@QAE@XZ
; public: __thiscall ifstream::ifstream(class ifstream const &)
??0ifstream@@QAE@ABV0@@Z
; public: __thiscall ifstream::ifstream(int)
??0ifstream@@QAE@H@Z
; public: __thiscall ifstream::ifstream(int,char *,int)
??0ifstream@@QAE@HPADH@Z
; public: __thiscall ifstream::ifstream(char const *,int,int)
??0ifstream@@QAE@PBDHH@Z
; public: __thiscall ifstream::ifstream(void)
??0ifstream@@QAE@XZ
; protected: __thiscall ios::ios(class ios const &)
??0ios@@IAE@ABV0@@Z
; protected: __thiscall ios::ios(void)
??0ios@@IAE@XZ
; public: __thiscall ios::ios(class streambuf *)
??0ios@@QAE@PAVstreambuf@@@Z
; protected: __thiscall iostream::iostream(class iostream const &)
??0iostream@@IAE@ABV0@@Z
; protected: __thiscall iostream::iostream(void)
??0iostream@@IAE@XZ
; public: __thiscall iostream::iostream(class streambuf *)
??0iostream@@QAE@PAVstreambuf@@@Z
; protected: __thiscall istream::istream(class istream const &)
??0istream@@IAE@ABV0@@Z
; protected: __thiscall istream::istream(void)
??0istream@@IAE@XZ
; public: __thiscall istream::istream(class streambuf *)
??0istream@@QAE@PAVstreambuf@@@Z
; public: __thiscall istream_withassign::istream_withassign(class istream_withassign const &)
??0istream_withassign@@QAE@ABV0@@Z
; public: __thiscall istream_withassign::istream_withassign(class streambuf *)
??0istream_withassign@@QAE@PAVstreambuf@@@Z
; public: __thiscall istream_withassign::istream_withassign(void)
??0istream_withassign@@QAE@XZ
; public: __thiscall istrstream::istrstream(class istrstream const &)
??0istrstream@@QAE@ABV0@@Z
; public: __thiscall istrstream::istrstream(char *)
??0istrstream@@QAE@PAD@Z
; public: __thiscall istrstream::istrstream(char *,int)
??0istrstream@@QAE@PADH@Z
; public: __thiscall logic_error::logic_error(char const * const &)
??0logic_error@@QAE@ABQBD@Z
; public: __thiscall logic_error::logic_error(class logic_error const &)
??0logic_error@@QAE@ABV0@@Z
; public: __thiscall ofstream::ofstream(class ofstream const &)
??0ofstream@@QAE@ABV0@@Z
; public: __thiscall ofstream::ofstream(int)
??0ofstream@@QAE@H@Z
; public: __thiscall ofstream::ofstream(int,char *,int)
??0ofstream@@QAE@HPADH@Z
; public: __thiscall ofstream::ofstream(char const *,int,int)
??0ofstream@@QAE@PBDHH@Z
; public: __thiscall ofstream::ofstream(void)
??0ofstream@@QAE@XZ
; protected: __thiscall ostream::ostream(class ostream const &)
??0ostream@@IAE@ABV0@@Z
; protected: __thiscall ostream::ostream(void)
??0ostream@@IAE@XZ
; public: __thiscall ostream::ostream(class streambuf *)
??0ostream@@QAE@PAVstreambuf@@@Z
; public: __thiscall ostream_withassign::ostream_withassign(class ostream_withassign const &)
??0ostream_withassign@@QAE@ABV0@@Z
; public: __thiscall ostream_withassign::ostream_withassign(class streambuf *)
??0ostream_withassign@@QAE@PAVstreambuf@@@Z
; public: __thiscall ostream_withassign::ostream_withassign(void)
??0ostream_withassign@@QAE@XZ
; public: __thiscall ostrstream::ostrstream(class ostrstream const &)
??0ostrstream@@QAE@ABV0@@Z
; public: __thiscall ostrstream::ostrstream(char *,int,int)
??0ostrstream@@QAE@PADHH@Z
; public: __thiscall ostrstream::ostrstream(void)
??0ostrstream@@QAE@XZ
; public: __thiscall stdiobuf::stdiobuf(class stdiobuf const &)
??0stdiobuf@@QAE@ABV0@@Z
; public: __thiscall stdiobuf::stdiobuf(struct _iobuf *)
??0stdiobuf@@QAE@PAU_iobuf@@@Z
; public: __thiscall stdiostream::stdiostream(class stdiostream const &)
??0stdiostream@@QAE@ABV0@@Z
; public: __thiscall stdiostream::stdiostream(struct _iobuf *)
??0stdiostream@@QAE@PAU_iobuf@@@Z
; protected: __thiscall streambuf::streambuf(char *,int)
??0streambuf@@IAE@PADH@Z
; protected: __thiscall streambuf::streambuf(void)
??0streambuf@@IAE@XZ
; public: __thiscall streambuf::streambuf(class streambuf const &)
??0streambuf@@QAE@ABV0@@Z
; public: __thiscall strstream::strstream(class strstream const &)
??0strstream@@QAE@ABV0@@Z
; public: __thiscall strstream::strstream(char *,int,int)
??0strstream@@QAE@PADHH@Z
; public: __thiscall strstream::strstream(void)
??0strstream@@QAE@XZ
; public: __thiscall strstreambuf::strstreambuf(class strstreambuf const &)
??0strstreambuf@@QAE@ABV0@@Z
; public: __thiscall strstreambuf::strstreambuf(int)
??0strstreambuf@@QAE@H@Z
; public: __thiscall strstreambuf::strstreambuf(void * (__cdecl*)(long),void (__cdecl*)(void *))
??0strstreambuf@@QAE@P6APAXJ@ZP6AXPAX@Z@Z
; public: __thiscall strstreambuf::strstreambuf(char *,int,char *)
??0strstreambuf@@QAE@PADH0@Z
; public: __thiscall strstreambuf::strstreambuf(unsigned char *,int,unsigned char *)
??0strstreambuf@@QAE@PAEH0@Z
; public: __thiscall strstreambuf::strstreambuf(void)
??0strstreambuf@@QAE@XZ
; public: __thiscall Iostream_init::~Iostream_init(void)
??1Iostream_init@@QAE@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: class Iostream_init & __thiscall Iostream_init::operator=(class Iostream_init const &)
??4Iostream_init@@QAEAAV0@ABV0@@Z
; public: class exception & __thiscall exception::operator=(class exception const &)
??4exception@@QAEAAV0@ABV0@@Z
; public: class filebuf & __thiscall filebuf::operator=(class filebuf const &)
??4filebuf@@QAEAAV0@ABV0@@Z
; public: class fstream & __thiscall fstream::operator=(class fstream &)
??4fstream@@QAEAAV0@AAV0@@Z
; public: class ifstream & __thiscall ifstream::operator=(class ifstream const &)
??4ifstream@@QAEAAV0@ABV0@@Z
; protected: class ios & __thiscall ios::operator=(class ios const &)
??4ios@@IAEAAV0@ABV0@@Z
; protected: class iostream & __thiscall iostream::operator=(class iostream &)
??4iostream@@IAEAAV0@AAV0@@Z
; protected: class iostream & __thiscall iostream::operator=(class streambuf *)
??4iostream@@IAEAAV0@PAVstreambuf@@@Z
; protected: class istream & __thiscall istream::operator=(class istream const &)
??4istream@@IAEAAV0@ABV0@@Z
; protected: class istream & __thiscall istream::operator=(class streambuf *)
??4istream@@IAEAAV0@PAVstreambuf@@@Z
; public: class istream_withassign & __thiscall istream_withassign::operator=(class istream_withassign const &)
??4istream_withassign@@QAEAAV0@ABV0@@Z
; public: class istream & __thiscall istream_withassign::operator=(class istream const &)
??4istream_withassign@@QAEAAVistream@@ABV1@@Z
; public: class istream & __thiscall istream_withassign::operator=(class streambuf *)
??4istream_withassign@@QAEAAVistream@@PAVstreambuf@@@Z
; public: class istrstream & __thiscall istrstream::operator=(class istrstream const &)
??4istrstream@@QAEAAV0@ABV0@@Z
; public: class logic_error & __thiscall logic_error::operator=(class logic_error const &)
??4logic_error@@QAEAAV0@ABV0@@Z
; public: class ofstream & __thiscall ofstream::operator=(class ofstream const &)
??4ofstream@@QAEAAV0@ABV0@@Z
; protected: class ostream & __thiscall ostream::operator=(class ostream const &)
??4ostream@@IAEAAV0@ABV0@@Z
; protected: class ostream & __thiscall ostream::operator=(class streambuf *)
??4ostream@@IAEAAV0@PAVstreambuf@@@Z
; public: class ostream_withassign & __thiscall ostream_withassign::operator=(class ostream_withassign const &)
??4ostream_withassign@@QAEAAV0@ABV0@@Z
; public: class ostream & __thiscall ostream_withassign::operator=(class ostream const &)
??4ostream_withassign@@QAEAAVostream@@ABV1@@Z
; public: class ostream & __thiscall ostream_withassign::operator=(class streambuf *)
??4ostream_withassign@@QAEAAVostream@@PAVstreambuf@@@Z
; public: class ostrstream & __thiscall ostrstream::operator=(class ostrstream const &)
??4ostrstream@@QAEAAV0@ABV0@@Z
; public: class stdiobuf & __thiscall stdiobuf::operator=(class stdiobuf const &)
??4stdiobuf@@QAEAAV0@ABV0@@Z
; public: class stdiostream & __thiscall stdiostream::operator=(class stdiostream &)
??4stdiostream@@QAEAAV0@AAV0@@Z
; public: class streambuf & __thiscall streambuf::operator=(class streambuf const &)
??4streambuf@@QAEAAV0@ABV0@@Z
; public: class strstream & __thiscall strstream::operator=(class strstream &)
??4strstream@@QAEAAV0@AAV0@@Z
; public: class strstreambuf & __thiscall strstreambuf::operator=(class strstreambuf const &)
??4strstreambuf@@QAEAAV0@ABV0@@Z
; public: class istream & __thiscall istream::operator>>(signed char &)
??5istream@@QAEAAV0@AAC@Z
; public: class istream & __thiscall istream::operator>>(char &)
??5istream@@QAEAAV0@AAD@Z
; public: class istream & __thiscall istream::operator>>(unsigned char &)
??5istream@@QAEAAV0@AAE@Z
; public: class istream & __thiscall istream::operator>>(short &)
??5istream@@QAEAAV0@AAF@Z
; public: class istream & __thiscall istream::operator>>(unsigned short &)
??5istream@@QAEAAV0@AAG@Z
; public: class istream & __thiscall istream::operator>>(int &)
??5istream@@QAEAAV0@AAH@Z
; public: class istream & __thiscall istream::operator>>(unsigned int &)
??5istream@@QAEAAV0@AAI@Z
; public: class istream & __thiscall istream::operator>>(long &)
??5istream@@QAEAAV0@AAJ@Z
; public: class istream & __thiscall istream::operator>>(unsigned long &)
??5istream@@QAEAAV0@AAK@Z
; public: class istream & __thiscall istream::operator>>(float &)
??5istream@@QAEAAV0@AAM@Z
; public: class istream & __thiscall istream::operator>>(double &)
??5istream@@QAEAAV0@AAN@Z
; public: class istream & __thiscall istream::operator>>(long double &)
??5istream@@QAEAAV0@AAO@Z
; public: class istream & __thiscall istream::operator>>(class istream & (__cdecl*)(class istream &))
??5istream@@QAEAAV0@P6AAAV0@AAV0@@Z@Z
; public: class istream & __thiscall istream::operator>>(class ios & (__cdecl*)(class ios &))
??5istream@@QAEAAV0@P6AAAVios@@AAV1@@Z@Z
; public: class istream & __thiscall istream::operator>>(signed char *)
??5istream@@QAEAAV0@PAC@Z
; public: class istream & __thiscall istream::operator>>(char *)
??5istream@@QAEAAV0@PAD@Z
; public: class istream & __thiscall istream::operator>>(unsigned char *)
??5istream@@QAEAAV0@PAE@Z
; public: class istream & __thiscall istream::operator>>(class streambuf *)
??5istream@@QAEAAV0@PAVstreambuf@@@Z
; public: class ostream & __thiscall ostream::operator<<(signed char)
??6ostream@@QAEAAV0@C@Z
; public: class ostream & __thiscall ostream::operator<<(char)
??6ostream@@QAEAAV0@D@Z
; public: class ostream & __thiscall ostream::operator<<(unsigned char)
??6ostream@@QAEAAV0@E@Z
; public: class ostream & __thiscall ostream::operator<<(short)
??6ostream@@QAEAAV0@F@Z
; public: class ostream & __thiscall ostream::operator<<(unsigned short)
??6ostream@@QAEAAV0@G@Z
; public: class ostream & __thiscall ostream::operator<<(int)
??6ostream@@QAEAAV0@H@Z
; public: class ostream & __thiscall ostream::operator<<(unsigned int)
??6ostream@@QAEAAV0@I@Z
; public: class ostream & __thiscall ostream::operator<<(long)
??6ostream@@QAEAAV0@J@Z
; public: class ostream & __thiscall ostream::operator<<(unsigned long)
??6ostream@@QAEAAV0@K@Z
; public: class ostream & __thiscall ostream::operator<<(float)
??6ostream@@QAEAAV0@M@Z
; public: class ostream & __thiscall ostream::operator<<(double)
??6ostream@@QAEAAV0@N@Z
; public: class ostream & __thiscall ostream::operator<<(long double)
??6ostream@@QAEAAV0@O@Z
; public: class ostream & __thiscall ostream::operator<<(class ostream & (__cdecl*)(class ostream &))
??6ostream@@QAEAAV0@P6AAAV0@AAV0@@Z@Z
; public: class ostream & __thiscall ostream::operator<<(class ios & (__cdecl*)(class ios &))
??6ostream@@QAEAAV0@P6AAAVios@@AAV1@@Z@Z
; public: class ostream & __thiscall ostream::operator<<(class streambuf *)
??6ostream@@QAEAAV0@PAVstreambuf@@@Z
; public: class ostream & __thiscall ostream::operator<<(signed char const *)
??6ostream@@QAEAAV0@PBC@Z
; public: class ostream & __thiscall ostream::operator<<(char const *)
??6ostream@@QAEAAV0@PBD@Z
; public: class ostream & __thiscall ostream::operator<<(unsigned char const *)
??6ostream@@QAEAAV0@PBE@Z
; public: class ostream & __thiscall ostream::operator<<(void const *)
??6ostream@@QAEAAV0@PBX@Z
; public: int __thiscall ios::operator!(void)const 
??7ios@@QBEHXZ
; public: __thiscall ios::operator void *(void)const 
??Bios@@QBEPAXXZ
; 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@@@
; const  fstream::`vbtable'{for `ostream'}
??_8fstream@@7Bostream@@@
; const  ifstream::`vbtable'
??_8ifstream@@7B@
; const  iostream::`vbtable'{for `istream'}
??_8iostream@@7Bistream@@@
; const  iostream::`vbtable'{for `ostream'}
??_8iostream@@7Bostream@@@
; const  istream::`vbtable'
??_8istream@@7B@
; const  istream_withassign::`vbtable'
??_8istream_withassign@@7B@
; const  istrstream::`vbtable'
??_8istrstream@@7B@
; const  ofstream::`vbtable'
??_8ofstream@@7B@
; const  ostream::`vbtable'
??_8ostream@@7B@
; const  ostream_withassign::`vbtable'
??_8ostream_withassign@@7B@
; const  ostrstream::`vbtable'
??_8ostrstream@@7B@
; const  stdiostream::`vbtable'{for `istream'}
??_8stdiostream@@7Bistream@@@
; const  stdiostream::`vbtable'{for `ostream'}
??_8stdiostream@@7Bostream@@@
; const  strstream::`vbtable'{for `istream'}
??_8strstream@@7Bistream@@@
; const  strstream::`vbtable'{for `ostream'}
??_8strstream@@7Bostream@@@
; 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: virtual void * __thiscall exception::`vector deleting destructor'(unsigned int)
??_Eexception@@UAEPAXI@Z
; public: virtual void * __thiscall filebuf::`vector deleting destructor'(unsigned int)
??_Efilebuf@@UAEPAXI@Z
; public: virtual void * __thiscall fstream::`vector deleting destructor'(unsigned int)
??_Efstream@@UAEPAXI@Z
; public: virtual void * __thiscall ifstream::`vector deleting destructor'(unsigned int)
??_Eifstream@@UAEPAXI@Z
; public: virtual void * __thiscall ios::`vector deleting destructor'(unsigned int)
??_Eios@@UAEPAXI@Z
; public: virtual void * __thiscall iostream::`vector deleting destructor'(unsigned int)
??_Eiostream@@UAEPAXI@Z
; public: virtual void * __thiscall istream::`vector deleting destructor'(unsigned int)
??_Eistream@@UAEPAXI@Z
; public: virtual void * __thiscall istream_withassign::`vector deleting destructor'(unsigned int)
??_Eistream_withassign@@UAEPAXI@Z
; public: virtual void * __thiscall istrstream::`vector deleting destructor'(unsigned int)
??_Eistrstream@@UAEPAXI@Z
; public: virtual void * __thiscall logic_error::`vector deleting destructor'(unsigned int)
??_Elogic_error@@UAEPAXI@Z
; public: virtual void * __thiscall ofstream::`vector deleting destructor'(unsigned int)
??_Eofstream@@UAEPAXI@Z
; public: virtual void * __thiscall ostream::`vector deleting destructor'(unsigned int)
??_Eostream@@UAEPAXI@Z
; public: virtual void * __thiscall ostream_withassign::`vector deleting destructor'(unsigned int)
??_Eostream_withassign@@UAEPAXI@Z
; public: virtual void * __thiscall ostrstream::`vector deleting destructor'(unsigned int)
??_Eostrstream@@UAEPAXI@Z
; public: virtual void * __thiscall stdiobuf::`vector deleting destructor'(unsigned int)
??_Estdiobuf@@UAEPAXI@Z
; public: virtual void * __thiscall stdiostream::`vector deleting destructor'(unsigned int)
??_Estdiostream@@UAEPAXI@Z
; public: virtual void * __thiscall streambuf::`vector deleting destructor'(unsigned int)
??_Estreambuf@@UAEPAXI@Z
; public: virtual void * __thiscall strstream::`vector deleting destructor'(unsigned int)
??_Estrstream@@UAEPAXI@Z
; public: virtual void * __thiscall strstreambuf::`vector deleting destructor'(unsigned int)
??_Estrstreambuf@@UAEPAXI@Z
; public: virtual void * __thiscall exception::`scalar deleting destructor'(unsigned int)
??_Gexception@@UAEPAXI@Z
; public: virtual void * __thiscall filebuf::`scalar deleting destructor'(unsigned int)
??_Gfilebuf@@UAEPAXI@Z
; public: virtual void * __thiscall fstream::`scalar deleting destructor'(unsigned int)
??_Gfstream@@UAEPAXI@Z
; public: virtual void * __thiscall ifstream::`scalar deleting destructor'(unsigned int)
??_Gifstream@@UAEPAXI@Z
; public: virtual void * __thiscall ios::`scalar deleting destructor'(unsigned int)
??_Gios@@UAEPAXI@Z
; public: virtual void * __thiscall iostream::`scalar deleting destructor'(unsigned int)
??_Giostream@@UAEPAXI@Z
; public: virtual void * __thiscall istream::`scalar deleting destructor'(unsigned int)
??_Gistream@@UAEPAXI@Z
; public: virtual void * __thiscall istream_withassign::`scalar deleting destructor'(unsigned int)
??_Gistream_withassign@@UAEPAXI@Z
; public: virtual void * __thiscall istrstream::`scalar deleting destructor'(unsigned int)
??_Gistrstream@@UAEPAXI@Z
; public: virtual void * __thiscall logic_error::`scalar deleting destructor'(unsigned int)
??_Glogic_error@@UAEPAXI@Z
; public: virtual void * __thiscall ofstream::`scalar deleting destructor'(unsigned int)
??_Gofstream@@UAEPAXI@Z
; public: virtual void * __thiscall ostream::`scalar deleting destructor'(unsigned int)
??_Gostream@@UAEPAXI@Z
; public: virtual void * __thiscall ostream_withassign::`scalar deleting destructor'(unsigned int)
??_Gostream_withassign@@UAEPAXI@Z
; public: virtual void * __thiscall ostrstream::`scalar deleting destructor'(unsigned int)
??_Gostrstream@@UAEPAXI@Z
; public: virtual void * __thiscall stdiobuf::`scalar deleting destructor'(unsigned int)
??_Gstdiobuf@@UAEPAXI@Z
; public: virtual void * __thiscall stdiostream::`scalar deleting destructor'(unsigned int)
??_Gstdiostream@@UAEPAXI@Z
; public: virtual void * __thiscall streambuf::`scalar deleting destructor'(unsigned int)
??_Gstreambuf@@UAEPAXI@Z
; public: virtual void * __thiscall strstream::`scalar deleting destructor'(unsigned int)
??_Gstrstream@@UAEPAXI@Z
; public: virtual void * __thiscall strstreambuf::`scalar deleting destructor'(unsigned int)
??_Gstrstreambuf@@UAEPAXI@Z
; public: static long const  ios::adjustfield
?adjustfield@ios@@2JB
; protected: int __thiscall streambuf::allocate(void)
?allocate@streambuf@@IAEHXZ
; public: class filebuf * __thiscall filebuf::attach(int)
?attach@filebuf@@QAEPAV1@H@Z
; public: void __thiscall fstream::attach(int)
?attach@fstream@@QAEXH@Z
; public: void __thiscall ifstream::attach(int)
?attach@ifstream@@QAEXH@Z
; public: void __thiscall ofstream::attach(int)
?attach@ofstream@@QAEXH@Z
; 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
; public: static int const  filebuf::binary
?binary@filebuf@@2HB
; 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
; 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
; 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
; public: char __thiscall ios::fill(void)const 
?fill@ios@@QBEDXZ
; public: long __thiscall ios::flags(long)
?flags@ios@@QAEJJ@Z
; public: long __thiscall ios::flags(void)const 
?flags@ios@@QBEJXZ
; public: static long const  ios::floatfield
?floatfield@ios@@2JB
; 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
; protected: void __thiscall streambuf::gbump(int)
?gbump@streambuf@@IAEXH@Z
; public: int __thiscall istream::gcount(void)const 
?gcount@istream@@QBEHXZ
; protected: class istream & __thiscall istream::get(char *,int,int)
?get@istream@@IAEAAV1@PADHH@Z
; public: class istream & __thiscall istream::get(signed char &)
?get@istream@@QAEAAV1@AAC@Z
; public: class istream & __thiscall istream::get(char &)
?get@istream@@QAEAAV1@AAD@Z
; public: class istream & __thiscall istream::get(unsigned char &)
?get@istream@@QAEAAV1@AAE@Z
; public: class istream & __thiscall istream::get(class streambuf &,char)
?get@istream@@QAEAAV1@AAVstreambuf@@D@Z
; public: class istream & __thiscall istream::get(signed char *,int,char)
?get@istream@@QAEAAV1@PACHD@Z
; public: class istream & __thiscall istream::get(char *,int,char)
?get@istream@@QAEAAV1@PADHD@Z
; public: class istream & __thiscall istream::get(unsigned char *,int,char)
?get@istream@@QAEAAV1@PAEHD@Z
; public: int __thiscall istream::get(void)
?get@istream@@QAEHXZ
; private: int __thiscall istream::getdouble(char *,int)
?getdouble@istream@@AAEHPADH@Z
; private: int __thiscall istream::getint(char *)
?getint@istream@@AAEHPAD@Z
; public: class istream & __thiscall istream::getline(signed char *,int,char)
?getline@istream@@QAEAAV1@PACHD@Z
; public: class istream & __thiscall istream::getline(char *,int,char)
?getline@istream@@QAEAAV1@PADHD@Z
; public: class istream & __thiscall istream::getline(unsigned char *,int,char)
?getline@istream@@QAEAAV1@PAEHD@Z
; 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
; public: int __thiscall streambuf::in_avail(void)const 
?in_avail@streambuf@@QBEHXZ
; protected: void __thiscall ios::init(class streambuf *)
?init@ios@@IAEXPAVstreambuf@@@Z
; public: int __thiscall istream::ipfx(int)
?ipfx@istream@@QAEHH@Z
; 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
; 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
; 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
; public: void __thiscall fstream::open(char const *,int,int)
?open@fstream@@QAEXPBDHH@Z
; public: void __thiscall ifstream::open(char const *,int,int)
?open@ifstream@@QAEXPBDHH@Z
; public: void __thiscall ofstream::open(char const *,int,int)
?open@ofstream@@QAEXPBDHH@Z
; public: static int const  filebuf::openprot
?openprot@filebuf@@2HB
; 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
; public: virtual int __thiscall stdiobuf::overflow(int)
?overflow@stdiobuf@@UAEHH@Z
; public: virtual int __thiscall strstreambuf::overflow(int)
?overflow@strstreambuf@@UAEHH@Z
; public: virtual int __thiscall stdiobuf::pbackfail(int)
?pbackfail@stdiobuf@@UAEHH@Z
; public: virtual int __thiscall streambuf::pbackfail(int)
?pbackfail@streambuf@@UAEHH@Z
; protected: char * __thiscall streambuf::pbase(void)const 
?pbase@streambuf@@IBEPADXZ
; protected: void __thiscall streambuf::pbump(int)
?pbump@streambuf@@IAEXH@Z
; 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
; public: int __thiscall ios::precision(void)const 
?precision@ios@@QBEHXZ
; public: class ostream & __thiscall ostream::put(signed char)
?put@ostream@@QAEAAV1@C@Z
; public: class ostream & __thiscall ostream::put(char)
?put@ostream@@QAEAAV1@D@Z
; public: class ostream & __thiscall ostream::put(unsigned char)
?put@ostream@@QAEAAV1@E@Z
; public: class istream & __thiscall istream::putback(char)
?putback@istream@@QAEAAV1@D@Z
; public: void * & __thiscall ios::pword(int)const 
?pword@ios@@QBEAAPAXH@Z
; 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
; public: class istream & __thiscall istream::read(char *,int)
?read@istream@@QAEAAV1@PADH@Z
; public: class istream & __thiscall istream::read(unsigned char *,int)
?read@istream@@QAEAAV1@PAEH@Z
; public: int __thiscall streambuf::sbumpc(void)
?sbumpc@streambuf@@QAEHXZ
; public: class istream & __thiscall istream::seekg(long)
?seekg@istream@@QAEAAV1@J@Z
; public: class istream & __thiscall istream::seekg(long,enum ios::seek_dir)
?seekg@istream@@QAEAAV1@JW4seek_dir@ios@@@Z
; public: virtual long __thiscall filebuf::seekoff(long,enum ios::seek_dir,int)
?seekoff@filebuf@@UAEJJW4seek_dir@ios@@H@Z
; public: virtual long __thiscall stdiobuf::seekoff(long,enum ios::seek_dir,int)
?seekoff@stdiobuf@@UAEJJW4seek_dir@ios@@H@Z
; public: virtual long __thiscall streambuf::seekoff(long,enum ios::seek_dir,int)
?seekoff@streambuf@@UAEJJW4seek_dir@ios@@H@Z
; public: virtual long __thiscall strstreambuf::seekoff(long,enum ios::seek_dir,int)
?seekoff@strstreambuf@@UAEJJW4seek_dir@ios@@H@Z
; public: class ostream & __thiscall ostream::seekp(long)
?seekp@ostream@@QAEAAV1@J@Z
; public: class ostream & __thiscall ostream::seekp(long,enum ios::seek_dir)
?seekp@ostream@@QAEAAV1@JW4seek_dir@ios@@@Z
; public: virtual long __thiscall streambuf::seekpos(long,int)
?seekpos@streambuf@@UAEJJH@Z
; protected: void __thiscall streambuf::setb(char *,char *,int)
?setb@streambuf@@IAEXPAD0H@Z
; public: virtual class streambuf * __thiscall filebuf::setbuf(char *,int)
?setbuf@filebuf@@UAEPAVstreambuf@@PADH@Z
; public: class streambuf * __thiscall fstream::setbuf(char *,int)
?setbuf@fstream@@QAEPAVstreambuf@@PADH@Z
; public: class streambuf * __thiscall ifstream::setbuf(char *,int)
?setbuf@ifstream@@QAEPAVstreambuf@@PADH@Z
; public: class streambuf * __thiscall ofstream::setbuf(char *,int)
?setbuf@ofstream@@QAEPAVstreambuf@@PADH@Z
; public: virtual class streambuf * __thiscall streambuf::setbuf(char *,int)
?setbuf@streambuf@@UAEPAV1@PADH@Z
; public: virtual class streambuf * __thiscall strstreambuf::setbuf(char *,int)
?setbuf@strstreambuf@@UAEPAVstreambuf@@PADH@Z
; public: long __thiscall ios::setf(long)
?setf@ios@@QAEJJ@Z
; public: long __thiscall ios::setf(long,long)
?setf@ios@@QAEJJJ@Z
; protected: void __thiscall streambuf::setg(char *,char *,char *)
?setg@streambuf@@IAEXPAD00@Z
; 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
; public: int __thiscall fstream::setmode(int)
?setmode@fstream@@QAEHH@Z
; public: int __thiscall ifstream::setmode(int)
?setmode@ifstream@@QAEHH@Z
; public: int __thiscall ofstream::setmode(int)
?setmode@ofstream@@QAEHH@Z
; protected: void __thiscall streambuf::setp(char *,char *)
?setp@streambuf@@IAEXPAD0@Z
; public: int __thiscall stdiobuf::setrwbuf(int,int)
?setrwbuf@stdiobuf@@QAEHHH@Z
; public: int __thiscall streambuf::sgetc(void)
?sgetc@streambuf@@QAEHXZ
; public: int __thiscall streambuf::sgetn(char *,int)
?sgetn@streambuf@@QAEHPADH@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 __thiscall streambuf::snextc(void)
?snextc@streambuf@@QAEHXZ
; public: int __thiscall streambuf::sputbackc(char)
?sputbackc@streambuf@@QAEHD@Z
; public: int __thiscall streambuf::sputc(int)
?sputc@streambuf@@QAEHH@Z
; public: int __thiscall streambuf::sputn(char const *,int)
?sputn@streambuf@@QAEHPBDH@Z
; 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
; public: static int const  filebuf::text
?text@filebuf@@2HB
; public: class ostream * __thiscall ios::tie(class ostream *)
?tie@ios@@QAEPAVostream@@PAV2@@Z
; public: class ostream * __thiscall ios::tie(void)const 
?tie@ios@@QBEPAVostream@@XZ
; protected: void __thiscall streambuf::unbuffered(int)
?unbuffered@streambuf@@IAEXH@Z
; 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
; 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
; public: virtual char const * __thiscall exception::what(void)const 
?what@exception@@UBEPBDXZ
; public: int __thiscall ios::width(int)
?width@ios@@QAEHH@Z
; 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
; public: class ostream & __thiscall ostream::write(char const *,int)
?write@ostream@@QAEAAV1@PBDH@Z
; public: class ostream & __thiscall ostream::write(unsigned char const *,int)
?write@ostream@@QAEAAV1@PBEH@Z
; private: class ostream & __thiscall ostream::writepad(char const *,char const *)
?writepad@ostream@@AAEAAV1@PBD0@Z
; 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
; public: virtual int __thiscall streambuf::xsputn(char const *,int)
?xsputn@streambuf@@UAEHPBDH@Z
__dummy_export DATA
_mtlock
_mtunlock
