more flexible adapter