Use interfaces for instanceof checks