multiple types when creating vm