adopt lib/vendor structure