; 
; 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
