abstract a base class for iv22