new adapter classes