percent of mistakes fix
warnings fixed
autoformat with idea