refactor + logging + debug
enable system command