readme and code improvement