2: format vmachine and add *Register()