fix most of warnings