A bug fix
Many changes