fixed tons of errors