add error handling and co
add error handling and co

silverbux/fly,alandipert/fly,kesne/fly,dieface/fly,JimChenAnother/fly,andrewsokolov/fly,halhenke/fly,kashiro/fly,elton0895/fly,alandipert/fly,SerkanSipahi/fly,yang-wei/fly,elton0895/fly,yang-wei/fly,JimChenAnother/fly,dieface/fly