make relocate nonpublic, add test