some adapter work when types change