migrate vm functionality added