merge check_admin branch into master
second merge admin_check branch into master
The last commit