Further refactoring of duplicated IOStream logic
Further refactoring of duplicated IOStream logic

VShangxiao/tornado,Windsooon/tornado,BencoLee/tornado,0x73/tornado,LTD-Beget/tornado,cyrilMargaria/tornado,djt5019/tornado,whip112/tornado,Geoion/tornado,kaushik94/tornado,ifduyue/tornado,BencoLee/tornado,mr-ping/tornado,Snamint/tornado,frtmelody/tornado,jparise/tornado,yangkf1985/tornado,z-fork/tornado,djt5019/tornado,ubear/tornado,elijah513/tornado,obsh/tornado,yangkf1985/tornado,allenl203/tornado,johan--/tornado,nephics/tornado,Fydot/tornado,0x73/tornado,kangbiao/tornado,elelianghh/tornado,liqueur/tornado,pombredanne/tornado,anandology/tornado,hhru/tornado,wujuguang/tornado,AlphaStaxLLC/tornado,coderhaoxin/tornado,eklitzke/tornado,leekchan/tornado_test,codecov/tornado,dongpinglai/my_tornado,InverseLina/tornado,gitchs/tornado,Windsooon/tornado,jehiah/tornado,zhuochenKIDD/tornado,Geoion/tornado,jparise/tornado,mivade/tornado,wxhzk/tornado-1,Fydot/tornado,chenxiaba/tornado,mehmetkose/tornado,anjan-srivastava/tornado,shashankbassi92/tornado,hzruandd/tornado,allenl203/tornado,ZhuPeng/tornado,tianyk/tornado-research,gitchs/tornado,elelianghh/tornado,hzruandd/tornado,andyaguiar/tornado,ubear/tornado,nephics/tornado,anjan-srivastava/tornado,zguangyu/tornado,importcjj/tornado,eklitzke/tornado,tianyk/tornado-research,lsanotes/tornado,dsseter/tornado,BencoLee/tornado,obsh/tornado,Geoion/tornado,ListFranz/tornado,SuminAndrew/tornado,djt5019/tornado,InverseLina/tornado,Drooids/tornado,InverseLina/tornado,ifduyue/tornado,Drooids/tornado,djt5019/tornado,obsh/tornado,QuanZag/tornado,anandology/tornado,anandology/tornado,pombredanne/tornado,mr-ping/tornado,bdarnell/tornado,chenxiaba/tornado,LTD-Beget/tornado,yuyangit/tornado,erichuang1994/tornado,Drooids/tornado,sxfmol/tornado,ydaniv/tornado,Acidburn0zzz/tornado,djt5019/tornado,nordaux/tornado,ajdavis/tornado,bufferx/tornado,ColorFuzzy/tornado,codeb2cc/tornado,wechasing/tornado,kangbiao/tornado,xinyu7/tornado,pombredanne/tornado,bdarnell/tornado,Aaron1992/tornado,Polyconseil/tornado,ListFranz/tornado,whip112/tornado,Polyconseil/tornado,ajdavis/tornado,jampp/tornado,ovidiucp/tornado,lujinda/tornado,wsyzxcn/tornado,fengshao0907/tornado,lilydjwg/tornado,xinyu7/tornado,SuminAndrew/tornado,akalipetis/tornado,johan--/tornado,frtmelody/tornado,Acidburn0zzz/tornado,dongpinglai/my_tornado,jehiah/tornado,wxhzk/tornado-1,ovidiucp/tornado,ydaniv/tornado,yuezhonghua/tornado,sxfmol/tornado,kevinge314gh/tornado,futurechallenger/tornado,eXcomm/tornado,0xkag/tornado,kangbiao/tornado,gwillem/tornado,ifduyue/tornado,anjan-srivastava/tornado,z-fork/tornado,elelianghh/tornado,kevinge314gh/tornado,ubear/tornado,304471720/tornado,zhuochenKIDD/tornado,leekchan/tornado_test,wujuguang/tornado,sunjeammy/tornado,takeshineshiro/tornado,shaohung001/tornado,takeshineshiro/tornado,eXcomm/tornado,takeshineshiro/tornado,mr-ping/tornado,yangkf1985/tornado,jonashagstedt/tornado,importcjj/tornado,liqueur/tornado,liqueur/tornado,z-fork/tornado,kangbiao/tornado,takeshineshiro/tornado,dongpinglai/my_tornado,LTD-Beget/tornado,ydaniv/tornado,tianyk/tornado-research,ifduyue/tornado,cyrilMargaria/tornado,arthurdarcet/tornado,Aaron1992/tornado,nbargnesi/tornado,lilydjwg/tornado,jampp/tornado,VShangxiao/tornado,anjan-srivastava/tornado,anjan-srivastava/tornado,BencoLee/tornado,0x73/tornado,kippandrew/tornado,cyrusin/tornado,z-fork/tornado,eklitzke/tornado,codeb2cc/tornado,ms7s/tornado,ZhuPeng/tornado,kevinge314gh/tornado,chenxiaba/tornado,ubear/tornado,insflow/tornado,Polyconseil/tornado,zguangyu/tornado,AlphaStaxLLC/tornado,jsjohnst/tornado,ovidiucp/tornado,LTD-Beget/tornado,wechasing/tornado,ymero/tornado,arthurdarcet/tornado,yangkf1985/tornado,nbargnesi/tornado,InverseLina/tornado,Snamint/tornado,yangkf1985/tornado,jonashagstedt/tornado,AlphaStaxLLC/tornado,sxfmol/tornado,AlphaStaxLLC/tornado,jonashagstedt/tornado,hhru/tornado,codecov/tornado,MjAbuz/tornado,cyrilMargaria/tornado,hhru/tornado,cyrilMargaria/tornado,drewmiller/tornado,gitchs/tornado,arthurdarcet/tornado,nephics/tornado,cyrusin/tornado,yangkf1985/tornado,NoyaInRain/tornado,BencoLee/tornado,SuminAndrew/tornado,sevenguin/tornado,johan--/tornado,johan--/tornado,MjAbuz/tornado,fengshao0907/tornado,Callwoola/tornado,elijah513/tornado,frtmelody/tornado,pombredanne/tornado,wxhzk/tornado-1,whip112/tornado,futurechallenger/tornado,kaushik94/tornado,ovidiucp/tornado,lsanotes/tornado,ms7s/tornado,erichuang1994/tornado,shashankbassi92/tornado,tianyk/tornado-research,gwillem/tornado,arthurdarcet/tornado,akalipetis/tornado,ColorFuzzy/tornado,cyrusin/tornado,nordaux/tornado,bywbilly/tornado,jarrahwu/tornado,MjAbuz/tornado,obsh/tornado,mr-ping/tornado,coderhaoxin/tornado,codeb2cc/tornado,fengshao0907/tornado,kippandrew/tornado,insflow/tornado,anandology/tornado,0x73/tornado,lilydjwg/tornado,leekchan/tornado_test,sevenguin/tornado,kevinge314gh/tornado,mehmetkose/tornado,NoyaInRain/tornado,mr-ping/tornado,felixonmars/tornado,hzruandd/tornado,coderhaoxin/tornado,bufferx/tornado,304471720/tornado,mlyundin/tornado,nbargnesi/tornado,yuyangit/tornado,jampp/tornado,codecov/tornado,eXcomm/tornado,eklitzke/tornado,gitchs/tornado,insflow/tornado,jarrahwu/tornado,futurechallenger/tornado,tianyk/tornado-research,Batterfii/tornado,Lancher/tornado,LTD-Beget/tornado,mehmetkose/tornado,nbargnesi/tornado,allenl203/tornado,mlyundin/tornado,wxhzk/tornado-1,wsyzxcn/tornado,VShangxiao/tornado,yuezhonghua/tornado,wsyzxcn/tornado,ajdavis/tornado,liqueur/tornado,VShangxiao/tornado,AlphaStaxLLC/tornado,304471720/tornado,frtmelody/tornado,importcjj/tornado,ydaniv/tornado,wsyzxcn/tornado,mlyundin/tornado,MjAbuz/tornado,jsjohnst/tornado,0xkag/tornado,wxhzk/tornado-1,coderhaoxin/tornado,Drooids/tornado,xinyu7/tornado,yuyangit/tornado,Snamint/tornado,noxiouz/tornado,MjAbuz/tornado,ajdavis/tornado,pombredanne/tornado,ZhuPeng/tornado,futurechallenger/tornado,icejoywoo/tornado,leekchan/tornado_test,Batterfii/tornado,legnaleurc/tornado,Acidburn0zzz/tornado,chenxiaba/tornado,takeshineshiro/tornado,eklitzke/tornado,Batterfii/tornado,bdarnell/tornado,wujuguang/tornado,kippandrew/tornado,jehiah/tornado,anandology/tornado,akalipetis/tornado,fengsp/tornado,wujuguang/tornado,QuanZag/tornado,gwillem/tornado,SuminAndrew/tornado,cyrusin/tornado,felixonmars/tornado,frtmelody/tornado,jarrahwu/tornado,dsseter/tornado,nordaux/tornado,Snamint/tornado,ListFranz/tornado,shashankbassi92/tornado,lujinda/tornado,felixonmars/tornado,pombredanne/tornado,eXcomm/tornado,lsanotes/tornado,andyaguiar/tornado,ListFranz/tornado,dongpinglai/my_tornado,frtmelody/tornado,jparise/tornado,jarrahwu/tornado,importcjj/tornado,Fydot/tornado,dongpinglai/my_tornado,sunjeammy/tornado,ovidiucp/tornado,jonashagstedt/tornado,coderhaoxin/tornado,ms7s/tornado,shashankbassi92/tornado,bufferx/tornado,wechasing/tornado,codeb2cc/tornado,ZhuPeng/tornado,Polyconseil/tornado,yuyangit/tornado,legnaleurc/tornado,lujinda/tornado,obsh/tornado,304471720/tornado,cyrilMargaria/tornado,nephics/tornado,coderhaoxin/tornado,elijah513/tornado,arthurdarcet/tornado,fengsp/tornado,insflow/tornado,cyrusin/tornado,Callwoola/tornado,Lancher/tornado,Windsooon/tornado,xinyu7/tornado,elelianghh/tornado,akalipetis/tornado,mlyundin/tornado,icejoywoo/tornado,lsanotes/tornado,Polyconseil/tornado,ListFranz/tornado,Batterfii/tornado,Callwoola/tornado,sxfmol/tornado,SuminAndrew/tornado,jonashagstedt/tornado,304471720/tornado,dsseter/tornado,andyaguiar/tornado,ovidiucp/tornado,felixonmars/tornado,BencoLee/tornado,Geoion/tornado,codecov/tornado,Geoion/tornado,importcjj/tornado,Aaron1992/tornado,wechasing/tornado,hhru/tornado,chenxiaba/tornado,elelianghh/tornado,mlyundin/tornado,ColorFuzzy/tornado,tornadoweb/tornado,allenl203/tornado,drewmiller/tornado,Aaron1992/tornado,LTD-Beget/tornado,zguangyu/tornado,lilydjwg/tornado,liqueur/tornado,ZhuPeng/tornado,elijah513/tornado,shaohung001/tornado,QuanZag/tornado,jparise/tornado,Geoion/tornado,mr-ping/tornado,bufferx/tornado,tornadoweb/tornado,dsseter/tornado,andyaguiar/tornado,lujinda/tornado,sxfmol/tornado,sevenguin/tornado,zguangyu/tornado,hzruandd/tornado,VShangxiao/tornado,jampp/tornado,zhuochenKIDD/tornado,lujinda/tornado,jehiah/tornado,ZhuPeng/tornado,takeshineshiro/tornado,mivade/tornado,ymero/tornado,bdarnell/tornado,hzruandd/tornado,insflow/tornado,wsyzxcn/tornado,fengsp/tornado,mivade/tornado,noxiouz/tornado,ColorFuzzy/tornado,tornadoweb/tornado,importcjj/tornado,kevinge314gh/tornado,mlyundin/tornado,MjAbuz/tornado,dsseter/tornado,nbargnesi/tornado,wechasing/tornado,sunjeammy/tornado,shashankbassi92/tornado,elijah513/tornado,Fydot/tornado,cyrilMargaria/tornado,felixonmars/tornado,304471720/tornado,mehmetkose/tornado,legnaleurc/tornado,johan--/tornado,hhru/tornado,fengshao0907/tornado,bdarnell/tornado,drewmiller/tornado,gwillem/tornado,fengsp/tornado,Lancher/tornado,nbargnesi/tornado,nordaux/tornado,Windsooon/tornado,sevenguin/tornado,jarrahwu/tornado,kevinge314gh/tornado,Snamint/tornado,gwillem/tornado,zguangyu/tornado,gitchs/tornado,AlphaStaxLLC/tornado,z-fork/tornado,Snamint/tornado,ydaniv/tornado,Windsooon/tornado,erichuang1994/tornado,fengsp/tornado,ubear/tornado,Callwoola/tornado,djt5019/tornado,zhuochenKIDD/tornado,futurechallenger/tornado,dsseter/tornado,0xkag/tornado,obsh/tornado,shaohung001/tornado,yuezhonghua/tornado,whip112/tornado,kangbiao/tornado,ymero/tornado,lsanotes/tornado,Drooids/tornado,leekchan/tornado_test,eXcomm/tornado,InverseLina/tornado,noxiouz/tornado,arthurdarcet/tornado,wxhzk/tornado-1,QuanZag/tornado,bywbilly/tornado,jsjohnst/tornado,Callwoola/tornado,0xkag/tornado,bufferx/tornado,shaohung001/tornado,ymero/tornado,jampp/tornado,NoyaInRain/tornado,Fydot/tornado,nordaux/tornado,yuyangit/tornado,wechasing/tornado,legnaleurc/tornado,akalipetis/tornado,kaushik94/tornado,z-fork/tornado,QuanZag/tornado,legnaleurc/tornado,gitchs/tornado,kippandrew/tornado,ydaniv/tornado,dongpinglai/my_tornado,anandology/tornado,akalipetis/tornado,mehmetkose/tornado,shashankbassi92/tornado,icejoywoo/tornado,chenxiaba/tornado,icejoywoo/tornado,liqueur/tornado,Batterfii/tornado,futurechallenger/tornado,shaohung001/tornado,erichuang1994/tornado,ymero/tornado,0xkag/tornado,ms7s/tornado,hzruandd/tornado,zhuochenKIDD/tornado,ymero/tornado,mivade/tornado,kippandrew/tornado,noxiouz/tornado,insflow/tornado,jsjohnst/tornado,jsjohnst/tornado,wujuguang/tornado,ajdavis/tornado,Acidburn0zzz/tornado,andyaguiar/tornado,Lancher/tornado,NoyaInRain/tornado,jampp/tornado,QuanZag/tornado,ColorFuzzy/tornado,Acidburn0zzz/tornado,Drooids/tornado,drewmiller/tornado,drewmiller/tornado,whip112/tornado,elelianghh/tornado,Fydot/tornado,eXcomm/tornado,shaohung001/tornado,ListFranz/tornado,yuezhonghua/tornado,xinyu7/tornado,Acidburn0zzz/tornado,ubear/tornado,NoyaInRain/tornado,gwillem/tornado,codeb2cc/tornado,sevenguin/tornado,jparise/tornado,noxiouz/tornado,Batterfii/tornado,zguangyu/tornado,codeb2cc/tornado,noxiouz/tornado,whip112/tornado,cyrusin/tornado,anjan-srivastava/tornado,jehiah/tornado,drewmiller/tornado,elijah513/tornado,tornadoweb/tornado,Aaron1992/tornado,sevenguin/tornado,erichuang1994/tornado,ms7s/tornado,allenl203/tornado,mivade/tornado,zhuochenKIDD/tornado,0x73/tornado,ColorFuzzy/tornado,wsyzxcn/tornado,InverseLina/tornado,jarrahwu/tornado,kaushik94/tornado,kippandrew/tornado,icejoywoo/tornado,mehmetkose/tornado,lujinda/tornado,VShangxiao/tornado,bywbilly/tornado,bywbilly/tornado,ms7s/tornado,jparise/tornado,kaushik94/tornado,bywbilly/tornado,xinyu7/tornado,nephics/tornado,sunjeammy/tornado,jsjohnst/tornado,andyaguiar/tornado,erichuang1994/tornado,Callwoola/tornado,NoyaInRain/tornado,johan--/tornado,Lancher/tornado,yuezhonghua/tornado,lsanotes/tornado,Windsooon/tornado,icejoywoo/tornado,Polyconseil/tornado,kangbiao/tornado,bywbilly/tornado,fengsp/tornado,yuezhonghua/tornado,fengshao0907/tornado,sunjeammy/tornado,ifduyue/tornado,wsyzxcn/tornado,fengshao0907/tornado,sxfmol/tornado