reorganize and add run as root