some updation and eliminate most of warnings