adapter synthesis