more documentation and some fix